GPU против CPU: с Maximus, возможно, выбирать не придется

Владимир МалюхВладимир Малюх

Мир проектирование и инженерного анализа постепенно становится достаточно большим для стандартных процессоров и графических процессоров параллельной обработки.По мере того как графические процессоры с несколькими ядрами все чаще попадают в автономные рабочие станции, инженеры ищут способы, чтобы воспользоваться вычислительной мощностью, предоставляемой этими специальными процессорами. Сегодня мало кто сомневается в вычислительных возможностях GPU, особенно для таких задач как инженерный анализ и моделирование.

Но вычисления на GPU представляет собой сложную дилемму для инженеров, производителей оборудования и поставщиков инженерного программного обеспечения. Проблема заключается в том, что большая часть кода, будь то коммерческие продукты, или собственные разработки предприятий, была написана для стандартных процессоров. Если у вас есть код, вы должны определиться, являются ли целесообразным затраты времени и усилий на преобразование этого кода для архитектуры GPU. Хотя большая часть собственного кода для инженерного анализа должна, по идее, быть портатбельной, это может оказаться большим делом, требующим специальных навыков и месяцев усилий, с итоговым результатом, возможно, не стоящим этих затрат.

Поставщик коммерческого программного обеспечения для анализа и моделирования должен определить, оправдывает ли потенциальный доход от реализации GPU те усилия, которые потребуются для создания новой версии продукта. Несколько крупных компаний, включая ANSYS, уже сделали этот шаг, но это довольно смелое решение для небольших производителей ПО.

Поставщики оборудования должны изучить архитектуру на GPU и решить, следует ли им предлагать соответствующие конфигурации их систем. Хотя такие системы становятся все более популярными, это приводит к более трудоемкой и сложной работе по интеграции, что делает такие системы более дорогими в проектировании и производстве. Ситуация становится еще более сложной. Есть два основных поставщика GPU, по NVIDIA и Advanced Micro Devices (AMD). Отдельные группы инженеров со своим собственным кодом должны принять решение на какой для какой архитектуры они будут адаптировать свой код. Поставщики коммерческого ПО практически обязаны выбрать одну из платформ, потому что они, как правило, не имеют инженерных или финансовых ресурсов, чтобы поддержать обе архитектуры.

Сегодня NVIDIA имеет явное преимущество над AMD, благодаря согласованным усилиям по созданию и поддержке вычислительной архитектуры GPU, но это все еще начало большой игры. Некоторые поставщики инженерного программного обеспечения приняли смелое решение по адаптации программного обеспечения для обеих платформ. «Мы поддерживаем как NVIDIA и AMD платформ», сообщает директор по технологиям Acceleware Райан Шнайдер. Однако лишь немногие могут позволить себе такую тактику, поэтому пользователи ограничены в выборе инженерных приложений, если хотят использовать вычислительные мощности те GPU, и еще более ограничены в выборе самих GPU.

Вычислительный сервер BioStack компании Microway, построеный на на Intel Xeon CPU и Tesla Fermi GPUs, содержит 84 ядра CPU Cores и до 6272 ядер GPU.

С точки зрения производительности, GPU является явным выигрышным вариантом для многих инженерных приложений, особенно тех, которые связаны вычислениями с плавающей точкой. В зависимости от GPU, различные виды вычислений выполняются определенным кодом, что позволяет достичь вплоть до десятикратного роста производительности по сравнению с CPU. Конечно, эти результаты пока достигнуты на тестах, а реальный рост производительности приложений, как правило, ниже. Но для инженеров это уже достаточное преимущество в производительности, чтобы внимательно присмотреться к аппаратному и программному обеспечению, использующему GPU.

Стандартные процессоры не уступили главной роли в производительности приложений, несмотря на архитектуру, больше ориентированную на вычисления общего назначения. Лидер отрасли Intel не сдается в борьбе за рынок вычислений на GPU несмотря на провал с выпуском многоядерного процессора с кодовым названием Larrabee два года назад. Компания, скорее всего, будет опираться на технологии Larrabee, предпочитая включить ее функциональность GPU в архитектуру свих популярных процессоров. Тем не менее, Intel не видит решающей роли для «чистых» процессоров GPU, по крайней мере для высокопроизводительных параллельных вычислений. «Мы довольны производительностью нашего Xeon и инструментов для инженерных приложений», заявил Джеймс Рейндерс, директор по маркетингу и развитию бизнеса Intel Software Products Group.

Несмотря на свое преимущество в производительности, вряд ли пв ближайшее время появятся системы, построенные только на GPU. Хотя Linux, вероятно, будет перенесен на одну или обе доступные архитектуры GPU по мере готовности языка и средств разработки, очень маловероятно, что GPU будет поддерживать основные приложения на такой специфической операционной системе.

Так что, вероятно, доступной конфигурации, в обозримом будущем, будет система с ОС Windows работающей а одном или нескольких CPU, в сочетании с картами расширения или отдельными шасси с несколькими GPU процессорами, содержащими до десятков тысяч ядер. Эти системы будут поддерживать инженерное программное обеспечение, которое работает на центральном процессоре, но визуализацию и массивные вычисления осуществляет на GPU.

Microway 4U BioStack

В Microway 4U GPU используются 2 два Intel четырех- или шестиядерных CPU Xeon и до четырех модулей Tesla

NVIDIA , возможно, дает ответ на дилемму, что использовать – обычные или графические процессоры. В сотрудничестве с OEM партнерами, такими как Dell, HP, Lenovo и Fujitsu, NVIDIA недавно объявила о впуске рабочих станций нового класса под кодовым именем Maximus. Maximus работает на CPU, GPU Quadro и Tesla GPU. Эти системы будут использовать процессор для запуска операционной системы, Quadro GPU для обработки графических процессов и Tesla GPU для параллельных вычислений. По словам Джеффа Брауна, генерального менеджера решений Professional Group, NVIDIA трактует позицию решений Maximus как «объединение графики и параллельных вычислений».

Традиционно, работы по моделированию и инженерному анализу, требующие значительных объемов параллельных вычислений, выполняются путем аутсорсинга на серверных кластерах – такая организация рабочего процесса мешает производительности инженеров, дизайнеров и создателей цифрового контента. С использованием технологии Maximus инженер сможет выполнить проектную работу, визуализировать ее, и запустить моделирование в одно и то же время, без замедления производительности системы на его рабочем месте.

Платформа Maximus очень похожа на то, что Intel делает с некоторыми из своих партнеров, продвигая виртуальные вычислительные машины, использующие технологи. ввода / вывода VT. Но тут существуют важные различия. Intel и его партнеры сосредоточились на нижнем сегменте кластерных вычислений, задействуя неиспользуемые память и процессорные ядер. Это умная стратегия, но она не делает быстрее выполнение сложные вычисления. Графические процессоры могут заполнить этот пробел.

NVIDIA обещает динамическое распределение ресурсов в ее системах. Другими словами, инженеру не нужно будет знать, какая часть его или ее работы лучше подходит для CPU, GPU Quadro или Tesla GPU. Компьютеры, сертифицированные для использования Maximus будут сами иметь возможность сбалансировать нагрузку между его CPU, GPU Quadro и Tesla GPU.

NVIDIA Quadro 6000

Видеокарта NVIDIA Quadro 6000

Хотя остается много вопросов относительно вычислений на современных GPU, все же становится ясно, что эта технология быстро становится значительной силой в инженерной работе. Инженеры, ищущие решения с высокой производительностью на отдельных рабочих станциях, могут использовать вычислительную мощность GPU, используя дополнительные карты расширения. Выделенные многопроцессорные и многоядерные GPU системы, также доступны. Но программное обеспечение остается ключевым ингредиентом, и хорошие инженерные приложения будут по-прежнему медленными. До тех пор, пока вычисления на GPU не станут повсеместными, инженера придется тщательно подбирать правильные сочетания приложений. По мере адаптации программного обеспечения, все больше инженеров, скорее всего, будут использовать для вычислительных целей решения на базе GPU, сохраняя при этом стандартные процессоры для запуска операционной системы и традиционных бизнес-приложений.


Источник.