среда, 3 декабря 2008 г.

Crysis на GPU или на CPU?

DirectX 10 в Windows7 будет давать воможность использовать в качестве графического вычислителя обычный CPU.
Первые тесты проведенные в Майкрософт показали, что интегрированная графика от Intel дает больше FPS при игре в Crysis, чем процессор Intel Core 2 Duo Penryn 3.0GHz.

Ура, теперь мы, наконец, знаем кто из них круче!

А если серьезно, то в новом DirecX появились т.н. варпы*. Их можно запускать (или правильнее сказать считать?) на CPU. Само по себе это означает возможность запуска 3d задач, оптимизированных под архитектуру GPU на обычных CPU.

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

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

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

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


Данные конкретные тесты мало что сравнивают, так как, например, узким местом является память. Скорость обмена CPU и памяти порядка 10 GB/s, а скорость обмена GPU с памятью видеокарты порядка 20-100 GB/s... Скорее это демонстрация технологии.






* Варп на GPU представляет собой группу из 32 потоков и является минимальным объёмом данных, обрабатываемых SIMD-способом в мультипроцессорах GPU.
Для работы варпов на CPU минимальные системные требования такие же как у Виста.
SSE2 не требуется, но на CPU с поддержкой SSE2 производительность варпов выше.

4 комментария:

Алёна комментирует...

Очень интересно, спасибо.

Насчет варпов. Мне не понятна фраза "в DirectX10 появились варпы". В смысле в DirectX10 появилась возможность управлять работой с варпами?

Вспоминая архитектуру CUDA - там есть варпы, с которыми можно работать из их C-подобного языка.

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

Его зовут Larrabee, ага :-)

omega комментирует...

Я так понимаю, что да, как в CUDA.
Хотя там пока мало информации чтобы можно было попробовать или привести пример :)
Но речь именно не об управлении, а о своей реализации, которая позволяет коду, использующему варпы, исполняться на CPU.

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

Да-да, Larrabee, из этой серии :) Давно про него читала.. интересно, проект жив?

Алёна комментирует...

Да-да, Larrabee, из этой серии :) Давно про него читала.. интересно, проект жив?

Судя по новостям жив-здоров. Обещают аппаратную поддержку трассировки лучей.

Анонимный комментирует...

Подписался на rss