17.02.2022 в 20:37   3dmodeller

Рендеринг на процессоре CPU и видеокарте GPU, основные различия

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

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

Что такое рендеринг?

Рендеринг — это в основном процесс создания двухмерных изображений  (например, для экрана компьютера) из 3D-модели. Другими словами, рендеринг позволяет получить готовое изображение трехмерной модели в  «плоском» варианте. Изображения генерируются на основе наборов данных, определяющих цвет, текстуру и материал определенного объекта на изображении.

Рендеринг осуществляется либо центральным процессором компьютера, либо графическим процессором видеокарты. Иногда в гибридной конфигурации, например, с таким программным обеспечением, как V-Ray, CPU и GPU работают вместе. Понимание этих типов рендеринга поможет оценить различия между ними.

Рендеринг на процессоре компьютера (CPU)

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

Современные процессоры имеют до 64 ядер, что обеспечивает отличную производительность для рендеринга. CPU рендеринг также выигрывает потому, что он имеет доступ к встроенной оперативной памяти (ОЗУ). Это позволяет пользователю относительно легко визуализировать сцены с большим объемом данных. Рендер на центральном процессоре имеет высокое качеством. Например, Pixar использует рендеринг на процессорах, что обеспечивает исключительное визуальное качество его фильмов.

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

Рендеринг на видеокартах (GPU)

Графические процессоры сделали рендеринг более доступным для пользователей с ограниченным бюджетом

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

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

Рендеринг на GPU постепенно становится распространенным и востребованным во многих областях и используется в качестве альтернативы традиционным системам рендеринга на CPU. Компания Autodesk Arnold представила свой движок для рендеринга на графическом процессоре, учитывая его высокий потенциал.

CPU и GPU рендеринг: различия работы на графическом и центральном процессоре

Время рендеринга в ч:м:с, чем меньше, тем лучше

Архитектура GPU и CPU процессоров

Мощный процессор, такой как например Threadripper 3990x , имеет почти 64 ядра (тогда как средний ПК имеет от 4 до 8 ядер). Эти ядра по количеству могут быть меньше по сравнению с ядрами графического процессора, но их более высокая тактовая частота позволяет выполнять задачи намного быстрее, для рендеринга обычно лучше большее количество ядер.

Графический процессор, для сравнения, имеет тысячи ядер — 10 496 в случае Nvidia RTX 3090. Однако эти ядра работают на гораздо более низкой частоте, чем ядра центральных процессоров компьютера. Огромное количество ядер увеличивает скорость и в некоторых сценариях рендеринга позволяет графическим процессорам превзойти центральные.

Качество рендеринга на CPU и GPU

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

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

Но увы, если центральный процессор не имеет достаточной мощности, качество результат будет очень плохим.

Преимущества использования оперативной памяти CPU рендеринга

Рендеринг на CPU имеют доступ к оперативной памяти компьютера. Это позволяет использовать огромные объемы памяти, которые можно в любой момент нарастить. Threadripper 3990x может поддерживать 512 ГБ оперативной памяти DDR4. Центральному процессору в таком случае, отображает огромные объемы данных в сложной сцене с множеством объектов и деталей.

Графические процессоры ограничены встроенной видеопамятью (VRAM). У новейшей Nvidia 3090 всего 24 ГБ видеопамяти, чего большинству пользователей более чем достаточно, но в сложных сценах с множеством элементов это станет узким местом.

Выполнение сложных сценариев

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

Графические процессоры ограничены аппаратными возможностями. Они разработаны с одной целью и часто используются для многократного запуска одних и тех же задач. Кроме того, ограничения оперативной памяти в сочетании с более медленными ядрами ограничивают их способность эффективно отображать различные сценарии.

Стабильность рендеринга

Разные системы рендеринга, разное качество (Источник: Роберт Юхневич Rhinoceros )

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

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

Скорость рендеринга на CPU и GPU

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

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

Производители оборудования для рендеринга

В сочетании друг с другом RTX 3090 могут обеспечить исключительную производительность рендеринга (Источник: Мэтт Бах Puget Systems )

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

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

Стоимость оборудования для рендеринга на видеокартах и процессорах

Графические процессоры GPU значительно ниже по цене по сравнению с мощными центральными процессорами. Хороший графический процессор, такой как RTX 3090, может стоить около 1500 долларов, тогда как мощный процессор, такой как Threadripper 3990x , стоит уже 5000 долларов.

Графические процессоры также дают вам преимущество с точки зрения апскейлинга и масштабирования. Вы можете просто подключить еще один графический процессор к уже существующей системе и все готово. Если вы хотите увеличить масштаб и мощность с помощью CPU, помимо стоимости самого CPU вам придется инвестировать в модернизацию всего сопутствующего оборудования (материнские платы, блоки питания и т.д.). 

Движки для рендеринга

Сравнение движков для рендеринга VRay и Octane в Cinema 4D (Источник: Душан ВукчевичTwitter )

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

Движки рендеринга, такие как Arnold, Corona и 3Delight, работают на процессорах CPU и дают несколько более качественные результаты. Между тем, средства визуализации, такие как Blender Cycles, Octane и Redshift, оптимизированы для графических процессоров GPU.

Тест производительности и выбор оборудования для рендеринга

Двумя популярными способами оценки и теста производительности оборудования для рендеринга являются Cinebench для CPU и Octanebench для GPU. Они оба являются лучшими эталонными стандартами в отрасли. Согласно тестам CG Director, многоядерный процессор с более высокой тактовой частотой — лучший выбор для вашего рабочего процесса. Процессоры AMD 3-го поколения имеют серьезное преимущество в производительности и сравнительно дешевле, чем процессоры Intel. Однако, если вам нужно лучшее из лучшего для CPU рендеринга — это Threadripper 3990x.

В тесте Octanebench карты Nvidia RTX оказались лучшими и при использовании большего количества графических процессоров вы, вероятно, получите более высокую производительность, а также увеличите объем видеопамяти.

В фильме Pixar «Up» использовался процессорный рендеринг (Источник: Pixar Animation Studios )

Итак, основные различия между рендерингом CPU и GPU в зависимости от ваших потребностей:

  • Если ваш рабочий процесс требует скорости, менее сложен и последователен в работе, выбирайте выполнение рендеринга с помощью графического процессора GPU. Помимо более низких затрат на оборудование, качество работы не будет уступать рендерингу на центральном процессоре CPU. Рендеринг с помощью графического процессора также лучше подходит для новичков.
  • Если вы отдаете предпочтение качеству, имеете большой бюджет на оборудование и у вас есть время для ожидания качественных результатов, рендеринг на CPU это лучшее, что может быть. Вы не только получите качественный результат, но и сможете с легкостью обрабатывать сложные сценарии, что даст вам конкурентное преимущество на рынке.
Комментарии: