SoftQuadro4

16.11.2002


А вот на следующем модуле визуализации мы остановимся подробнее, поскольку он, также как и 3DSMax-01, впервые появился в SPECViewPerf 7.0. Встречайте ProE-01:

SoftQuadro4 Review

SoftQuadro4 Review

Модуль визуализации ProE-01 предназначен для оценки производительности в приложении Pro/ENGINEER 2001 от Parametric Technology Corporation. Как и в случае с 3DSMax-01, при создании этого модуля использовалась трассировка вызовов функций OpenGL драйвера в процессе работы приложения Pro/ENGINEER, что позволило максимально приблизить данный модуль к реальности и получить в тестах примерно такую же нагрузку на графическую подсистему, как и при работе с оригинальным приложением. В ProE-01 оценивается скорость рендеринга двух импортированных из Pro/ENGINEER моделей в трёх разных режимах визуализации.

Первая модель, PTC WorldCar, предназначена для оценки производительности Pro/ENGINEER при работе с моделями высокой полигональной сложности. Скорость отображения данной модели оценивается в режиме solid-рендеринга, режиме удаления невидимых линий и режиме каркасного рендеринга (как с выключенным, так и со включенным антиалиасингом линий). В зависимости от режима визуализации, модель PTC WorldCar содержит от 3.9 до 5.9 миллионов вершин. Более того, в режимах solid-рендерига суммарный объём пересылаемых графической подсистеме данных (геометрия, смены состояний OpenGL драйвера и т.д.) составляет более чем 100Мб в каждом кадре. Надо отметить, что такой гигантский объём и очень частая смена состояний загружают графическую подсистему гораздо сильнее, чем все остальные входящие в SPECViewPerf тесты.

Вторая используемая в ProE-01 модель, Copier, уже знакома нам по модулю визуализации MedMCAD-01 из состава SPECViewPerf 6.1.2. Она предназначена для оценки производительности Pro/ENGINEER при работе с моделями средней полигональной сложности. В зависимости от режима рендеринга, Copier состоит из 0.485 - 1.6 миллиона вершин. Скорость отображения данной модели оценивается в режиме solid-рендеринга и в режиме удаления невидимых линий. Поскольку один из подтестов ProE-01 использует антиалиасинг линий, в данной группе тестов мы рассмотрим графические процессоры NV25 разных ревизий. Напомним, что хотя чипы ревизии A2 и используют программную эмуляцию антиалиасинга линий и за счёт этого существенно отстают от чипов ревизии A3, это ограничение можно снять с помощью разработанных нами скриптов NV25AALines.

Итак, давайте посмотрим на результаты ProE-01. Результаты low-end стенда красноречиво говорят о том, что данный тест очень и очень сильно зависит от центрального процессора. Чрезмерная полигональная сложность модели PTC WorldCar и внушительный объём пересылаемых при её отображении данных явно ограничиваются возможностями Athlon 1.4GHz. Абсолютно идентичные результаты GeForce4 и SoftQuadro4 в первых пяти тестах служат тому подтверждением. А вот на high-end стенде разрыв между SoftQuadro4 и GeForce4 уже заметен и составляет в пике почти 70%. Показателен результат использующего антиалиасинг линий теста №5 на low-end стенде: чип ревизии A3 опережает A2 почти в 6 раз. Ещё раз отметим, что производительность антиалиасинга линий на чипах ревизии A2 можно поднять до уровня ревизии A3 с помощью скрипта NV25AALines. Показательно также и сравнение результатов теста антиалиасинга линий на low-end и high-end стендах. Очевидно, что ограничителем производительности в них является видеоадаптер, так как в них, даже несмотря на более слабый центральный процессор, low-end стенд показывает более высокие результаты. Таким образом, мы ещё раз убеждаемся в том, что производительность режима антиалиасинга линий упирается в возможности графического процессора и ограничивается его частотой.

Использующаяся в последних двух тестах более простая модель Copier, несомненно, загружает центральный процессор не так сильно как PTC WorldCar, и позволяет SoftQuadro4 обогнать GeForce4 и на low-end стенде с максимальным разрывом в 16%. На high-end стенде этот разрыв увеличивается до 51%.

Суммарные результаты группы тестов ProE-01 демонстрируют нам те же самые преимущества более агрессивной оптимизации под профессиональные приложения, о которой мы уже неоднократно говорили ранее.

SoftQuadro4 Review

SoftQuadro4 Review

Итак, мы, наконец, подошли к последнему модулю SPECViewPerf 7.0 - UGS-01. Входящие в него тесты предназначены для моделирования системы визуализации, использующейся в профессиональном пакете Unigraphics V17. Используемая в данном модуле модель двигателя была импортирована из бенчмарка SPECapc Unigraphics. При создании UGS-01 также использовалась трассировка вызовов функций OpenGL драйвера в процессе работы пакета Unigraphics, что позволило получить картину нагрузки на графическую подсистему, максимально близкую к реальной. Модуль UGS-01, так же как и его прототип, активно использует при рендеринге списки команд (display list в терминологии OpenGL). Сотни списков различных размеров используются на этапе построения каждого кадра. Производительность оценивается в трёх различных режимах визуализации: в режиме solid-рендеринга, в режиме solid-рендеринга с прозрачностью и в режиме каркасного рендеринга. В каждом из этих режимов тест запускается как в режиме вращения модели, так и в режиме её облёта. При этом модель частично смещается за пределы буфера кадра, что позволяет оценить скорость клиппирования геометрии.

Хотелось бы акцентировать Ваше внимание на том, что тесты каркасного рендеринга, по замыслу разработчиков, должны были работать как в простом режиме, так и в режиме антиалиасинга линий. Однако, из-за ошибки в скрипте (приоритет используемой для включения антиалиасинга линий команды -ls ниже, чем у трассируемых команд) антиалиасинг линий используется во всех тестах каркасного рендеринга. Из-за этого общая оценка производительности в UGS-01 немного не соответствует замыслам разработчиков, и поддержка антиалиасинга линий играет в финальном результате значительно большую роль, чем планировалось. Но оставим это на совести разработчиков UGS-01 и перейдём непосредственно к тесту.

По результатам UGS-01 можно сделать только один вывод: так же, как и ProCDRS-03, этот тест является очень серьёзным испытанием для графического процессора. High-end стенд отстаёт от low-end стенда абсолютно во всех подтестах, что может говорить только о том, что производительность ограничена видеоадаптером. Как мы уже ранее выяснили, все тесты каркасного рендеринга в UGS-01 из-за ошибки в скрипте используют антиалиасинг линий, что объясняет их сильную зависимость от частоты графического процессора. А вот результат первых пяти тестов, использующих solid-рендеринг, ставит в замешательство - модель не настолько сложна, чтобы вводить в ступор столь мощные видеоадаптеры. Тем не менее, результаты теста показывают, что ограничителем скорости является именно графический процессор. Для того, чтобы выяснить, чем именно обусловлена такая низкая скорость, мы внимательно изучили скрипты данных тестов, однако не нашли в них ничего такого, что могло так сильно влиять на производительность. Выяснить причину удалось только путём трассировки вызовов всех функций OpenGL драйвера при отображении кадра. Результат наших изысков ставит всё на свои места: все тесты, работающие в режиме solid-рендеринга, используют двустороннее освещение.

Теперь результаты легко объяснимы. Как мы уже убедились на примере ProCDRS-03, двустороннее освещение и антиалиасинг линий способны поставить на колени даже такой мощный ускоритель, как GeForce4 Ti4600. Сходную картину мы наблюдаем и в UGS-01. Хотя SoftQuadro4 и даёт 25% прирост на low-end стенде за счёт лучшей оптимизации драйвера, мы видим, что при достаточно мощном процессоре этот прирост практически нивелируется и скорость начинает ограничиваться возможностями видеоадаптера.


Таким образом, мы закончили сравнение GeForce4 и полученного на его основе программного "клона" профессиональной платы Quadro4. Результаты SPECViewPerf 6.1.2 и SPECViewPerf 7.0 не могут не впечатлять. Практически во всех тестах даже на low-end стенде на глаз заметен прирост, составляющий несколько десятков процентов. На high-end стенде прирост увеличивается на порядок и составляет уже несколько сотен процентов, что говорит об отличной масштабируемости "клонированных" профессиональных плат, равно как и о том, что значительная часть профессиональных преимуществ доступна и на игровых картах. Однако, окончательные выводы по поводу сходств процессоров GeForce4 и Quadro 4 не совсем правомерны до тех пор, пока мы не сравнили "клонированную" профессиональную плату с настоящей лицом к лицу. Таким образом, мы вплотную подошли ко второй фазе нашего тестирования - к сравнению SoftQuadro4 с оригинальной Quadro4.

Давайте посмотрим, может ли самый мощный игровой ускоритель GeForce4 Ti4600, программно превращённый в Quadro4 900XGL, состязаться на равных с настоящим профессиональным ускорителем Quadro4. К сожалению, у нас не было возможности протестировать Quadro4 900XGL, самую старшую и дорогую модель из линейки профессиональных графических ускорителей. Пришлось довольствоваться результатами тестов имеющейся у нас в наличии Quadro4 750XGL, благо различия между ней и её старшей "сестрой" Quadro4 900XGL минимальны. Quadro4 750XGL работает на таких же тактовых частотах, как и GeForce4 Ti4400, в то время как Quadro4 900XGL "трудится" на частоте GeForce4 Ti4600. Поэтому сравнение SoftQuadro4 900XGL и Quadro4 750XGL вполне правомерно, если при этом делать некоторую поправку на разницу в частотах. Так, отставание Quadro4 750XGL от SoftQuadro4 900XGL (забегая вперёд, отметим, что с такой ситуацией мы будем сталкиваться достаточно часто) можно будет списать на разницу в частотах, в то время как отставание SoftQuadro4 900XGL от Quadro4 750XGL будет явным индикатором наличия каких-то аппаратных преимуществ у профессиональных процессоров. Итак, начнём сравнение, которое позволит нам окончательно ответить на вопрос о сходствах и различиях между графическими процессорами GeForce4 и Quadro4.

Сравнение проводилось на тестовом стенде, конфигурация которого представлена ниже:

Процессор

Dual AMD Athlon MP 2100+

Материнская плата

Dual MSI K7D

Оперативная память

1024 MB PC2100 DDR SDRAM

Видеокарта

Triplex GeForce4 Ti4600 ревизии A3
Quadro4 750XGL

Cтенд работал под управлением операционной системы Windows 2000 Professional SP3 и официальной бета версии референс-драйверов NVIDIA Detonator 40.71. Как и ранее, для сравнения производительности использовались тестовые пакеты SPECViewPerf 6.1.2 и SPECViewPerf 7.0. Все тесты запускались при установленном на рабочем столе разрешении 1024x768x32 на стандартных настройках драйвера и отключенной вертикальной синхронизацией монитора.

Давайте начнём сравнение с SPECViewPerf 6.1.2 и попробуем выяснить, как производительность SoftQuadro4 соотносится с производительностью настоящего профессионального ускорителя:

SoftQuadro4 Review

Результаты SPECViewPerf 6.1.2 частично подтверждают и в то же время частично опровергают имеющуюся у нас неофициальную информацию о физических различиях в чипах GeForce4 и Quadro. Информация об отличающемся блоке антиалиасинга линий, похоже, верна, поскольку максимальная разница между SoftQuadro4 и Quadro4, достигающая почти 200%, наблюдается в активно использующем антиалиасинг линий модуле визуализации ProCDRS-03. А вот гипотетические преимущества в виде изменённой конфигурации кеша, дающей Quadro4 преимущество в CAD приложениях, к сожалению, тает на глазах. В большинстве тестов настоящая Quadro4 незначительно… отстаёт от своего "клона". Впрочем, это отставание, скорее всего, обусловлено разницей в частотах между SoftQuadro4 900XGL и Quadro4 750XGL, так что резонно предположить, что Quadro4 900XGL сможет догнать SoftQuadro4 900XGL. Исключением является лишь модуль AWAdvs-04, где Quadro4 750XGL обгоняет SoftQuadro4 900XGL с 18% разрывом. Негусто. Скажем честно, что мы ожидали гораздо большего разрыва в производительности между Quadro4 и модифицированным GeForce4, проявляющегося если и не во всех, то, как минимум, в большинстве тестов. Далее мы подробно рассмотрим все подтесты каждого модуля визуализации, дабы понять, чем именно обусловлена разница в производительности между SoftQuadro4 и Quadro4. Начнём с AWadvs-04:

SoftQuadro4 Review

Во всех подтестах AWadvs-04, не использующих каркасный рендеринг, SoftQuadro4 лидирует примерно с десятипроцентным отрывом. Делая поправку на разницу в частотах между SoftQuadro4 900XGL и Quadro4 750XGL, можно с уверенностью сказать, что у процессоров Quadro4 нет никаких преимуществ в виде каких-либо улучшений в TnL блоке. Очевидно, что SoftQuadro4 "перемалывает" геометрию с такой же точно скоростью, как и в несколько раз более дорогие профессиональные Quadro платы, а многократная разница в производительности между игровыми и профессиональными платами в этих тестах обусловлена умелой оптимизацией кода и ничем более.

А вот в подтестах №3 и №4, использующих каркасный рендеринг, Quadro4 опережает своего "клона" почти в два раза. Налицо наличие каких-то аппаратных различий в чипах. Однако, к нашему огромному удивлению, эти самые аппаратные различия и преимущество в скорости каркасного рендеринга проявляются только в тестах из группы AWadvs-01. Отметим, что каждый из модулей визуализации, входящих в SPECViewPerf 6.1.2 и 7.0, включает в себя по крайней мере один подтест, работающий в режиме каркасного рендеринга. Тем не менее, Quadro4 вырывается вперёд только в AWadvs-01. Объясняется это, скорее всего, спецификой модуля визуализации AWadvs-01, точнее, спецификой входящих в него тестов каркасного рендеринга. Дело в том, что при реализации приложения, работающего в режиме каркасного рендеринга, разработчик может пойти двумя путями. Первый, и наиболее часто используемый - пересылка OpenGL драйверу данных непосредственно в виде линий либо их последовательностей. Второй - пересылка драйверу примитивов другого типа (например, треугольников) и использование glPolygonMode(..., GL_LINE) для отключения заливки полигонов и включения режима отрисовки их границ. Именно этот режим и используется в AWadvs-01, остальные тесты каркасного рендеринга используют первый подход. Резонно предположить, что у процессора Quadro4 есть какие-то аппаратные усовершенствования, позволяющие повысить эффективность каркасного рендеринга при использовании второго подхода. Не будем также списывать со счёта гипотезу о различиях в кеше, поскольку используемая в данном тесте модель достаточно проста геометрически, и именно эта простота и более объёмный кеш могли сыграть решающую роль в рывке производительности Quadro4. Хотя, честно говоря, вероятность этого очень и очень мала, поскольку более объёмный кеш обязательно проявил бы себя и в других задачах. Не будем более заниматься гаданием на кофейной гуще, просто констатируем тот факт, что Quadro4 способен обеспечить более эффективный каркасный рендеринг в некоторых задачах. Подчеркнём лишь, что эта эффективность стопроцентно обусловлена не скоростью прорисовки линий - с нею, как мы убедимся далее, SoftQuadro4 и Quadro4 справляются абсолютно одинаково. Итак, по крайней мере одно преимущество у Quadro4 мы уже обнаружили. Посмотрим, как будет обстоять дело далее:

SoftQuadro4 Review


Переход на страницу:

 1 

 2 

 3 

 4 

 5