Необходимы ли ресурсы кластерной обработки для DEM 50 Гб?

9

Для «сдачи в аренду» я должен указать необходимые вычислительные ресурсы в вычислительном центре моего университета. Я очень мало представляю, о чем просить.

Учитывая приведенную ниже информацию, можете ли вы что-то предложить?

Это вычислительный кластер: «Десять блейд-сервер с каждым блейдом, состоящим из 2 четырехъядерных процессоров Intel Xeon 2,33 ГГц с 16 ГБ памяти для общего количества 80 ЦП и 160 ГБ памяти. Учетные записи в дисковой системе объемом 2 ТБ. Работает 64-битный Linux "

При сжатии без потерь исходные данные представляют собой один файл формата TIF 50 ГБ. В какой-то момент я буду работать с несколькими (до десяти) файлами размером 50 ГБ.

Я бы использовал GDAL, скрипты на Python и, возможно, скрипты на C ++. Если бы позволили, я бы использовал такие программы, как Grass GIS и Saga GIS. Также R язык с пространственными библиотеками. Я буду выводить обычные параметры рельефа, пытаться применять объектно-ориентированные алгоритмы для извлечения специфических объектов (рельефов) и использовать статистический анализ для целей описания и моделирования.

Marco
источник
3
Что именно вы ожидаете от ответа - какое количество или количества можно запросить? Количество лезвий, количество сердечников на 1 лезвие и т. Д.? Есть ли форма, которую вы должны заполнить, которая может дать какие-то подсказки?
blah238
1
Привет бла Там нет формы. Мой руководитель задает мне эти вопросы заранее (с чем-то, о чем я не знаю). Но позже при доступе к платформе необходимо точно указать число процессоров, а также ожидаемые потребности в памяти и время обработки. Так что было бы неплохо иметь представление о нет. процессоров и объема памяти, который позволил бы выполнять простую матричную алгебру (A * 0,1 + B + C / 50), каждая из матриц размером 50 ГБ, например, менее чем за один час (учитывая, что программное обеспечение допускает параллельные вычисления ). Спасибо.
Марко
2
Это может помочь, если вы сначала определите свою стратегию для атаки на проблему. Я не верю, что «из коробки» ваши скрипты Python (использующие привязки GDAL) смогут использовать преимущества нескольких процессоров. Как вы планируете разделить данные и работать для параллельной обработки. Затем вы можете запустить некоторые тесты для фрагмента данных и экстраполировать общее время обработки на основе количества ядер, которые вы планируете использовать, и т. Д.
DavidF
Спасибо Дэвид. Я более тщательно обдумал это. Я сделаю несколько тестов с Matlab.
Марко

Ответы:

2

Так что было бы неплохо иметь представление о нет. процессоров и объем памяти, который позволил бы выполнять простую матричную алгебру (A * 0,1 + B + C / 50)

Как сказал DavidF в комментариях, более важной является государственность, не говоря уже о машине, вы не можете запустить (или это не очень хорошая идея) матрицу алгебры 50 ГБ со всей матрицей сразу, поскольку концептуально это означает, что вся матрица должен быть записан в память.

Хорошая стратегия, быстрая, очень легкая и эффективная - это использовать gdal_calc , он читает и записывает растр порциями, поэтому он очень эффективно использует память.

Например: gdal_calc.py -A input.tif -B input2.tif --outfile = result.tif --calc = "(A + B) / 2"

Попробуйте, вполне вероятно, что вы можете запустить обработку на своем рабочем столе, и тогда вам может понадобиться более совершенная машина для ускорения процесса или нет.

Obs: вам нужно спамить несколько процессов gdal_calc, чтобы использовать преимущества многоядерных процессоров.

Pablo
источник