SoftQuadro4

16.11.2002


В DRV-07 расклад меняется, и всё обстоит уже не так радостно для NVIDIA. Настоящая Quadro4 отстаёт от SoftQuadro4 во всех подтестах. Не являются исключением и подтесты №4 и №5, активно использующие каркасный рендеринг.

SoftQuadro4 Review

Сходную картину мы наблюдаем и в DX-06 - пропорциональное разнице в частотах отставание Quadro4 от SoftQuadro4 практически во всех подтестах. Исключением является только подтест №8, использующий двустороннее освещение. Напомним, что поддержка этой функциональной возможности официально заявлена в списке преимуществ линейки Quadro4, и, как мы видим, настоящая профессиональная карта справляется с ней практически без потерь производительности, в то время как SoftQuadro4 сдаёт позиции при её активизации. Что же, ещё один плюс в копилку аппаратных отличий Quadro4. Отметим, что далее мы ещё коснёмся реализации двустороннего освещения в чипах Quadro4 и увидим, что и на игровых чипах можно многократно увеличить скорость при двустороннем освещении и получить производительность, сопоставимую с аппаратной реализацией Quadro4. Однако, всему своё время. Не будем пока торопить события и посмотрим на следующую группу тестов:

SoftQuadro4 Review

Оставим результаты Light-04 без комментариев. Думаем, что выводы Вы сможете сделать и сами. Отметим только, что и в Light-04, в двух использующих каркасный рендеринг тестах Quadro4 не только не опережает SoftQuadro4, но и незначительно отстаёт от неё.

SoftQuadro4 Review

Картина не меняется и в MedMCAD-01. У Quadro4 нет никаких аппаратных преимуществ, способных дать ей фору перед её программным "клоном" в данной группе тестов. Учитывая тот факт, что NVIDIA использует MedMCAD-01 в качестве официального доказательства мощи Quadro4, результаты тестов вообще можно назвать просто позорными. Повторим, что точно такую же скорость может показать и программно модифицированный GeForce4.

SoftQuadro4 Review

А вот в ProCDRS-03 Quadro4 750XGL с лихвой отыгрывается за предыдущие поражения и показывает свои преимущества во всей красе. Как мы видим, в первых двух подтестах, использующих антиалиасинг линий, настоящая профессиональная плата эффективнее своего "клона" примерно в два раза. Впечатляет. В остальных восьми подтестах, использующих двустороннее освещение, разница почти четырехкратная. Впрочем, особо внимательные читатели, должно быть, уже заметили, что в данном тесте появился и третий участник, способный поспорить с настоящим Quadro4 практически на равных при использовании двустороннего освещения. Далее мы представим Вам нашего таинственного незнакомца, но перед тем, как это сделать, давайте немного отвлечёмся от тестов и заглянем в прошлое.

Итак, наверное, не многие из наших читателей помнят, что ранее NVIDIA уже пыталась продать нам аппаратную поддержку двустороннего освещения. Согласно официальным пресс-релизам, чипы Quadro2 PRO также аппаратно поддерживали двустороннее освещение, что позволяло им обгонять GeForce2 GTS с многократным разрывом в производительности. Как мы уже знаем, платы Quadro2 PRO использовали точно такие же графические процессоры, как и их игровые "собратья", однако двустороннее освещение на профессиональных платах данной линейки было во много раз эффективнее, чем на игровых. Тем не менее, после перепайки резисторов либо программной переделки игровые платы словно обретали второе дыхание, догоняя Quadro2 PRO и демонстрируя идентичную ему производительность. Однако, c выходом следующего профессионального чипа, Quadro DCC, двустороннее освещение, равно как и антиалиасинг линий, тихо и мирно исчезли из списка профессиональных возможностей чипа. Вместо них появились "вкусности" вроде пиксельных шейдеров, сулящие дизайнерам кучу преимуществ при работе с DCC приложениями. Впрочем, такой шаг вполне понятен с точки зрения маркетинга - по-видимому, NVIDIA старалась избежать конкуренции между старым и новым профессиональным продуктом и попыталась упрочнить позиции нового чипа, не теряя при этом объёмов продаж старого. Сделать это можно было, позиционировав чипы под разные сегменты рынка профессиональных ускорителей, а именно, по-прежнему продвигая Quadro2 PRO как решение для рынка CAD и новый чип как решение для рынка DCC. Такой подход, само собой, требовал бы, чтобы предыдущий чип обладал какими-либо возможностями, не доступными новому. Видимо, именно поэтому компания избавилась от поддержки двустороннего освещения в Quadro DCC. Однако именно такое быстрое исчезновение широко разрекламированной аппаратной возможности вызвало у нас уйму подозрений. Было очень сложно поверить в то, что компания сознательно упростила чип, поэтому у нас появились догадки о том, что двустороннее освещение на Quadro2 PRO было не чем иным, как продуктом мастерской оптимизации кода драйвера. Учитывая тот факт, что для реализации этой функциональной возможности надо было всего лишь очень незначительно изменить алгоритм расчёта освещённости вершин (в некоторых случаях вместо произведения нормали вершины и вектора освещения использовать модуль произведения), эти догадки вполне имеют право на жизнь. К счастью, у драйвера Detonator есть очень интересная функциональная возможность, позволившая нам проверить свои догадки и убедиться в том, что они соответствуют реальности. Дело в том, что с помощью недокументированного ключа реестра MaxNVAccel OpenGL ICD позволяет ограничить уровень задействованного аппаратного ускорения и разрешает нам использовать функциональные возможности предыдущих поколений чипов. Напомним, что благодаря схеме UDA (unified driver architecture), OpenGL ICD драйвер включает в себя разный код для разных поколений графических процессоров, поэтому технически эта возможность сводится к элементарной подмене таблицы функций, содержащих реализацию той или иной функциональной возможности каждого чипа. Таким образом, ограничив возможности драйвера поддержкой NV1x, мы получаем возможность использования на Quadro DCC того же самого кода, что и на Quadro2 PRO. Если двустороннее освещение на Quadro2 PRO было реализовано путём оптимизации кода, то скорость непременно должна была возрасти и на Quadro DCC. Результат нашего эксперимента подтвердил эту догадку - производительность двустороннего освещения на Quadro DCC возросла многократно. Собственно, аналогичный эксперимент можно произвести и с GeForce4. Эти чипы также способны показать значительно более высокие результаты в режиме двустороннего освещения при ограничении возможностей драйвера поддержкой графических процессоров NV1x. Именно SoftQuadro4 900XGL, работающую в режиме совместимости с NV1x, мы и использовали в сравнении с настоящей Quadro4. Для включения режима совместимости с NV1x мы использовали RivaTuner:


SoftQuadro4 Review

Как можно видеть из тестов, при активизации этого режима эффективность SoftQuadro4 900XGL в режиме двустороннего освещения может быть увеличена, как минимум, в три раза. Теоретически, разрыв может быть даже больше, поскольку режим совместимости с NV1x блокирует возможность использования специфичных для новых поколений чипов технологий (например, технологии экономии пропускной способности памяти LMA II), поэтому если бы NVIDIA реализовала соответствующие оптимизации и в коде для NV2x, то прирост мог бы быть куда более существенным. Однако, маркетинговые соображения врядли позволят программистам из NVIDIA пойти на этот шаг и сознательно многократно сократить разрыв между аппаратной реализацией Quadro4 и неоптимизированным кодом GeForce4. Повторим ещё раз, что показанные выше графики - это не наши домыслы. Это реальная скорость, которую могут обеспечить чипы NV2x, если разработчики OpenGL драйвера приложат некоторые усилия и реализуют соответствующие оптимизации в коде. Пока же эти оптимизации доступны только при включении режима совместимости с NV1x и потере специфичного для NV2x функционала.

Учитывая наш предыдущий опыт и привычку программистов NVIDIA "заметать следы" при обнаружении какой-либо не совсем лестной для них информации в коде драйвера, можно почти со стопроцентной гарантией предсказать, что сразу же после выхода в свет данной статьи возможность включения режима совместимости с предыдущими чипами будет блокирована. В свою очередь, мы хотели бы призвать их воздержаться от данного шага и, вместо этого, направить силы на оптимизацию соответствующего кода для процессоров NV2x. Как бы ни была неприятна эта информация, она реальна, и от неё никуда не деться.

Итак, давайте подведём итог ProCDRS-03 и всего SPECViewPerf 6.1.2 в целом. ProCDRS-03 добавил к списку аппаратных преимуществ процессоров Quadro4 ещё два пункта: бесспорно более эффективную аппаратную реализацию антиалиасинга линий и аппаратную реализацию двустороннего освещения, к сожалению, сопоставимую по скорости с тем, что может быть достигнуто оптимизацией кода. Забегая вперёд, отметим, что на этом список аппаратных преимуществ процессора Quadro4 заканчивается, в чём мы и убедимся, взглянув на результаты SPECViewPerf 7.0:

SoftQuadro4 Review

Как мы видим, Quadro4 незначительно обгоняет SoftQuadro4 в модуле визуализации ProE-01, поскольку один из подтестов данной группы использует антиалиасинг линий. Значительное отставание SoftQuadro4 также заметно и в UGS-01, что, впрочем, вполне объяснимо, учитывая что все его подтесты используют либо антиалиасинг линий, либо двустороннее освещение. Как мы уже убедились ранее, Quadro4 справляется с этими задачами эффективнее игровых плат. А вот в остальных четырёх модулях визуализации Quadro4 терпит фиаско. SoftQuadro4 лидирует с незначительным отрывом, пропорциональным разнице в частотах между SoftQuadro4 900XGL и Quadro4 750XGL, что подтверждает тот факт, что больше никаких аппаратных преимуществ у Quadro4 нет.

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

SoftQuadro4 Review

В 3DSMax-01 Quadro4 отстаёт от своего "клона" абсолютно во всех подтестах. Очевидно, что пользователи 3DStudio MAX врядли могут рассчитывать на нечто экстраординарное при использовании настоящих Quadro4 (разумеется, при условии того, что в настройках приложения не включен антиалиасинг линий). Результаты тестов 3DSMax-01 показывают, что программно переделанный GeForce4 в состоянии обеспечить такую же точно производительность в данном графическом пакете.

Результаты следующих трёх модулей визуализации мало чем отличаются от того, что мы видели в SPECViewPerf 6.1.2, поэтому мы не будем останавливаться на них подробнее. Просто посмотрим на их результаты:

SoftQuadro4 Review

SoftQuadro4 Review

SoftQuadro4 Review

На модуле ProE-01 мы остановимся подробнее, дабы выяснить чем обусловлено восьмипроцентное отставание SoftQuadro4 900XGL от Quadro4 750XGL в данной группе тестов:

SoftQuadro4 Review

Как мы и предполагали, Quadro4 одерживает победу только в подтесте №5, использующем антиалиасинг линий. В остальных задачах у профессионального процессора нет никаких преимуществ.

SoftQuadro4 Review

А вот в модуле визуализации UGS-01, как и в ProCDRS-03, Quadro4 750XGL раскрывает свой потенциал и демонстрирует себя во всей красе. Впрочем, проведение параллелей с ProCDRS-03 не случайно - производительность в UGS-01, как и в ProCDRS-03, зависит только от того, насколько успешно графический процессор справляется с двусторонним освещением и антиалиасингом линий. Как мы уже отмечали ранее, именно эти функциональные возможности реализованы в процессорах Quadro4 эффективнее, чем в игровых, и именно они (и только они) являются реальными аппаратными преимуществами этих графических процессоров. Не отличается от ProCDRS-03 и характер прироста: в подтестах, использующих антиалиасинг линий (№5 - №8), превосходство настоящего Quadro4 примерно двукратное, а в тестах двустороннего освещения (№1 - №4) Quadro4 обходит своего "клона" почти с четырёхкратным отрывом. Однако, как мы уже отмечали ранее, в последнем случае примерно такого же эффекта можно было бы достигнуть путём оптимизации кода.


Итак, мы завершили наше исследование. Давайте подведём итог и, наконец, ответим на вопрос о том, насколько серьёзны различия в графических процессорах GeForce4 и Quadro4.

Анализ проведённых нами тестов показывает, что львиная доля производительности профессиональных плат Quadro4, к сожалению, по-прежнему обусловлена не аппаратными преимуществами, а умелой оптимизацией драйвера и программным блокированием некоторых возможностей графического процессора. Такого рода ухищрения, приводящие к существенной разнице в производительности между платами на базе GeForce4 и Quadro4, позволяют компании заявлять об якобы абсолютно новом профессиональном процессоре, способном обеспечить производительность, недостижимую картами игрового класса. К сожалению, эта информация не совсем соответствует действительности. Собственно, схожую ситуацию мы видели и в предыдущих поколениях профессиональных ускорителей, когда NVIDIA пыталась продать нам под маркой более совершенных профессиональных чипов такие же точно процессоры, как и на игровых платах . Тем не менее, с выходом линейки графических процессоров Quadro4 ситуация всё-таки немного изменилась к лучшему. На этот раз компанию нельзя упрекнуть во лжи - настоящие Quadro4 действительно имеют некоторые преимущества перед программно переделанными GeForce4. Мы воздержимся от комментариев по поводу наличия физических различий в кристаллах процессоров GeForce4 и Quadro4. Как уже отмечалось ранее, бит NV_PBUS_DEBUG_1_SPARE3 регистра NV_PBUS_DEBUG_1, по значению которого драйвер и различает игровые и профессиональные чипы, вполне может оказаться аппаратным "замком", блокирующем некоторые функциональные узлы чипа на игровых платах. Однако даже если кристаллы и одинаковы, то, не имея возможности перепрограммирования бита NV_PBUS_DEBUG_1_SPARE3 (а её, на данный момент, нам обнаружить не удалось), о гипотетически заблокированных блоках чипа можно забыть. Нам же остаётся только пожалеть о том, что круг задач, в которых можно увидеть преимущество настоящих Quadro4 над SoftQuadro4, очень и очень узок. В данном исследовании мы рассмотрели 100 синтетических подтестов, моделирующих работу тех или иных CAD/DCC приложений (52 из состава SPECViewPerf 6.1.2 и 48 из состава SPECViewPerf 7.0), однако нам удалось выявить только три категории задач, в которых настоящему профессиональному процессору удаётся обогнать переделанную игровую карту:

  • Бесспорно, процессоры Quadro4 справляются с антиалиасингом линий лучше, чем их игровые "собратья". На нашем тестовом стенде превосходство Quadro4 над SoftQuadro4 было примерно двукратным. Если поддержка антиалиасинга линий важна в Вашей работе, то лучшего выбора, чем настоящий Quadro4, Вам не найти. При программной переделке вам придётся довольствоваться более низкой производительностью при использовании данной функциональной возможности.
  • Эффективное двустороннее освещение также является прерогативой Quadro4. Однако, c данной функцией дела обстоят не так однозначно, как с антиалиасингом линий. Как мы уже показали ранее, при выполнении определённой последовательности действий и задействовании оптимизированного алгоритма реализации двустороннего освещения, используемого процессорами Quadro2 PRO, SoftQuadro4 вполне может обеспечить производительность, сопоставимую с аппаратной реализацией данной функции на Quadro4.
  • В некоторых случаях процессор Quadro4 способен обеспечить более эффективный каркасный рендеринг. Из рассмотренных нами десятка с лишним тестов каркасного рендеринга Quadro4 вырвался вперёд только в одном. Причина такой избирательности нам не совсем понятна, но обойти этот факт вниманием мы не можем. Вероятнее всего, Quadro4 эффективнее справляется с каркасным рендерингом при использовании glPolygonMode(..., GL_LINE). Скорость же отрисовки линий у процессора Quadro4, по-видимому, ничем не отличается от GeForce4.

На этом обнаруженные нами аппаратные преимущества Quadro4, к сожалению, заканчиваются. Мы прекрасно понимаем, что даже самый совершенный синтетический тест не может дать нам полную картину различий между процессорами Quadro4 и GeForce4, поэтому не исключаем возможности того, что какие-либо преимущества Quadro4 остались "за кадром". К сожалению, прояснить данную ситуацию могли только представители NVIDIA, но пообщаться с ними по этому поводу нам не удалось. Позитивные ответы на предложения о сотрудничестве при личной встрече наших людей с представителями компании, к сожалению, закончились гробовым молчанием со стороны NVIDIA в ответ на высланные подписанные NDA и письма с напоминаниями. Что же, как говорится - "хозяин - барин", просим на нас не обижаться, поскольку в ожидании хоть какого-то ответа публикация данного материала откладывалась не один месяц. Мы сделали со своей стороны всё возможное, чтобы отыскать хоть какие-то преимущества Quadro4 и показать пользователям ситуацию в объективном свете.

Многие пользователи могут совершенно справедливо отметить, что синтетические бенчмарки, к коим можно отнести и SPECViewPerf, подчас достаточно далеки от реальных приложений. Им мы можем лишь посоветовать ознокомиться с обзорами профессиональных графических ускорителей на iXBT.com, в которых, помимо настоящих профессиональных 3D ускорителей, уже достаточно давно принимают участие и платы SoftQuadro4. Помимо уже хорошо знакомых Вам синтетических тестов SPECViewPerf, данные обзоры включают в себя тестирование ускорителей во многих профессиональных приложениях (3DStudio MAX, SolidEdge и т.д.). Собственно, картина, которую Вы сможете увидеть там, мало чем отличается от наших выводов - если не используется антиалиасинг линий, то почувствовать разницу между SoftQuadro4 и оригинальной профессиональной платой очень и очень сложно.


И последнее: до анонса новых чипов с кодовым названием NV30 остаются считанные дни, до появления новых профессиональных плат остаётся, максимум, пара-тройка месяцев. Анализ кода драйверов, поддерживающих эти платы, говорит о том, что и для них при проверке наличия профессиональных возможностей чипа используется тот же самый NV_PBUS_DEBUG_1_SPARE3. Значит ли это, что SoftQuadro4 будет работать и с новым поколением графических процессоров? Очень может быть. Время покажет.



Николайчук Алексей a.k.a. Unwinder (AlexUnwinder@mail.ru)



СПАСИБО:

  • Патрику Кэн (Patrick Kan) за предоставление видеоадаптера Leadtek Winfast A250 Ultra, неоценимую помощь при отладке и бета-тестировании скриптов а также за предоставление бенчмарков SoftQuadro4 и Quadro4 750XGL на Athlon MP платформе.
  • Фальку Массманн (Falk MaВmann) aka loop29 за помощь при бета-тестировании скриптов и предоставление бенчмарков SoftQuadro4 на Pentium 4 платформе.
  • www.iXBT.com / www.digit-life.com и лично Александру Кондакову aka kondalex за пре-релизные обзоры SoftQuadro4.
  • Многочисленным посетителям форумов МИР NVIDIA, iXBT, The Guru of 3D, Mad Onion, Tnaw Xtennis и других, c пониманием относившимся к задержкам в публикации данного материала и НЕ мешавшим нам работать разнообразными сплетнями о SoftQuadro4 и попытками выманить у нас эти скрипты любой ценой.

P. S.
Мы более, чем стопроцентно уверены, что NVIDIA сделает всё возможное, чтобы блокировать работоспособность SoftQuadro4 в первой же версии драйверов Detonator, которая выйдет после публикации данного материала. Поэтому, если вдруг у Вас не получается установить скрипт SoftQuadro4 на драйвер, вышедший в свет после публикации данной статьи, не стоит присылать нам вопросы с жалобами на его неработоспособность. Такие письма буду моментально удаляться, и Вы не получите на них никакого ответа. Вместо этого попробуйте зайти на наш сайт и выяснить, существуют ли в природе какие-то обновления скриптов, либо просто задайте соответствующий вопрос в нашем форуме. На данный момент мы не можем ничего обещать по поводу дальнейшей поддержки скриптов SoftQuadro4. Возможно, они будут обновляться в дальнейшем, возможно - нет.

Обсудить/дополнить в конференции

Линки по теме:

 

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

 1 

 2 

 3 

 4 

 5