Введение
Беспрецедентный рост мощности персональных компьютеров вообще и их графической подсистемы в частности привел к тому, что теперь практически любой желающий может заниматься 3D графикой на вполне профессиональном уровне, используя свою недорогую персоналку. И то, что современные 3D ускорители, ориентированные на применение в играх вполне успешно могут применяться в профессиональных приложениях уже ни у кого не вызывает сомнений.
Со времен Riva 128 с завидным постоянством в сети появляются результаты тестов производительности различных видеокарт, в одном из самых популярных на платформе x86 пакетов трехмерной графики - 3D Studio MAX. Однако, я не встречал чего-либо подобного для Maya, а ведь за последние несколько лет Maya для Windows NT "перешагнула" в номере версии цифру 4, была портирована под Linux и завоевала сердца сотен или даже тысяч непрофессиональных 3D моделеров, аниматоров и дизайнеров в России. Именно им в первую очередь и адресована эта статья. Хочу заметить, что мне попадались обзоры, посвященные тестированию графических станций SGI в Maya, но они очень "далеки от народа". Моя же цель - показать то, насколько успешным может быть использование современных 3D ускорителей игрового класса в Maya, ну и конечно же, попытаться выяснить какая из этих видеокарт будет наиболее предпочтительна для такого применения. Кстати, в отношении Maya, довольно прочно укоренилось мнение, что она "честно" использует OpenGL API, что лично для меня, является фактором, повышающим интерес к этому вопросу, поскольку позволяет сделать выводы о производительности, так сказать, "за пределами" конкретного пакета 3D графики.
Приступив к тестированию, я нашел, что этот процесс очень похож на автомобильные гонки, например, "Формула-1". Тот же счет, порой на доли fps, та же ситуация с командами - их довольно много, но реальных претендентов на победу гораздо меньше и борьба между лидерами - такое же захватывающее зрелище ! Саму карту можно считать боллидом, а драйвера - пилотом (а может наоборот ? :). Впрочем, проводить аналогии можно довольно долго, но теперь Вы знаете, почему я так назвал эту статью.
Кроме того, хотелось бы лишний раз отметить, что в профессиональных приложениях, игровой ускоритель работает в несколько "непривычном" для себя "режиме", который характеризуется прежде всего более высоким разрешением, максимальной глубиной цвета, рендерингом в оконо и еще целым рядом второстепенных для игр, но важных для работы с профессиональными приложениями факторов, влияющих на его производительность. Но для того чтобы не повторяться и не злоупотреблять терпением тех, кто в этих вопросах и так хорошо осведомлен, я рекомендую всем интересующимся обратиться к статье
Тестирование видеокарт в 3DMax. Несмотря на то, что посвящена она другой программе, общие вопросы принципов работы пакетов 3D моделирования/анимации (каковым и является Maya), а также особенности работы графического ускорителя в таких пакетах там описаны замечательно, причем, на уровне, вполне достаточном, для того, чтобы даже новичок без проблем мог понять и проинтерпретировать результаты тестов.
Тестовая платформа,методика и условия тестирования
Конфигурация тестового стенда:
Материнская плата - Asus P3B-F (i440BX)
Процессор - Intel Pentium III 750 MHz
Процессор - Intel Pentium III 933 MHz
Оперативная память - 1GB Hyundai PC133 ECC 7.5 ns (4x256 MB)
Жесткий диск - Quantum AS 30 (30 GB, 7200 rpm, 2 MB)
UATA-100 контролер - Abit HotRod 100 Pro
Участники тестирования:
Suma Platinum GeForce 3 64 MB DDR SDRAM (200/460)
Suma Platinum GeForce 2 Pro 64 MB DDR SDRAM (200/400)
Cyber GeForce 2 MX 32 MB SDRAM (175/166)
ATI Radeon DDR 64 MB ViVo (183/366)
Программное обеспечение:
Microsoft Windows 2000 Pro SP 2
Alias | Wavefront Maya 3.0
Драйвера для всей серии карт на чипах nVidia - Detonator 14.20
Драйвера для ATI Radeon - 5.13.01.3211 (официальные, но не поддерживаемые)
Теперь несколько замечаний относительно методики и условий тестирования. Я потратил некоторое время на поиски стандартной методики тестирования или хотя бы набора стандартных сцен. Однако, в отличие от 3D Studio MAX ничего подобного для Maya (кроме Maya Arsenal) мне найти не удалось. Впрочем, искал я недолго, поскольку довольно быстро пришел к выводу, что для моих целей наилучшим образом подойдут простые и, если можно так сказать "узко специализированные сцены", которые вполне по силам создать даже неискушенному пользователю Maya. Так я и поступил. Сцены не отличаются оригинальностью, но думаю, что все возложенные на них функции они вполне успешно выполняют.
Для получения наиболее точных результатов, процесс тестирования был максимально автоматизирован. Сделано это было с помощью простого скрипта на MEL (для новичков - Maya Embedded Language), который самостоятельно загружал сцены, измерял производительность в fps и записывал эти данные в соответствующие текстовые файлы, а те в свою очередь использовались для построения графиков. Методика измерения производительности была позаимствована из книги "Using Maya: MEL", раздел "MAYA GEMS". Замечу сразу, что полученные таким способом данные о производительности не совпадают с теми, которые показывает встроенный в программу счетчик fps, но в отличие от последнего, при многократном запуске повторяются с завидной точностью.
Не случайно для тестирования выбрана и операционная система. Мне прекрасно известно, что у Windows NT 4 работа с OpenGL реализована лучше чем у Windows 2000. Однако, время не стоит на месте и с каждым релизом новой версии драйверов молодая ОС "подтягивается", а старая вперед не движется, поэтому разрыв между ними все меньше и меньше. Ну а поскольку более новая W2K предлагает заметно большую функциональность чем ее предшественница, то становится очевидным, что держать еще одну OS на жестком диске ради пары лишних fps вряд ли стоит. Так что, думаю, связка Windows 2000 + Maya имеет полное право на жизнь.
Все тесты проводились в разрешении 1280x1024 и с глубиной цвета 32 bpp. Отдельно хотелось бы обратить внимание на то, как был настроен интерфейс Maya, поскольку от этого зависит размер "3D окна" и, естественно, нагрузка на ускоритель. Вот так выглядела Maya во время тестирования:
Рис. 0. Интерфейс Maya во время тестирования В итоге, размер рабочей области приблизительно равен 1096x854. Ввиду особенностей интерфейса рассматриваемой нами программы, мне кажется излишним проводить тестирование в режиме одновременного отображения нескольких проекций - все равно используется не часто.
Для выяснения такого немаловажного параметра, как зависимость производительности ускорителя от мощности центрального процессора, все тесты проводились с CPU - 750 MHz и 933 MHz.
И последнее, достаточно важное замечание, перед тем как перейти к результатам тестирования: во всех тестах с текстурами, опция Hardware Texturing была установлена в Highest.
Итак, теперь, когда с необходимыми формальностями покончено, я могу со спокойной совестью объявить старт !
Результаты тестирования
1. Первый тест призван выявить лидера при работе со сценами малой и средней сложности, состоящими из полигональных объектов. На самом деле, правильнее будет говорить о группе из 4-х субтестов, поскольку одна и та же сцена тестировалась в разных режимах: wireframe и shaded. А если учесть, что все тесты проводились при разных частотах CPU (750 и 933 МГц), то всего и получается - 4. Сцена содержит 40 тыс. полигонов, а сам тест можно охарактеризовать как комплексный тест геометрического блока ускорителя, поскольку в нем используются большинство стандартных операций отсечения и 3D трансформаций.
Рис. 1. Скриншот сцены теста № 1 в режиме wireframe Рис. 2. Скриншот сцены теста № 1 в режиме shaded А теперь результаты первого "круга":
Рис. 3. Производительность при работе с полигональными объектами
(40000 полигонов) В этом тесте GeForce 3 уверенно стартует и побеждает с заметным отрывом от конкурентов на всех участках этого "круга". Особенно бросается в глаза отрыв от прошлогодних фаворитов в wireframe режиме, который заметно увеличивается с ростом тактовой частоты CPU. В shaded режиме новейшая разработка nVidia немного сбавляет темп, но сохраняет ту же тенденцию к увеличению дистанции между ней и конкурентами по мере роста мощности процессора. Что-то мне подсказывает, что подобную картину мы будем наблюдать на протяжении всей "гонки" ... Впрочем, удивляться здесь нечему, GeForce 3 является чипом нового поколения.
А вот за второе место разыгралась нешуточная борьба между видеопроцессорами одного класса от ATI и nVidia. В случае слабого CPU соперники идут "нос к носу", но с ростом тактовой частоты процессора, Radeon-у удается вырваться вперед в wireframe режиме почти на 2 fps. Осмелюсь сделать предположение, что вклад процессора в расчет геометрии Radeon-ом больше, нежели у GeForce 2 Pro, поэтому последний ведет себя в этом тесте спокойно и уверенно. Однако, как бы то ни было, успех Radeon-а был для меня сюрпризом, особенно если учесть то, что работает он на меньшей тактовой частоте, нежели GeForce 2 Pro.
GeForce 2 MX занимает последнее место и никаких сюрпризов не преподносит. А если учесть его низкие тактовые частоты, медленную память и урезанную ширину шины по сравнению с соперниками, то можно сказать, что ведет себя более чем достойно. В shaded режиме он продолжает упорно бороться за лидерство в своем классе и можно сказать, что это ему удается - отставание от ближайших конкурентов составляет не более полутора fps.
2. Второй тест абсолютно идентичен первому во всем, с той лишь разницей, что сцена более детализована и в ней уже 150 тыс. полигонов. Для современных ускорителей это серьезное испытание. На самом деле я немного слукавил и в предыдущем тесте показал как раз скриншоты сцены из теста № 2. Сделал я это исключительно из соображений экономии и эстетики. Согласитесь, 150 тыс. полигонов выглядят существенно лучше, чем 40 тыс. А демонстрация фактически одной и той же сцены - напрасная трата времени и сетевого трафика. Поэтому здесь я не буду демонстрировать скриншоты и сразу перейду к результатам тестирования.
Рис. 4. Производительность при работе с полигональными объектами
(150000 полигонов) Первое место по прежнему принадлежит молодому и резвому GeForce 3, а вот второе теперь занимает GeForce 2 Pro. На третье неожиданно выходит более слабый GeForce 2 MX, а Radeon плетется в конце. Но это лишь на первый взгляд. Если присмотреться к сложившейся ситуации повнимательнее, то становится очевидным, что все карты располагаются очень тесной группой. В режиме wireframe при частоте CPU 750 MHz, GeForce 2 Pro отстает от лидера всего лишь на 1 fps, GeForce 2 MX на чуть более 2 fps, а Radeon на 3 с небольшим. Использование 933 МГц процессора позволяет лидеру немного увеличить отрыв от ближайшего конкурента, а отстающему Radeon-у вплотную приблизиться к "выскочке" MX-у. Режим shaded расставляет все на свои места. С небольшим отрывом от ближайшего конкурента (менее полутора fps) финиширует GeForce 3. Следом за ним GeForce 2 Pro и практически в то же время бок-о-бок финишную черту пересекают Radeon и GeForce 2 MX.
Осмелюсь прокомментировать результаты этого теста. Как мне кажется, совершенно очевидна "недогруженность" карт данными за счет относительно слабого процессора. 933 МГц - это явно мало для современных ускорителей. И особенно бросается в глаза большая зависимость производительности Radeon от скорости CPU. Его неоднозначное, я бы даже сказал "нервное" поведение с большой долей вероятности можно объяснить одним из двух: либо драйвера Radeon-а слабо оптимизированы (для продуктов ATI это уже стало "притчей во языцех"), либо особенностями архитектуры его блока расчета трансформаций, который просто не берет на себя много, и потому вынуждает заниматься такими операциями центральный процессор. Однако, опираясь на данные о производительности, полученные в ходе предыдущего теста и результаты дополнительного тестирования Radeon с отключенным блоком T&L, я все же склоняюсь к первому и более широко распространенному мнению.
GeForce 2 MX на этом этапе тоже вел себя несколько неоднозначно. В режиме wireframe он вполне успешно стартовал, обогнав существенно более сильного противника в лице Radeon. Но в режиме shaded, судя по всему, у него возникли проблемы из-за недостаточного быстродействия подсистемы локальной видеопамяти, а может и гораздо более банальной вещи - низкой тактовой частоты ядра. В любом случае, ему удалось совершенно однозначно продемонстрировать свои выдающиеся способности в работе с довольно сложными полигональными сценами и подтвердить свою принадлежность к прославленному семейству GPU от nVidia.
3. В этом тесте участникам нашей гонки придется почувствовать себя не в своей тарелке. Иными словами им предстоит заняться тем, чего они практически не умеют делать - рендерингом NURBS объектов. И сделать с этим ничего нельзя, поскольку NURBS-моделирование является одной из самых сильных сторон Maya. В действительности никто не заставит наши ускорители рисовать NURBS. Все необходимые расчеты будут сделаны центральным процессором, а результат будет преобразован в привычную им полигональную форму. Так что акселератор по-прежнему будет получать хорошо усваиваемые им "полигональные" данные. Фактически, тестируется связка: "исполняемый CPU код расчета NURBS трансформаций", "код преобразования NURBS в полигоны" и собственно ускоритель. А теперь давайте посмотрим чем придется заниматься участникам нашей гонки:
Рис. 5. Скриншот сцены теста № 3 в режиме wireframe Рис. 6. Скриншот сцены теста № 3 в режиме shaded Традиционно, тест состоит из четырех этапов - тестирование одной и той же сцены в режимах wireframe и shaded, плюс, тестирование со слабым (750 МГц) и сильным (933 МГц) CPU. На первый взгляд, сцена очень проста - несколько стандартных NURBS объектов, к которым применяются обычные операции 3D трансформаций. Однако, совсем легким этот тест назвать все же нельзя, поскольку параметр subdivDisplaySmoothness был установлен равным 3 (максимально возможное значение). Почему я построил этот тест так, а не иначе станет ясно из результатов тестирования, на которые самое время взглянуть:
Рис. 7. Производительность при работе с
NURBS Вы это видели ?! GeForce 3 демонстрирует молниеносный стартарт и с головокружительной скоростью уносится вперед ! Признаться, я был просто не готов к такому феноменальному результату. Уже в самом начале, в режиме wireframe при частоте процессора 750 MHz он отрывается от своего ближайшего конкурента и партнера по команде nVidia - GeForce 2 Pro на 5.6 fps. Более мощный процессор позволяет ему достичь отметки 40 fps, увеличив отрыв до 9 fps и таким образом почти повторить свои рекордные показатели, продемонстрированные в самом первом тесте гонки. Но это не самое удивительное. Феномен заключается в том, что традиционно тяжелые для всех участников тестирования, включая и GeForce 3 этапы shaded теперь проходятся им с более чем полуторакратным улучшением своих же собственных результатов, полученных в режиме wireframe. Таким образом, на частоте CPU 750 МГц наш лидер вплотную приближается к заветной отметке - 70 fps, а c процессором 933 МГц, рекордсмен превышает и это занчение, показывая результат в 70.7 fps. Однако, нельзя не заметить очевидного - в режимах shaded GeForce 3 достигает предела своих технических возможностей. Иначе как объяснить такой мизерный рост производительности несмотря на существенный рост мощности CPU ?
Очень неплохо выступает в этом тесте GeForce 2 Pro. Он явно претендует на второе место. В режиме wireframe он уверенно обгоняет Radeon и GeForce 2 MX. Причем последний демонстрирует очень неплохой старт, почти на уровне Radeon. Но если детищу ATI с более быстрым центральным процессором худо-бедно удается сохранять дистанцию и даже немного сократить отставание, то MX-у может помочь лишь чудо. А чудес, как известно, не бывает ... Хотя, может я ошибаюсь ? Чудо происходит, но не с ним. Взгляните на тест в режиме shaded при частоте CPU 750 МГц. На этом этапе Radeon-у удается на короткое время отобрать второе место у своего ближайшего соперника GeForce 2 Pro, но вот закрепить этот успех у него не получается. Конкуренту из nVidia удается лучше воспользоваться преимуществом, полученным в результате использования более мощного процессора и с небольшим отрывом все же финишировать вторым. Последним к финишу приходит GeForce 2 MX. У него явные проблемы ...
И еще. Вы заметили сходство в поведении GeForce 3 и Radeon с одной стороны, и GeForce 2 Pro и GeForce 2 MX с другой ? Это я про рост производительности у первой группы при переходе из режима wireframe в shaded и, прямо противоположное поведение ускорителей серии GeForce 2. Не иначе как "хитростями" архитектуры этого не объяснишь. Что ж, спустя почти год присутствия на рынке, Radeon еще имеет в своем арсенале несколько фокусов, способных удивить даже искушенных 3D-шников.
4. На следующем этапе нашим ускорителям придется пройти тест, определяющий скорость каждого из них при работе с объектами, которым назначен полупрозрачный материал. Взгляните на скриншот сцены:
Рис. 8. Скриншот сцены теста № 4 Вообще-то, в сцене использовано всего четыре материала и каждый из них назначен одной из четырех групп кубиков, а то что Вы видите, не что иное как артефакты. Причем, такую картинку показали все тестируемые видеокарты без исключения, из чего я сделал вывод о том, что это глюк Maya.
Как нетрудно заметить, в сцене минимум геометрии, но не стоит ожидать огромных значений fps - тест довольно тяжел. Впрочем, для кого как :) Интереса ради, давайте попробуем предсказать результаты этого этапа. С первым и четвертым местом как мне кажется все ясно: первый - GeForce 3, он мощнее всех как по частотам, так и по архитектуре; второй - GeForce 2 MX, тут комментарии излишни. А вот кто будет вторым ? Самое время делать ставки ! За спиной GeForce 2 Pro более высокие тактовые частоты ядра и памяти, четыре конвейера с двумя блоками затенения/текстурирования на каждом. У Radeon арсенал заметно беднее - два конвейера с тремя блоками, да разве что большее количество транзисторов на кристалле (ну не зря же инженеры ATI их туда запихнули ?!). Не вселяет уверенности в победу представителя команды ATI и его более низкие тактовые частоты ядра/памяти. Нет, что ни говори, а результаты простого арифметического подсчета совсем не в пользу Radeon. Однако, достаточно разговоров, давайте посмотрим на результаты:
Рис. 9. Производительность при использовании
в сцене полупрозрачных материалов Не знаю как Вы, а я ставил на Radeon и это было решение, продиктованое отнюдь не логикой. Что поделаешь, я субъективен так же как и все люди на Земле, но думаю, большой беды в этом нет, поскольку мое предвзятое мнение никак на результатах тестирования не отражается. Надеясь на победу своего фаворита я думал о том как буду комментировать это событие: "Собрав волю в кулак ..." и далее в том же духе. Да какой там ! Radeon обошел своего прямого конкурента легко и непринужденно, не забыв при этом продемонстрировать потенциал, который он непременно реализовал бы, будь в его распоряжении более быстрый процессор.
Ситуацию с остальными участниками гонки комментировать не имеет смысла - все и так очевидно.
5. Как бы там ни было, но предыдущий тест все же можно отнести к разряду второстепенных, чего не скажешь о текущем этапе, в ходе которого нам предстоит выявить самого расторопного "мастера по свету".
Тест состоит из восьми сцен. В первой - один источник света типа Ambient, а в каждой последующей - плюс один цветной Spot. Во всех тестовых сценах использовался один и тот же объект, напоминающий кусок глины или камень, полученный из слегка деформированной сферы с фрактально разбитой поверхностью. Ко всему прочему, этот этап отличается от всех предыдущих тем, что напоминает гонку на выживание. Ниже представлена одна из тестовых сцен, в которой 7 источников света:
Рис. 10. Скриншот сцены теста № 5 Итак, не откладывая в долгий ящик, приступим к рассмотрению полученных данных.
Рис. 11. Динамика падения производительности акселератора
в зависимости от числа источников света в сцене.(Пары кривых одного цвета соответствуют разным процессорам:
933 МГц - верхняя, 750 МГц - нижняя) GeForce 3 в очередной раз демонстрирует прекрасный старт, но на этот раз безоблачного выступления у него не получается. После добавления в сцену четвертого источника света его скорость стремительно, почти линейно, начинает падать. При этом ему уже совершенно безразлична скорость CPU. Такое поведение можно было бы списать на недостаточность мощности процессора, если бы не тот факт, что в тех же условиях остальные участники гонки продолжают ее вполне успешно. С пятью прожекторами в сцене нашего лидера догоняет Radeon. С шестью он проигрывает уже GeForce 2 Pro, а восемь источников света "добивают" его окончательно, ставя в один ряд с GeForce 2 MX. Не знаю как Вы, а я теряюсь в догадках - очень уж это неожиданно. Может nVidia еще не дооптимизировала драйвера, а может и наоборот - слишком хорошо их соптимизировала, но только для применения в играх.
А вот Radeon выступает на удивление хорошо, но при этом в очередной раз демонстрирует похожую на GeForce 3 манеру поведения - с увеличением числа источников света растет его безразличие к скорости CPU.
Наиболее ровно этот тест прошли представители семейства GeForce 2. Вот только их отставание от Radeon и GeForce 3 слишком уж заметное. И если от MX-а никто выдающихся результатов и не ожидал, то на GeForce 2 Pro, лично я возлагал большие надежды. Такое впечатление, что он не очень то и старался. А зря, ведь теперь судьба второго места нашего Гран-При под большим вопросом.
А пока, подведем итоги текущего этапа гонки:
Первое место вполне заслуженно занимает GeForce 3. С большим количеством источников света его отставание от конкурента из ATI не так уж и велико, тогда как с малым, он демонстрирует весьма значительное опережение.
Второе - Radeon.
Третье - GeForce 2 Pro.
Четвертое - GeForce 2 MX.
6. Теперь посмотрим как справятся тестируемые ускорители с визуализацией объектов, текстурированных маленькими текстурами. Тестовая сцена содержит несколько стандартных объектов, на каждый из которых наложена одна из стандартных процедурных текстур.
Рис. 12. Скриншот сцены теста № 6 Теперь посмотрим на результаты этого этапа:
Рис. 13. Производительность при использовании
в сцене небольших текстур Как видите, несмотря на кажущуюся простоту сцены, участники тестирования не демонстрируют заоблачных значений fps. Как всегда, гонку возглавляет GeForce 3. Следом за ним с относительно небольшим отставанием (особенно если учесть его технические характеристики) пристроился Radeon. GeForce 2 Pro явно решил потрясти нас своими низкими результатами. Тут только остается развести руками. Чем занимаются четыре его конвейера текстурирования, для меня загадка ! GeForce 2 MX демонстрирует вполне прогнозируемые результаты, хотя и от него я ожидал большего.
7. Данный тест задумывался как логическое продолжение предыдущего. Его цель - выявить лидера при работе с большими текстурами. Фактически, это две группы однотипных тестов. В каждой группе 4 теста и отличаются они лишь тем, что в первом случае текстуры накладываются на вращающиеся плоскости с непрозрачным материалом, а во втором - на плоскости с полупрозрачным материалом. Сделано это было умышленно, но более детально я коснусь этого вопроса по ходу описания результатов. Сейчас же, давайте посмотрим на то, как выглядит одна из тестовых сцен:
Рис. 14. Скриншот сцены теста № 7/1 Нетрудно заметить, что геометрических данных тут минимум. К тому же, фактически, в этой группе тестов полностью отображается лишь одна текстура. Остальные частично. Иными словами, в этом тесте большой overdraw и теоретически, преимущество должны получить те ускорители, у которых реализована технология наподобие Radeon-овской HyperZ (вот бы Kyro сюда !). Собственно, кандидатов в лидеры немного: GeForce 3 и Radeon. Посмотрим, так ли это ?
Рис. 15. Динамика падения производительности при
использовании в сцене нескольких больших непрозрачных текстур.(Пары кривых одного цвета соответствуют разным процессорам:
933 МГц - верхняя, 750 МГц - нижняя) Что ж, мои предположения подтвердились. Лидирует снова GeForce 3. Второе место уверенно занимает Radeon. При этом в сценах с тремя и более текстурами, используя 933 МГц процессор, ему удается показывать те же результаты что и GeForce 3 с 750 МГц CPU. По-моему, это совсем не плохо для старичка. Интересно, как бы выглядела таблица лидеров, работай Radeon на тех же частотах ядра/памяти что и конкурент из nVidia ?
Третье место, как и ожидалось, занял GeForce 2 Pro. Но если посмотреть на абсолютные значения его производительности, то оптимизма становится меньше. GeForce 2 MX плетется в конце. Да, текстурирование явно не его стихия !
Однако, это еще не конец этапа. Впереди серия тестов, сулящая новый виток борьбы за второе место. Взгляните на сцену:
Рис. 16. Скриншот сцены теста № 7/2 По идее, HyperZ тут Radeon-у не помощник и мегагерцы должны взять свое ! Давайте посмотрим, что получилось:
Рис. 17. Динамика падения производительности при
использовании в сцене нескольких больших полупрозрачных текстур.(Пары кривых одного цвета соответствуют разным процессорам:
933 МГц - верхняя, 750 МГц - нижняя) Отчасти я был прав, но только не в отношении GeForce 2 Pro. За счет больших тактовых частот GeForce 3 заметно отрывается от преследователя из ATI, но и тот не дремлет. Так что сократить разрыв у второго пилота команды nVidia - GeForce 2 Pro не получается. Да ... не в мегагерцах и числе конвейеров сила текстурирования.
Зато MX-у все нипочем ! Сравните показанные им результаты в тестах № 7/1 с результатами тестов № 7/2. Видите ? Они отличаются буквально на доли fps. И это тогда, когда его старшие собраться теряют до 7 fps (GeForce 3) на полупрозрачных текстурах ! Такое впечатление, что ему просто приказали не работать быстрее определенного предела ! Ну что ж, в мире "Формулы-1" такое встречается сплошь и рядом, и в нашем случае лишний раз служит подтверждением адекватности выбранного для этой статьи названия.
8. И вот наконец, мы подошли к последнему этапу нашего Гран-При. Вообще-то, включение его в гонку - чистая формальность и после просмотра результатов станет ясно почему. Задумывался он как тест скорости работы с 3D текстурами. Тот кто хоть немного знаком с Maya знает, что этот тип текстур используется в ней очень широко и повсеместно. А тот кто отслеживает эволюцию 3D ускорителей, без труда вспомнит, что впервые об аппаратной поддержке работы с 3D текстурами в своем новом продукте - Radeon объявила около года назад фирма ATI. Я сам "игрался" с ATI SDK как раз на предмет использования в OpenGL этих самых трехмерных текстур и точно знаю, что это не пустые слова или маркетинговый ход. Несколько месяцев назад nVidia также объявила об аппаратной поддержке 3D текстурирования в своем новом GeForce 3. Так что два из четырех участников гонки должны получить несомненное преимущество в этом тесте перед остальными. Сначала посмотрим на тестовую сцену:
Рис. 18. Скриншот сцены теста № 8 В этом тесте я попытался симитировать процесс интерактивного наложения 3D текстуры на простой полигональный объект. Текстура как бы проходит сквозь сферу и в местах их пересечения часть объема сферы заполняется текстурой. Теперь посмотрим на результаты:
Рис. 19. Производительность при работе с 3D текстурами Совершенно очевидно, что все тестируемые ускорители за исключением GeForce 2 MX показали одинаковую производительность с точностью до сотых. Последний умудрился таки отстать на одну десятую fps. Но как Вы понимаете, это отставание скорее всего обусловлено чуть более низкой скоростью рендеринга того небольшого количества полигонов, которое присутствует в сцене.
Вывод очевиден: к великому моему сожалению, Maya не полагается в вопросах визуализации работы с 3D текстурами на ускорители и все делает сама, за счет центрального процессора несмотря на то, что трехмерные текстуры уже довольно давно являются стандартным расширением OpenGL 1.2. Впрочем, есть надежда, что в версии Maya 4 этот недочет уже учтен.
Заключение
Ну вот и подошел к концу Гран-При Maya. Хочется надеятся, что наблюдение за ходом гонки было для Вас интересным. Ну а теперь, стандартная процедура награждения и короткая пресс-конференция.
Места на пьедестале распределились следующим образом:
Первое место безусловно занимает GeForce 3 - абсолютный победитель всех этапов гонки. С выпуском этого видеопроцессора нового поколения, nVidia продемонстрировала, что может работать когда захочет (а может, когда ей на пятки наступает ATI ?).
Второе место я присуждаю Radeon. Его лидерство не так однозначно. В тестах с большим количеством полигонов в режимах wireframe он был медленнее чем GeForce 2 Pro, но лишь на 2.5 fps. Сами понимаете, это не фатально, особенно если учесть, что в shaded режимах отставание от ближайшего конкурента из nVidia уже составляло не более одной - двух десятых fps. Были неудачи и в тестах с NURBS-геометрией. Причем опять в режиме wireframe. Тут уже отставание достигло 6 fps, но снова, было значительно сокращено в shaded режиме. Я прекрасно понимаю важность именно этих этапов и без разговоров присудил бы данное место GeForce-у 2 Pro, если бы не феноменальные результаты, продемонстрированные детищем ATI и совершенно оглушительный провал GeForce 2 Pro в тестах расчета освещения и текстурирования. Ну и потом, откровенно говоря, Radeon меня удивил. Имея более низкие технические характеристики, зачастую он боролся на равных с более сильным конкурентом одного с ним класса, и при этом в большинстве тестов умудрялся еще и выигрывать. Согласитесь, это достойно уважения.
Нельзя не отметить и то общее ощущение, что ATI, судя по всему, уделила много внимания оптимизации чипа и драйверов именно для работы в профессиональных приложениях. Ведь не секрет, что в играх Radeon ведет себя заметно хуже, чем старшие модели GeForce 2.
Третье место заслуженно принадлежит GeForce 2 Pro. Этот участник гонки тоже удивил, но только своими низкими показателями в тестах так или иначе связанных с затенением, что было для меня совершенно неожиданным. Однако, совершенно очевидно, что в расчетах 3D трансформаций он уступал лишь победителю этого соревнования.
GeForce 2 MX на пьедестал не попал - он последний. Но надо отдать ему должное - для своей ценовой категории он вовсе не плох и вполне годится для работы в Maya и очень заметно ускоряет работу при моделировании в режиме wireframe.
Общий итог таков: современные ускорители игрового класса могут вполне успешно применяться в профессиональных приложениях 3D моделирования/анимации и в частности в Maya.
В заключение, осмелюсь дать несколько общих рекомендаций на случай, если Вы решили провести апгрэйд своего компьютера с целью повысить эффективность работы в Maya:
1. Если у Вас есть деньги, то выбор очевиден - максимально быстрый процессор + GeForce 3. Но может быть стоит подождать выхода R200 от ATI ? Тем более, что ждать осталось недолго. В этом тестировании Radeon достаточно наглядно показал, что за спиной ATI серьезные архитектурные наработки. Причем, я рекомендовал бы стратегию ожидания всем без исключения, даже тем, кто является исключительным приверженцем продукции nVidia. Появление серьезного конкурента на рынке должно снизить цены. А то, что конкурент будет действительно серьезен и зол, у меня не вызывает никаких сомнений.
2. Если Вы несколько ограничены в средствах и раздумываете, чему отдать предпочтение, быстрому процессору и видеокарте послабее, или наоборот ? Я бы рекомендовал первое. Возьмите максимально быстрый процессор и, например, Radeon - в такой связке Вы получите и скорость во время моделирования, и быстрый рендеринг (не для этого ли нужна Maya ?). Рекомендую Radeon, а не GeForce 2 Pro или GTS, поскольку с быстрым процессором первый, по крайней мере, не намного хуже в работе с геометрией и при этом существенно быстрее при расчетах освещения и текстурировании. Ну и потом, я определил бы его как чип с большим сроком морального старения. Подтверждением может служить наличие аппаратной поддержки наложения 3D текстур. И пусть пока эта возможность не используется в Maya, с выходом новой версии все может измениться.
3. Если у Вас все те же условия что и в пункте 2, но при этом Вы любите поиграть, а Maya не занимает большую часть Вашего "машинного времени", то лучшим выбором видеокарты будет как раз старшая модель GeForce 2.
4. Ну и наконец последнее. Если Вы серьезно ограничены в средствах, смело покупайте GeForce 2 MX. Звезд с неба он не хватает, но здорово поможет Вам во время моделирования, особенно при работе со сложными полигональными моделями. В большинстве остальных случаев, вполне комфортные значения fps Вам обеспечены.
На этой оптимистичной ноте я и объявляю Гран-При Maya завершенным.