Risorse di elaborazione del cluster necessarie per DEM da 50 GB?


9

Per "scopi di noleggio", devo specificare le risorse informatiche di cui ho bisogno dal centro di calcolo della mia Università. Ho ben poca idea di cosa chiedere.

Considerando le informazioni di seguito potresti suggerire qualcosa?

Questo è il cluster computazionale: "Un server a dieci blade con ogni blade composto da 2 CPU Intel Xeon Quad Core da 2,33 Ghz con 16 GB di memoria per un totale di 80 CPU e 160 GB di memoria. Account su un sistema a disco da 2 TB. In esecuzione 64-bit Linux "

Con la compressione senza perdita di dati, i dati originali sono un file tiff da 50 GB. A un certo punto lavorerò con diversi file (fino a dieci) di dimensioni pari a 50 GB.

Vorrei usare GDAL, scripting Python e forse scripting C ++. Se consentito, utilizzerei software come Grass GIS e Saga GIS. Inoltre, linguaggio R con librerie spaziali. Deriverò i consueti parametri del terreno, provando ad applicare algoritmi orientati agli oggetti per l'estrazione di caratteristiche specifiche (landform) e usando l'analisi statistica per scopi descrittivi e di modellazione.


3
Cosa ti aspetti esattamente da una risposta - quale quantità o quantità possono essere richieste? Numero di pale, numero di nuclei su 1 lama, ecc.? C'è un modulo che devi compilare che potrebbe fornire qualche indizio?
blah238

1
Ciao blah Non c'è forma. Il mio supervisore mi sta facendo queste domande in anticipo (con qualcosa in mente di cui non sono a conoscenza). Ma, in seguito, quando si accede alla piattaforma, è necessario specificare esattamente il numero di processori, nonché le esigenze di memoria e i tempi di elaborazione previsti. Quindi, sarebbe bello avere un'idea sul no. dei processori e la quantità di memoria che consentirebbe di eseguire un'algebra a matrice semplice (A * 0,1 + B + C / 50), ciascuna delle matrici di dimensioni di 50 Gb, ad esempio, in meno di un'ora (considerando che il software consente il calcolo parallelo ). Grazie.
Marco,

2
Può essere utile determinare la strategia per attaccare prima il problema. Non credo che i tuoi script Python "pronti all'uso" (usando i collegamenti GDAL) saranno in grado di sfruttare più processori. Come pensi di dividere i dati e lavorare per l'elaborazione parallela. È quindi possibile eseguire alcuni test su un blocco di dati ed estrapolare il tempo totale di elaborazione in base al numero di core che si prevede di utilizzare, ecc.
DavidF

Grazie David. Ci ho pensato più approfonditamente. Farò alcuni test con Matlab.
Marco,

Risposte:


2

Quindi, sarebbe bello avere un'idea sul no. di processori e la quantità di memoria che consentirebbe di eseguire un'algebra a matrice semplice (A * 0,1 + B + C / 50)

Come ha affermato DavidF nei commenti, la strategia è più importante, non importa la macchina, non è possibile eseguire (o non è una buona idea eseguire) un'algebra di matrice da 50 GB con l'intera matrice in una sola volta poiché concettualmente implica che l'intera matrice deve essere scritto in memoria.

Una buona strategia, veloce, molto semplice ed efficiente è usare gdal_calc , è leggere e scrivere il raster in blocchi, quindi è molto efficiente in termini di memoria.

Ad esempio: gdal_calc.py -A input.tif -B input2.tif --outfile = result.tif --calc = "(A + B) / 2"

Provalo, è molto probabile che tu possa eseguire l'elaborazione sul tuo desktop, e quindi potresti semplicemente aver bisogno di una macchina migliore per accelerare il processo o meno.

Obs: È necessario eseguire lo spam di più processi gdal_calc per sfruttare i processori multicore.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.