Обзор видеокарты Diamond Viper II

Вот и наступил 2000-й год, когда особенности почти всех видеокарт поколения 1999-го года мы уже рассмотрели и ждем появления новых видеокарт "весеннего призыва". Правда, еще остался не охваченным нашими тестами чип S3 Savage2000. Примечательно то, что компания S3 анонсировала свой чип Savage2000 на один день раньше, чем NVIDIA объявила свой GPU GeForce 256, однако на рынке карты Viper II на базе Savage2000 появились совсем недавно.

Сегодня мы постараемся провести тщательный анализ чипа S3 Savage2000 на фоне успешно продающихся по всему миру карт на базе GPU NVIDIA GeForce 256. Посмотрим, в состоянии ли карты Diamond Viper II Z200 успешно конкурировать с ними, с учетом их цены.

Начнем мы с рассмотрения образца, полученного нами для испытаний. Эта видеокарта имеет интерфейс AGP 2x/4x, 32 мегабайта 6 ns SDRAM локальной видеопамяти, размещенной в 4-х 64-мегабитных модулях (по 2 микросхемы на каждой стороне печатной платы).

Видно, что Diamond Multimedia не отступилась от своих традиций экономии на всем. Я имею в виду применение пассивного охлаждения с помощью радиатора без вентилятора, который приклеен к чипу. Мне непонятна позиция компании, которая не может потратить лишних $1-2 на установку активного кулера, тем более, что видеокарта весьма сильно греется, даже при работе на номинальных (125/143 МГц) частотах (напомню, что первое число — частота работы графического ядра, второе — частота работы видеопамяти).

Замечу, что, фактически, только два производителя видеокарт: Diamond Multimedia и Creative Labs игнорируют проблему перегрева и на многих своих картах устанавливают только радиаторы без вентиляторов. А ведь это две крупнейшие компании, бренды среди производителей видеокарт. Печально видеть такое пренебрежение нуждами пользователей.

Но вернемся к рассмотрению видеокарты Diamond Viper II Z200. На плате установлен набор логики, обслуживающий TV-out, к которому подключены два внешних разъема: S-Video и Composite (RCA или "тюльпан"). На видеокарте имеются джампера, с помощью которых можно управлять режимом работы шины AGP (2x или 4x). В комплекте с видеокартой поставляется CD с драйверами, два CD с играми, руководство по установке и пакетик с перемычками.

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

Общие характеристики:

  • Частота ядра: до 150 МГц
  • Частота работы шины памяти: до 166 МГц
  • Скорость обработки треугольников: предположительно 10-15 млн. треугольников в секунду
  • Разрядность шины памяти: 128 бит
  • Ширина полосы пропускания шины памяти: до 2,6 Гб/сек
  • Поддерживаемые типы памяти: модули 1Mx16, 2Mx32 или 4Mx16 типа SDRAM; модули 512Kx32 или 1Mx32 типа SGRAM (с поддержкой режима блочной записи)
  • Объем локальной видеопамяти: до 64 Мб
  • RAMDAC: интегрированный, частота 350 МГц с поддержкой коррекции гаммы
  • Поддерживаемые разрешения: вплоть до 2048x1536
  • Интерфейс внешней шины: полная поддержка AGP x2/x4 (включая SBA и DME) и PCI 2.2 (включая Bus mastering)
  • Поддерживаются спецификации: последовательная шина I2C и DDC; ACPI D0-D3 режимы и управление питанием PCI; 100% соответствие PC'99
  • Технологический процесс: 0,18 мкм
  • Число транзисторов: 12 млн.
  • Размер чипа: 31x31mm
  • Тип корпуса чипа: PBGA, 409 контактов

2D часть:

  • 128 разрядное 2D-ядро
  • Поддержка акселерации BitBLT, закраски прямоугольников и полигонов, прорисовка линий, аппаратный курсор и масштабирование по горизонтали/вертикали
  • Работа с ускорением графике при 8-, 16- и 32-битном представлении глубины цвета

3D часть:

  • Интегрированный геометрический процессор преобразования координат и установки освещения (S3TL)
  • Аппаратная установка 8 источников света по спецификации OpenGL
  • Геометрический движок, выполняющий оперции над вещественными числами и занимающийся расположением полигонов в пространстве
  • Возможность равномерного распределения нагрузки по расчету геометрии между CPU и S3TL
  • Полная поддержка OpenGL и DX7
  • Непрервыная скорость при рендеринге 2 пикселей с одновременным наложением двух текстур на пиксель за такт
  • Однопроходный движок наложения четырех текстур (Single-pass Quad-Texture engine)
  • Программируемые режимы смешивания нескольких текстур
  • Аппаратная поддержка рельефного текстурирования (поддерживается только режим выдавливания)
  • Реализованная на аппаратном уровне поддержка технологии S3TC
  • Рендеринг при 32-битном представлении глубины цвета
  • Сглаживание полной сцены (Full scene anti-aliasing)
  • Однопроходная трилинейная фильтрация
  • Анизотропная фильтрация
  • Поддерживается 8-битный стенсель буфер
  • Поддерживается 16/24/32-битная Z- и W-буферизация
  • Поддерживаются отраженный свет и размытые тени
  • Улучшенные режимы прозрачности и полупрозрачность (Enhanced alpha blending modes)
  • Наложение тумана по вершинам полигонов и попиксельно в определенных областях сцены
  • Поддержка текстур размером 2048х2048 текселей

Поддержка плоскопанельных мониторов:

  • Соответствие спецификации DVI
  • 12/24-битный цифровой интерфейс для подключения к кодерам плоскопанельных мониторов
  • Авторастяжение и центрирование для VGA текстовых и графических режимов
  • Поддерживаются разрешения вплоть до 1280x1024

Поддержка DVD/DTV:

  • Масштабирование изображения без потерь качества
  • Преобразование данных из планарного формата в упакованный формат
  • Движок компенсации движения третьего поколения
  • Реализация на аппаратном уровне подсветки и режимов полупрозрачности для наложения субтитров
  • Поддержка мультиоконного видео для использования в видеоконференциях
  • Управление яркостью, насыщенностью, контрастностью цвета, тональностью цвета и цветовой гаммой с возможностью программирования
  • Обработка потоков (Streams Processor) с отображением в разрешениях вплоть до 1600x1200
  • Поддерживается VIP 2.0 видеопорта, обеспечивает поддержку всех разрешений HDTV
  • Цифровой порт для подключения NTSC/PAL TV кодировщиков, обеспечивающий подключение без потерь данных
  • Режим деинтерлейсинга при отображении на мониторе интерлейсного изображения
  • Поддержка интерфейса Microsoft DirectDraw7 HVA
  • Множество конфигураций HDTV, поддерживаемые через DMA и захват управления шиной

К сожалению, как оно обычно и бывает, реализовано на практике далеко не все из того, что можно увидеть в спецификации. Ну, например, частота работы чипсета — всего 125 МГц, а не значение, близкое к 150 МГц, да и память работает на 143 МГц. Такая низкая частота памяти мне совершенно непонятна — я уже не раз писал о том, что, при использовании низкочастотной SDR SDRAM, она оказывается одним из главных факторов, ограничивающих быстродействие 3D-акселератора.

Однако, все же самой интересной особенностью чипа S3 Savage2000 является наличие в нем геометрического сопроцессора. Поэтому, наравне с NVIDIA GeForce 256, S3 Savage2000 можно называть GPU (Graphics Processor Unit). Тем более, что S3 Savage2000 был анонсирован на день раньше, чем NVIDIA GeForce 256, что дает право S3 Savage2000 считать пионером в этой области. Замечу еще раз, что, к сожалению, этого пионера нам приходится рассматривать в последнюю очередь, а впереди уже видны новые GPU...

При анонсировании S3 Savage2000 было заявлено, что будет выпущено два варианта этого чипа (по подобию NVIDIA Riva TNT2 и Riva TNT2 Ultra):

 Savage2000Savage2000+
Интерфейс шины памяти128 бит128 бит
Ширина полосы пропускания памятиДо 2.6 Гб/секДо 3.2 Гб/сек
Рабочая частота шины памятиДо 166 МГцДо 200 МГц
Рабочая частота графического ядраДо 150 МГцДо 200 МГц
Скорость заполнения сцены (Fillrate)До 300 млн. пикселей в секДо 400 млн. пикселей в сек
Скорость текстурированияДо 600 млн. текселей в секДо 800 млн. текселей в сек

Видеокарты на S3 Savage2000+ уже анонсированы и ожидаются на рынке уже в 1-м квартале этого года.

При рассмотрении чипа NVIDIA GeForce 256 мы уже писали, для чего, собственно, нужен геометрический сопроцессор. Напомним вкратце. Процесс создания трехмерной сцены состоит из нескольких этапов, большая часть которых обычно возлагается на центральный процессор. Например, перерасчет координат вершин треугольников и расчет освещения. При создании каждого трехмерного объекта он разбивается на треугольники (полигоны), и манипулирование производится с вершинами этих треугольников, которые, как и любая точка в пространстве, имеют свои координаты. Но системы координат в 3D- и в 2D-пространстве совершенно разные. Перевод координат каждой вершины в двумерную систему, наряду с процессом удаления всех объектов, которые будут невидимы в отображаемой сцене (clipping), происходит с учетом угла зрения пользователя (коррекция перспективы). Этими операциями обычно занимается центральный процессор системы (CPU).

Если вы работали с пакетами 3D-моделирования, то знаете, что важным этапом подготовки сцены является расстановка источников света и расчет освещения сцены этими источниками, а также реализация световых эффектов: бликов, световых кругов и т. п. Соответственно, оттенки каждого объекта, каждого полигона должны быть скорректированы в ходе расчета освещенности. Обычно в компьютерных играх этим занимается CPU системы. Отмечу, что есть способ имитации расчета освещения в трехмерной сцене при помощи карт освещенности, который сегодня является наиболее часто применяемым. Обычно в режиме мультитекстурирования один текстурный модуль накладывает на пиксель текстуру, а другой — специальную заранее подготовленную карту, которая изменяет цвет текстуры, в результате чего на объекте получается световое пятно округлой формы. Этот способ расчета освещенности довольно прост и не требует больших затрат ресурсов CPU. Однако, такой метод довольно груб и не может обеспечить создание реалистичного отображения света, исходящего от неоднородного источника освещения, поскольку световые круги, получаемые таким образом, статичны и не меняются в зависимости от изменения состояния источника света. Например, если источник света — факел, то блики, отбрасываемые им на стены, должны постоянно меняться. В программу нельзя заложить такое огромное число карт освещенности, чтобы при каждом изменении языка пламени использовалась новая карта. Поэтому, в подобных случаях наиболее верное и реалистичное освещение может обеспечить только вершинный, или вертексный (vertex) расчет освещенности, который требует затрат вычислительных ресурсов.

Если эти два трудоемких процесса — трансформацию координат и расчет освещения — перенести с центрального процессора системы на специализированный геометрический процессор, то освободившиеся ресурсы CPU могут быть использованы на другие, не менее важные задачи, например, расчет физики движения объектов или AI. Подобный специализированный геометрический сопроцессор и входит как раз в состав чипсетов S3 Savage2000 и NVIDIA GeForce 256. У Savage2000 он получил название S3TL. Сам же комплекс операций по преобразованию координат и расчету освещения называется T&L (Transformation and Lighting). Если он упоминается с приставкой Hardware T&L, то это значит, что для выполнения этих операций используется геометрический сопроцессор, расположенный на борту графического акселератора, а если с приставкой Software T&L, — то это традиционный способ подобных вычислений с использованием ресурсов центрального процессора системы и движка игры или стандартного API, например, Direct3D 7.0. Напомню, что Hardware T&L у существующих GPU поддерживает расчет одновременно до восьми источников света в сцене.

Использование GPU и вытекающее из этого освобождение ресурсов CPU может позволить также и производить разбиение объектов на большее число треугольников (тесселяция). Отсюда самый главный вывод: игре выгодно использовать Hardware T&L. Конечно, более приемлемым методом в существующих условиях, когда на рынке представлены как видеокарты с GPU, так и без него, было бы создавать игры с динамической тесселяцией. То есть, при распознавании Hardware T&L объекты разбивались бы на большее число полигонов, применялось бы вершинное освещение, противники становились бы более умными и т.д. Но о выходе таких игр пока приходится только мечтать, а ведь именно на них были бы хорошо видны все преимущества использования GPU. Выше приведен кадр из MadOnion 3D Mark 2000.

Однако, наличие геометрического сопроцессора — это не единственное отличие S3 Savage2000 от других присутствующих на рынке графических процессоров. Особая двухконвейерная архитектура 3D-рендеринга у этого чипсета — не менее важная деталь, учитывая пока незначительное число игр, поддерживающих Hardware T&L. Реализация этой технологии в S3 Savage2000 называется Single-Pass Quad-Texture engine. Дело в том, что этот чипсет содержит 4 текстурных модуля и способен за такт выдавать 2 пикселя, на каждый из которых может одновременно накладываться по две текстуры (либо, например, текстура+карта освещенности, либо текстура+альфа-канал для получения полупрозрачных объектов). Четырехконвейерный чип NVIDIA GeForce 256, способный в обычном режиме обрабатывать не 2, как Savage2000, а 4 пикселя за такт, в режиме мультитекстурирования формирует также два пикселя с наложением двух текстур на него. Кроме того, Savage2000 умеет накладывать и 4 текстуры на пиксель за такт, то есть осуществлять так называемое квадротекстурирование. Однако, этот способ пока не поддерживается программным обеспечением, поэтому развивать эту тему нет смысла. Тем не менее, заметим, что появление на рынке все большего числа игр с поддержкой мультитекстурирования может положительно сказаться на популярности чипа, оптимизированного под него, коим и является S3 Savage2000.

Из других особенностей S3 Savage2000, заслуживающих внимания, можно назвать поддержку 32-битного Z-буфера и W-буфера (это массив величин, обратных Z-координатам, которые помогают уточнить местоположение объекта или его вершин при очень большой удаленности от пользователя). К сожалению, S3 Savage2000 не поддерживает прогрессивные методы наложения рельефа, такие, как Environmental Mapped Bump Mapping (EMBM) или Dot Produce Bump Mapping (DPBM), а только имеющийся в DirectX 6.0 и более поздних Embossing Bump Mapping, который не используется практически никакими производителями программного обеспечения.

Естественно, что чип Savage2000 принял от Savage4 эстафету по поддержке фирменной технологии компрессии текстур S3TC, которая лицензирована Microsoft и включена в состав Direct3D под именем DXTC. Несмотря на то, что ATI заявила о полной программной поддержке S3TC в своем чипе ATI RAGE 128 PRO, S3TC под OpenGL пока работает только у продуктов S3.

Памятуя о проблемах с драйверами для Savage4, я с нескрываемой тревогой предлагаю вам ознакомиться с анализом производительности и качества 3D-графики карты Viper II на базе чипа Savage2000.

Конфигурация тестовых систем:

Система на базе Intel Pentium III

  • процессор Intel Pentium III 600;
  • системная плата ASUS P3B-F (i440BX);
  • оперативная память 128/256 MB PC100;
  • жесткий диск Quantum FB CR 6.4 GB.

Система на базе AMD Athlon

  • процессор AMD Athlon 600;
  • системная плата FIC SD11 (AMD 750);
  • оперативная память 128 MB PC100;
  • жесткий диск Quantum FB CR 6.4 GB.

На обоих системах была установлена операционная система Windows 98, использовались мониторы ViewSonic P810 (21") и Nokia 447Xav (17").

Тестирование проводилось на драйверах версии 9.01.21, для тестирования на Unreal Tournament 4.02 использовалась версия драйвера S3 Metal 2.003. Vsync отключен. Драйвер S3 Metal поставляется отдельно и оптимизирован только под Unreal Tournament.

Процесс установки драйверов не вызвал никаких затруднений, фирменные утилиты Diamond InControl Tools не использовались, поскольку не несут в себе каких-либо настроек работы видеокарты. В результате, мы получили следующие возможности по управлению 3D:

На данной закладке можно настроить работу карты в Direct3D. Отмечу, что в традициях фирмы Diamond Multimedia структура драйверов выполнена в виде профилей для конкретных приложений. Поэтому после установки драйверов и до запуска первого приложения в настройках ничего изменить нельзя. Комичная ситуация сложилась, когда программа отнесла игру Quake3 к Direct3D-приложениям, а меню OpenGL на закладке Diamond 3D так и осталось недоступным.

Texture Memory Control — позволяет выбрать местоположение наборов текстур, которые будут использоваться:

  • в ОЗУ (через AGP) и локальной видеопамяти (по умолчанию);
  • только в локальной видеопамяти;
  • только в ОЗУ (через AGP).

Auto Z-buffer Clear — автоматическая очистка Z-буфера (практического применения не имеет).

Auto MIP-mapping — автоматическое разделение сцены на MIP-уровни (все игры умеют это делать сами, поэтому также не используется).

Fixes Top Texture Line — включает правку верхних линий текстур при их наложении, практического применения не имеет.

Затем идет раздел Global:

Здесь, как можно понять, уже применительно ко всем приложениям, можно регулировать включение и выключение Vsync и W-буфера.

Закладка, посвященная коррекции цвета, представлена ниже:

Учитывая наличие на видеокарте TV-out, довольно важной представляется и следующая закладка:

Хотя TV-out ничем особенным от остальных видеокарт не отличается (800х600 при 60 Гц), имеется возможность настройки яркости, контрастности изображения и выбора типа сигнала.

Теперь — о производительности. Начнем с 2D. Чипсет S3 Savage2000 имеет интегрированный RAMDAC с частотой 350 МГц, что дает все основания ожидать высокого качества изображения. И действительно, только в разрешении 1600х1200 четкость картинки у S3 Savage2000 чуть-чуть уступает NVIDIA GeForce 256, а в других разрешениях находится на высоком уровне. А вот со скоростью в 2D не все так хорошо, как хотелось бы:

 Business Graphics WinmarkHigh-End Graphics Winmark
ASUS AGP-V6600 (GeForce256 SDR)194659
Leadtek WinFast GeForce256 DDR194661
ATI RAGE FURY MAXX183610
Diamond Viper II (Savage2000)160452

Как видно, S3 Savage2000 сильно отстал от конкурентов.

Производительность видеокарты в 3D мы будем оценивать на основе следующих тестов:

  • id Software Quake3 Arena v.1.3 (используется demo002) — игровой тест, дающий представление о работе карты в OpenGL
  • Rage Expendable (используется timedemo) — игровой тест, дающий представление о работе карты в Direct3D при включенном мультитекстурировании
  • Accolade/Infogrames Test Drive 6 — игровой тест, дающий представление о работе карты в Direct3D при использовании оптимизации под SSE или 3DNow!, а также умеющий использовать Hardware T&L
  • Epic Games/GT Unreal Tournament v.4.02 (используются мною записанные демо: testd3d.dem и testmetal.dem) — игровой тест, дающий представление о работе карты в Metal при использовании технологии S3TC и при работе с большими текстурами
  • NVIDIA TreeMark — синтетический тест под OpenGL, полностью ориентированный на использование Hardware T&L

Для сравнительной оценки производительности Diamond Viper II Z200 мы будем приводить результаты видеокарт на базе NVIDIA GeForce 256 с SDR и DDR-памятью (ASUS AGP-V6600 и Leadtek WinFast GeForce 256 DDR), а также ATI RAGE FURY MAXX (два чипа ATI RAGE 128 PRO).

Отмечу, что на момент тестирования Diamond Viper II Z200 в драйверах был отключен S3TL, то есть блок аппаратного расчета T&L. Однако, в версии драйверов 9.01.21 есть возможность включить блок S3TL в OpenGL путем внесения изменений в Registry: [HKEY_CURRENT_CONFIGDisplaySettings] "ICDHWTL"="ON"

В тестах на Quake3 и Expendable будут приведены данные и по производительности разогнанной видеокарты Diamond Viper II Z200 (до 150/166 МГц).

Видно, что Diamond Viper II Z200 отстала от всех соперников почти везде. Только в низких разрешениях она опережает ATI RAGE FURY MAXX, а при разгоне почти догоняет ASUS AGP-V6600.

Здесь позиции Diamond Viper II Z200 укрепляются, и карта практически сравнялась по скорости с ASUS AGР-V6600. Вероятно, сказывается оптимизация драйверов под 3DNow!.

Положение Diamond Viper II Z200 тут уже сильно улучшается, производительность карты выше ASUS AGP-V6600. Как и в случае с ATI RAGE FURY MAXX, работа с 32-битным цветом у S3 Savage2000 явно на высоте.

Преимущество Diamond Viper II Z200 над видеокартами на базе NVIDIA GeForce 256 с SDR-памятью просто очевидно!

Никаких отличий от аналогичного теста Normal нет, Diamond Viper II Z200 практически на последнем месте.

Наблюдается равенство производительности Diamond Viper II Z200 и ASUS AGP-V6600 на GeForce256.

Видеокарта на базе S3 Savage2000 отстает от всех остальных.

Diamond Viper II Z200 опередила не только ASUS AGP-V6600, но и даже обошла Leadtek WinFast GeForce 256 DDR на низких разрешениях!

Итак, мы видим, что драйверы у Diamond Viper II Z200 хорошо оптимизированы под 3DNow!, что и дало этой карте в Quake3 на процессоре AMD Athlon возможность выглядеть на уровне карт на базе NVIDIA GeForce 256 с SDR-памятью. Также хочу отметить и тот факт, что на Athlon-системе драйверы Diamond Viper II Z200 включают режим AGP 2x, в то время как видеокарты на базе чипов от NVIDIA используют только AGP 1x.

Что касается системы на процессоре Intel Pentium III, то видеокарта Diamond Viper II Z200 показала себя на высоте только в 32-битном цвете. Но даже несмотря на то, что S3 Savage2000 имеет более высокую тактовую частоту (125 МГц против 120 МГц у NVIDIA GeForce 256), платы на базе NVIDIA GeForce 256 остались вне досягаемости.

Ну что можно сказать? Развести руками, и все. Diamond Viper II Z200 отстала по всем статьям.

Результат аналогичен предыдущему.

К сожалению, картина для Diamond Viper II Z200все такая же печальная.

Итак, в Expendable Diamond Viper II Z200 с треском провалилась. Отставание от конкурентов настолько сильное, что ничего положительного о работе S3 Savage2000 под Direct3D в режиме мультитекстурирования сказать нельзя вообще.

К тому же, если войти в Expendable при отключенном Vsync, то наблюдается просто кошмарный лаг, то есть отставание изменений в сцене от действий игрока. Играть можно только при включенном Vsync, а это еще снижает среднюю производительность видеокарты. Мне также остался непонятным категорический отказ Viper II работать в разрешении 1600х1200х32bpp, когда выдавалась ошибка о нехватке памяти, несмотря на то, что режим AGP-текстурирования был включен.

На основе этого теста мы провели исследование зависимости производительности видеокарты от производительности центрального процессора системы, т.н. масштабируемость, а заодно покажем и скорость платы на менее скоростных процессорах:


Можно заметить, что небольшая оптимизация драйверов у S3 Savage2000 под SSE имеется, поскольку игра Expendable использует возможности технологий SSE и 3DNow!. При небольшой разнице в частотах (50 МГц) прирост на Pentium III 600 по сравнению с Celeron 550 довольно значителен. Невысокие значения FPS на процессоре 366 МГц подтверждают наш довод о том, что покупать современные акселераторы стоит только владельцам современных же процессоров.




Я даже не стал делать комментарии после каждого теста, так как их просто нет! Полнейшее поражение Diamond Viper II Z200! Единственное исключение составляет тест на Athlon в 32-битном цвете, где Viper II удалось приблизиться к соперникам хоть на немного. Конечно же, в разрешении 800х600 скорость вроде бы приличная, однако зачем покупать довольно дорогой акселератор для использования в 800х600х16bpp? Прошу заметить также, что при тестировании Viper II использовался Software T&L режим, т.к. Test Drive 6 работает в DirectX, в котором аппаратный T&L драйверы Savage2000 пока не используют.

Перейдем к Unreal Tournament. Отмечу, что тестирование Diamond Viper II Z200 проводилось под API S3 MeTaL (aka MTL), оптимизированный под чипсет S3 Savage2000. При этом был установлен дополнительный пакет больших текстур, идущий на отдельном CD с игрой Unreal Tournament. Тестирование остальных карт проводилось в Direct3D. К сожалению, игра не располагает встроенным бенчмарком для измерения скорости работы в разных API, а демо, записанные во время прохождения того или иного уровня в игре, работают только в рамках одного API. Поэтому мне пришлось пройти уровень Barricade (где используется много больших текстур в API S3 Metal) под Direct3D и записать демо под названием testd3d.dem, а затем, уже в S3 Metal пройти еще раз этот же уровень и записать демо под названием testmetal.dem. Я понимаю, что полной корректности сравнения при этом не будет, однако это был единственный выход для сравнения работы Diamond Viper II Z200 в выгодном для нее режиме (да и самом красивом, должен сказать) с остальными видеокартами, для которых приоритетным в этой игре является Direct3D.

Ну вот и настал тот торжественный момент, когда можно сказать, что Diamond Viper II Z200 положил всех на лопатки. Скорость действительно впечатляет. Только лишь в разрешении 1600х1200 видеокарта немного отстала от конкурентов. Однако повторю, что это при использовании больших текстур, которые у остальных видеокарт не использовались!

   



Успех S3 Savage2000 очевиден. Мне сразу подумалось, что неплохо бы делать подарочные наборы: Diamond Viper II Z200 + Unreal Tournament в одной упаковке :).

Да, как можем видеть, поддержку своего собственного API Metal фирма S3 сделала хорошо, потенциал карты раскрывается вовсю. Тем более, что, по данным S3, последняя версия этого драйвера позволяет обрабатывать два пикселя за такт. Это дало немалую прибавку к скорости (интересно, получается, что предыдущий драйвер запускал только один конвейер). Однако и тут есть ложка дегтя: при работе в 1600х1200х32bpp требуется 256 мегабайт оперативной памяти, чтобы все текстуры могли загрузиться. Хотя это не столь существенный момент, поскольку вряд ли кто будет играть в таком разрешении, это должно послужить сигналом владельцам компьютеров с 64 мегабайтами ОЗУ — я не уверен, что можно будет играть на высоких разрешениях с использованием больших текстур при таком объеме памяти.

Как уже упоминалось ранее, в новой версии драйверов (9.01.21) для Savage2000 стало возможным включить в работу S3TL, т.е. задействовать реализацию Hardware T&L. Поскольку игрового теста, использующего Hardware T&L в OpenGL у нас нет, мы воспользовались тестом NVIDIA TreeMark для демонстрации работы геометрического сопроцессора у S3 Savage2000.

Глядя на эту диаграмму, можно убедиться, что геометрический сопроцессор (S3TL) у Savage2000 безусловно работает, хотя и его скорость весьма мала. Он примерно вполовину более слабый, чем у NVIDIA GeForce 256. Весьма характерным является отсутствие роста производительности при уменьшении разрешений, что доказывает слабость сопроцессора. Видно, что скорость видеокарты сдерживается именно им.

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

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

Подведем итог нашим измерениям производительности. Несмотря на то, что в Direct3D работа Diamond Viper II Z200 выглядит печально - отставание от конкурентов весьма велико, S3 хорошо поработала над своим ICD OpenGL, доведя его до более-менее благопристойного вида, что нашло отражение в неплохих скоростных результатах. Ну, а в API S3 Metal все отлично! Видеокарта просто "летает" в такой сложной игре, как Unreal Tournament. Правда, покупать довольно дорогую плату ради одной игры очень глупо, API S3 Metal больше практически нигде не используется. Конечно, движок от Unreal также поддерживает этот API, поэтому в играх на базе этого движка S3 Savage2000 покажет себя весьма неплохо. Однако ниже я покажу, что так как S3 cоптимизировала свой API только под Unreal Tournament, в том же Unreal появились нарекания на качество графики.

Не так давно вышла демонстрационная программа Dagoth Moor Zoological Gardens, которая уже успела наделать много шума своей красотой и наиболее реалистичной на сегодня графикой. Эта программа использует не только Hardware T&L, но и Software T&L, поэтому на некоторых акселераторах идет без потерь в качестве (Matrox G400, NVIDIA Riva TNT2). Однако, на ряде видеокарт отсутствует прорисовка текстур, и есть иные артефакты (текстуры там используются весьма большие). Как же выглядит это демо на S3 Savage2000?

Часть текстур просто отсутствует (черные объекты), а также есть проблемы с освещением (оно здесь постоянное, и освещенность объектов не зависит от местоположения камеры).

Артефакты, хотя и менее заметные, есть и в OpenGL, в частности в Quake3:

Однако, должен заметить, что больших искажений, какие были на S3 Savage4, тут не наблюдается.

Самое большое количество вопросов возникло при работе со сжатыми текстурами, то есть при использовании S3TC. На днях вышла демоверсия игры Soldier of Fortune (Солдат удачи), которая поддерживает эту технологию. И вот что при этом получается:

Как можно видеть, ошибка в реализации Z-буфера или в работе clipping позволила нам увидеть то, что находится за стеной :). Отмечу, что таких ошибок при работе с S3TC возникало много. Кстати, в Direct3D эту технологию вообще не удалось увидеть: единственная игра Expendable, поддерживающая S3TC, не показала никакого эффекта при включении S3TC.

Буквально на днях S3/Diamond Multimedia выпустила семь уровней для Quake3, использующих технологию S3TC и имеющих сжатые текстуры. К сожалению, Quake3 распаковывает их в оперативной памяти, поэтому для полноценной работы при детализации текстур по умолчанию почти всех этих уровней необходимо 256 Мбайт системной памяти, а для одного уровня и вовсе 384 Мбайта! А уменьшать детализацию мне крайне не хотелось — так вся прелесть графики могла быть утеряной.

Уровни по замыслу очень даже симпатичные, но вот реализация их на S3 Savage2000 подчас приводит к следующим артефактам:

   

Да, вот эта "пляска" текстур или полигонов подчас очень раздражает, хоть она и исчезает при уменьшении детализации текстур. Приведу еще пару скриншотов, на этот раз без артефактов:

   

К сожалению, игры, которая целиком бы поддерживала S3TC и могла дать подобные красивые сцены, пока еще нет. Мне эта ситуация напоминает EMBM, реализованный в Matrox G400. Хоть Matrox и рассылает регулярно анонсы об использовании технологии EMBM в каких-то играх, но при ближайшем рассмотрении выясняется, что эта поддержка очень урезана и рельефными оказываются лишь избранные предметы в избранных сценах. Обидно, но целые технологии таким образом гниют, и не могут найти себе воплощения.

Теперь посмотрим, как обстоит дело у Viper II с проигрыванием MPEG2 видео. В поставку вместе с платой входит DVD-плеер от Zoran, однако он работает с Savage2000 просто отвратительно. Довольно хорошие результаты показала карта с плеером Cinemaster99, движок версии 2.0.36, когда практически при полном отсутствии артефактов загрузка процессора не превышала 40%. Однако, самым лучшим плеером, наиболее полно использующим возможности S3 Savage2000 по MPEG2-декодированию, оказался WinDVD2000. В этой программе при отличном качестве декодирования загрузка процессора не поднимается выше отметки 30%!

Ну что ж, подведем итоги. Видеокарта Diamond Viper II Z200 показала себя современным акселератором, имеющим адекватную нынешнему времени производительность. Чипсет S3 Savage2000 действительно стал настоящим рывком вперед относительно S3 Savage4, но и только. Догнать по производительности NVIDIA GeForce 256 ему не удалось, хотя подчас Savage2000 показывает достаточно близкие результаты.

Тем не менее, карта Diamond Viper II Z200 стоит несколько меньше, чем видеокарты на NVIDIA GeForce 256 с SDR-памятью. Сравните - примерно $180 за Viper II и примерно $210 за карту на базе GeForce 256 с SDR-памятью. Так что Viper II вполне имеет право на жизнь. Но! Нарекания на качество изображения в 3D, на сырость драйверов, на неработоспособность геометрического сопроцессора в Direct3D сильно снижают шансы Savage2000 на успех. Даже превосходная скорость в игре Unreal Tournament не дает этой плате быть серьезным соперником карт от конкурентов. Думается мне, что только при довольно значительной разнице в цене между платами на NVIDIA GeForce 256 и S3 Savage2000, последние смогут занять значительное место на рынке. Владельцам карт на базе Savage2000 придется уповать на просветление умов у программистов из S3, которые, дай Бог, напишут, в конце концов, полноценные драйверы, поддерживающие все заявленные API, а также в полной мере использующие блок S3TL.

Любителям игр от фирмы Epic Games (Unreal, Unreal Tournament и др.) мы смело можем рекомендовать эту карту, поскольку ни одна, ни другая не дает в ней такого качества и такой скорости. Остальным же мы можем посоветовать немного подождать, понаблюдать за динамикой изменения цен, скоростью появления и отладки новых драйверов и неспешно решить для себя вопрос о том, а стоит ли покупать карты на базе Savage2000.

Видеокарта Diamond Viper II предоставлена компанией Niagara




7 февраля 2000 Г.

Обзор видеокарты Diamond Viper II

Обзор видеокарты Diamond Viper II

Вот и наступил 2000-й год, когда особенности почти всех видеокарт поколения 1999-го года мы уже рассмотрели и ждем появления новых видеокарт "весеннего призыва". Правда, еще остался не охваченным нашими тестами чип S3 Savage2000. Примечательно то, что компания S3 анонсировала свой чип Savage2000 на один день раньше, чем NVIDIA объявила свой GPU GeForce 256, однако на рынке карты Viper II на базе Savage2000 появились совсем недавно.

Сегодня мы постараемся провести тщательный анализ чипа S3 Savage2000 на фоне успешно продающихся по всему миру карт на базе GPU NVIDIA GeForce 256. Посмотрим, в состоянии ли карты Diamond Viper II Z200 успешно конкурировать с ними, с учетом их цены.

Начнем мы с рассмотрения образца, полученного нами для испытаний. Эта видеокарта имеет интерфейс AGP 2x/4x, 32 мегабайта 6 ns SDRAM локальной видеопамяти, размещенной в 4-х 64-мегабитных модулях (по 2 микросхемы на каждой стороне печатной платы).

Видно, что Diamond Multimedia не отступилась от своих традиций экономии на всем. Я имею в виду применение пассивного охлаждения с помощью радиатора без вентилятора, который приклеен к чипу. Мне непонятна позиция компании, которая не может потратить лишних $1-2 на установку активного кулера, тем более, что видеокарта весьма сильно греется, даже при работе на номинальных (125/143 МГц) частотах (напомню, что первое число — частота работы графического ядра, второе — частота работы видеопамяти).

Замечу, что, фактически, только два производителя видеокарт: Diamond Multimedia и Creative Labs игнорируют проблему перегрева и на многих своих картах устанавливают только радиаторы без вентиляторов. А ведь это две крупнейшие компании, бренды среди производителей видеокарт. Печально видеть такое пренебрежение нуждами пользователей.

Но вернемся к рассмотрению видеокарты Diamond Viper II Z200. На плате установлен набор логики, обслуживающий TV-out, к которому подключены два внешних разъема: S-Video и Composite (RCA или "тюльпан"). На видеокарте имеются джампера, с помощью которых можно управлять режимом работы шины AGP (2x или 4x). В комплекте с видеокартой поставляется CD с драйверами, два CD с играми, руководство по установке и пакетик с перемычками.

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

Общие характеристики:

  • Частота ядра: до 150 МГц
  • Частота работы шины памяти: до 166 МГц
  • Скорость обработки треугольников: предположительно 10-15 млн. треугольников в секунду
  • Разрядность шины памяти: 128 бит
  • Ширина полосы пропускания шины памяти: до 2,6 Гб/сек
  • Поддерживаемые типы памяти: модули 1Mx16, 2Mx32 или 4Mx16 типа SDRAM; модули 512Kx32 или 1Mx32 типа SGRAM (с поддержкой режима блочной записи)
  • Объем локальной видеопамяти: до 64 Мб
  • RAMDAC: интегрированный, частота 350 МГц с поддержкой коррекции гаммы
  • Поддерживаемые разрешения: вплоть до 2048x1536
  • Интерфейс внешней шины: полная поддержка AGP x2/x4 (включая SBA и DME) и PCI 2.2 (включая Bus mastering)
  • Поддерживаются спецификации: последовательная шина I2C и DDC; ACPI D0-D3 режимы и управление питанием PCI; 100% соответствие PC'99
  • Технологический процесс: 0,18 мкм
  • Число транзисторов: 12 млн.
  • Размер чипа: 31x31mm
  • Тип корпуса чипа: PBGA, 409 контактов

2D часть:

  • 128 разрядное 2D-ядро
  • Поддержка акселерации BitBLT, закраски прямоугольников и полигонов, прорисовка линий, аппаратный курсор и масштабирование по горизонтали/вертикали
  • Работа с ускорением графике при 8-, 16- и 32-битном представлении глубины цвета

3D часть:

  • Интегрированный геометрический процессор преобразования координат и установки освещения (S3TL)
  • Аппаратная установка 8 источников света по спецификации OpenGL
  • Геометрический движок, выполняющий оперции над вещественными числами и занимающийся расположением полигонов в пространстве
  • Возможность равномерного распределения нагрузки по расчету геометрии между CPU и S3TL
  • Полная поддержка OpenGL и DX7
  • Непрервыная скорость при рендеринге 2 пикселей с одновременным наложением двух текстур на пиксель за такт
  • Однопроходный движок наложения четырех текстур (Single-pass Quad-Texture engine)
  • Программируемые режимы смешивания нескольких текстур
  • Аппаратная поддержка рельефного текстурирования (поддерживается только режим выдавливания)
  • Реализованная на аппаратном уровне поддержка технологии S3TC
  • Рендеринг при 32-битном представлении глубины цвета
  • Сглаживание полной сцены (Full scene anti-aliasing)
  • Однопроходная трилинейная фильтрация
  • Анизотропная фильтрация
  • Поддерживается 8-битный стенсель буфер
  • Поддерживается 16/24/32-битная Z- и W-буферизация
  • Поддерживаются отраженный свет и размытые тени
  • Улучшенные режимы прозрачности и полупрозрачность (Enhanced alpha blending modes)
  • Наложение тумана по вершинам полигонов и попиксельно в определенных областях сцены
  • Поддержка текстур размером 2048х2048 текселей

Поддержка плоскопанельных мониторов:

  • Соответствие спецификации DVI
  • 12/24-битный цифровой интерфейс для подключения к кодерам плоскопанельных мониторов
  • Авторастяжение и центрирование для VGA текстовых и графических режимов
  • Поддерживаются разрешения вплоть до 1280x1024

Поддержка DVD/DTV:

  • Масштабирование изображения без потерь качества
  • Преобразование данных из планарного формата в упакованный формат
  • Движок компенсации движения третьего поколения
  • Реализация на аппаратном уровне подсветки и режимов полупрозрачности для наложения субтитров
  • Поддержка мультиоконного видео для использования в видеоконференциях
  • Управление яркостью, насыщенностью, контрастностью цвета, тональностью цвета и цветовой гаммой с возможностью программирования
  • Обработка потоков (Streams Processor) с отображением в разрешениях вплоть до 1600x1200
  • Поддерживается VIP 2.0 видеопорта, обеспечивает поддержку всех разрешений HDTV
  • Цифровой порт для подключения NTSC/PAL TV кодировщиков, обеспечивающий подключение без потерь данных
  • Режим деинтерлейсинга при отображении на мониторе интерлейсного изображения
  • Поддержка интерфейса Microsoft DirectDraw7 HVA
  • Множество конфигураций HDTV, поддерживаемые через DMA и захват управления шиной

К сожалению, как оно обычно и бывает, реализовано на практике далеко не все из того, что можно увидеть в спецификации. Ну, например, частота работы чипсета — всего 125 МГц, а не значение, близкое к 150 МГц, да и память работает на 143 МГц. Такая низкая частота памяти мне совершенно непонятна — я уже не раз писал о том, что, при использовании низкочастотной SDR SDRAM, она оказывается одним из главных факторов, ограничивающих быстродействие 3D-акселератора.

Однако, все же самой интересной особенностью чипа S3 Savage2000 является наличие в нем геометрического сопроцессора. Поэтому, наравне с NVIDIA GeForce 256, S3 Savage2000 можно называть GPU (Graphics Processor Unit). Тем более, что S3 Savage2000 был анонсирован на день раньше, чем NVIDIA GeForce 256, что дает право S3 Savage2000 считать пионером в этой области. Замечу еще раз, что, к сожалению, этого пионера нам приходится рассматривать в последнюю очередь, а впереди уже видны новые GPU...

При анонсировании S3 Savage2000 было заявлено, что будет выпущено два варианта этого чипа (по подобию NVIDIA Riva TNT2 и Riva TNT2 Ultra):

 Savage2000Savage2000+
Интерфейс шины памяти 128 бит 128 бит
Ширина полосы пропускания памяти До 2.6 Гб/сек До 3.2 Гб/сек
Рабочая частота шины памяти До 166 МГц До 200 МГц
Рабочая частота графического ядра До 150 МГц До 200 МГц
Скорость заполнения сцены (Fillrate) До 300 млн. пикселей в сек До 400 млн. пикселей в сек
Скорость текстурирования До 600 млн. текселей в сек До 800 млн. текселей в сек

Видеокарты на S3 Savage2000+ уже анонсированы и ожидаются на рынке уже в 1-м квартале этого года.

При рассмотрении чипа NVIDIA GeForce 256 мы уже писали, для чего, собственно, нужен геометрический сопроцессор. Напомним вкратце. Процесс создания трехмерной сцены состоит из нескольких этапов, большая часть которых обычно возлагается на центральный процессор. Например, перерасчет координат вершин треугольников и расчет освещения. При создании каждого трехмерного объекта он разбивается на треугольники (полигоны), и манипулирование производится с вершинами этих треугольников, которые, как и любая точка в пространстве, имеют свои координаты. Но системы координат в 3D- и в 2D-пространстве совершенно разные. Перевод координат каждой вершины в двумерную систему, наряду с процессом удаления всех объектов, которые будут невидимы в отображаемой сцене (clipping), происходит с учетом угла зрения пользователя (коррекция перспективы). Этими операциями обычно занимается центральный процессор системы (CPU).

Если вы работали с пакетами 3D-моделирования, то знаете, что важным этапом подготовки сцены является расстановка источников света и расчет освещения сцены этими источниками, а также реализация световых эффектов: бликов, световых кругов и т. п. Соответственно, оттенки каждого объекта, каждого полигона должны быть скорректированы в ходе расчета освещенности. Обычно в компьютерных играх этим занимается CPU системы. Отмечу, что есть способ имитации расчета освещения в трехмерной сцене при помощи карт освещенности, который сегодня является наиболее часто применяемым. Обычно в режиме мультитекстурирования один текстурный модуль накладывает на пиксель текстуру, а другой — специальную заранее подготовленную карту, которая изменяет цвет текстуры, в результате чего на объекте получается световое пятно округлой формы. Этот способ расчета освещенности довольно прост и не требует больших затрат ресурсов CPU. Однако, такой метод довольно груб и не может обеспечить создание реалистичного отображения света, исходящего от неоднородного источника освещения, поскольку световые круги, получаемые таким образом, статичны и не меняются в зависимости от изменения состояния источника света. Например, если источник света — факел, то блики, отбрасываемые им на стены, должны постоянно меняться. В программу нельзя заложить такое огромное число карт освещенности, чтобы при каждом изменении языка пламени использовалась новая карта. Поэтому, в подобных случаях наиболее верное и реалистичное освещение может обеспечить только вершинный, или вертексный (vertex) расчет освещенности, который требует затрат вычислительных ресурсов.

Если эти два трудоемких процесса — трансформацию координат и расчет освещения — перенести с центрального процессора системы на специализированный геометрический процессор, то освободившиеся ресурсы CPU могут быть использованы на другие, не менее важные задачи, например, расчет физики движения объектов или AI. Подобный специализированный геометрический сопроцессор и входит как раз в состав чипсетов S3 Savage2000 и NVIDIA GeForce 256. У Savage2000 он получил название S3TL. Сам же комплекс операций по преобразованию координат и расчету освещения называется T&L (Transformation and Lighting). Если он упоминается с приставкой Hardware T&L, то это значит, что для выполнения этих операций используется геометрический сопроцессор, расположенный на борту графического акселератора, а если с приставкой Software T&L, — то это традиционный способ подобных вычислений с использованием ресурсов центрального процессора системы и движка игры или стандартного API, например, Direct3D 7.0. Напомню, что Hardware T&L у существующих GPU поддерживает расчет одновременно до восьми источников света в сцене.

Использование GPU и вытекающее из этого освобождение ресурсов CPU может позволить также и производить разбиение объектов на большее число треугольников (тесселяция). Отсюда самый главный вывод: игре выгодно использовать Hardware T&L. Конечно, более приемлемым методом в существующих условиях, когда на рынке представлены как видеокарты с GPU, так и без него, было бы создавать игры с динамической тесселяцией. То есть, при распознавании Hardware T&L объекты разбивались бы на большее число полигонов, применялось бы вершинное освещение, противники становились бы более умными и т.д. Но о выходе таких игр пока приходится только мечтать, а ведь именно на них были бы хорошо видны все преимущества использования GPU. Выше приведен кадр из MadOnion 3D Mark 2000.

Однако, наличие геометрического сопроцессора — это не единственное отличие S3 Savage2000 от других присутствующих на рынке графических процессоров. Особая двухконвейерная архитектура 3D-рендеринга у этого чипсета — не менее важная деталь, учитывая пока незначительное число игр, поддерживающих Hardware T&L. Реализация этой технологии в S3 Savage2000 называется Single-Pass Quad-Texture engine. Дело в том, что этот чипсет содержит 4 текстурных модуля и способен за такт выдавать 2 пикселя, на каждый из которых может одновременно накладываться по две текстуры (либо, например, текстура+карта освещенности, либо текстура+альфа-канал для получения полупрозрачных объектов). Четырехконвейерный чип NVIDIA GeForce 256, способный в обычном режиме обрабатывать не 2, как Savage2000, а 4 пикселя за такт, в режиме мультитекстурирования формирует также два пикселя с наложением двух текстур на него. Кроме того, Savage2000 умеет накладывать и 4 текстуры на пиксель за такт, то есть осуществлять так называемое квадротекстурирование. Однако, этот способ пока не поддерживается программным обеспечением, поэтому развивать эту тему нет смысла. Тем не менее, заметим, что появление на рынке все большего числа игр с поддержкой мультитекстурирования может положительно сказаться на популярности чипа, оптимизированного под него, коим и является S3 Savage2000.

Из других особенностей S3 Savage2000, заслуживающих внимания, можно назвать поддержку 32-битного Z-буфера и W-буфера (это массив величин, обратных Z-координатам, которые помогают уточнить местоположение объекта или его вершин при очень большой удаленности от пользователя). К сожалению, S3 Savage2000 не поддерживает прогрессивные методы наложения рельефа, такие, как Environmental Mapped Bump Mapping (EMBM) или Dot Produce Bump Mapping (DPBM), а только имеющийся в DirectX 6.0 и более поздних Embossing Bump Mapping, который не используется практически никакими производителями программного обеспечения.

Естественно, что чип Savage2000 принял от Savage4 эстафету по поддержке фирменной технологии компрессии текстур S3TC, которая лицензирована Microsoft и включена в состав Direct3D под именем DXTC. Несмотря на то, что ATI заявила о полной программной поддержке S3TC в своем чипе ATI RAGE 128 PRO, S3TC под OpenGL пока работает только у продуктов S3.

Памятуя о проблемах с драйверами для Savage4, я с нескрываемой тревогой предлагаю вам ознакомиться с анализом производительности и качества 3D-графики карты Viper II на базе чипа Savage2000.

Конфигурация тестовых систем:

Система на базе Intel Pentium III

  • процессор Intel Pentium III 600;
  • системная плата ASUS P3B-F (i440BX);
  • оперативная память 128/256 MB PC100;
  • жесткий диск Quantum FB CR 6.4 GB.

Система на базе AMD Athlon

  • процессор AMD Athlon 600;
  • системная плата FIC SD11 (AMD 750);
  • оперативная память 128 MB PC100;
  • жесткий диск Quantum FB CR 6.4 GB.

На обоих системах была установлена операционная система Windows 98, использовались мониторы ViewSonic P810 (21") и Nokia 447Xav (17").

Тестирование проводилось на драйверах версии 9.01.21, для тестирования на Unreal Tournament 4.02 использовалась версия драйвера S3 Metal 2.003. Vsync отключен. Драйвер S3 Metal поставляется отдельно и оптимизирован только под Unreal Tournament.

Процесс установки драйверов не вызвал никаких затруднений, фирменные утилиты Diamond InControl Tools не использовались, поскольку не несут в себе каких-либо настроек работы видеокарты. В результате, мы получили следующие возможности по управлению 3D:

На данной закладке можно настроить работу карты в Direct3D. Отмечу, что в традициях фирмы Diamond Multimedia структура драйверов выполнена в виде профилей для конкретных приложений. Поэтому после установки драйверов и до запуска первого приложения в настройках ничего изменить нельзя. Комичная ситуация сложилась, когда программа отнесла игру Quake3 к Direct3D-приложениям, а меню OpenGL на закладке Diamond 3D так и осталось недоступным.

Texture Memory Control — позволяет выбрать местоположение наборов текстур, которые будут использоваться:

  • в ОЗУ (через AGP) и локальной видеопамяти (по умолчанию);
  • только в локальной видеопамяти;
  • только в ОЗУ (через AGP).

Auto Z-buffer Clear — автоматическая очистка Z-буфера (практического применения не имеет).

Auto MIP-mapping — автоматическое разделение сцены на MIP-уровни (все игры умеют это делать сами, поэтому также не используется).

Fixes Top Texture Line — включает правку верхних линий текстур при их наложении, практического применения не имеет.

Затем идет раздел Global:

Здесь, как можно понять, уже применительно ко всем приложениям, можно регулировать включение и выключение Vsync и W-буфера.

Закладка, посвященная коррекции цвета, представлена ниже:

Учитывая наличие на видеокарте TV-out, довольно важной представляется и следующая закладка:

Хотя TV-out ничем особенным от остальных видеокарт не отличается (800х600 при 60 Гц), имеется возможность настройки яркости, контрастности изображения и выбора типа сигнала.

Теперь — о производительности. Начнем с 2D. Чипсет S3 Savage2000 имеет интегрированный RAMDAC с частотой 350 МГц, что дает все основания ожидать высокого качества изображения. И действительно, только в разрешении 1600х1200 четкость картинки у S3 Savage2000 чуть-чуть уступает NVIDIA GeForce 256, а в других разрешениях находится на высоком уровне. А вот со скоростью в 2D не все так хорошо, как хотелось бы:

  Business Graphics Winmark High-End Graphics Winmark
ASUS AGP-V6600 (GeForce256 SDR) 194 659
Leadtek WinFast GeForce256 DDR 194 661
ATI RAGE FURY MAXX 183 610
Diamond Viper II (Savage2000) 160 452

Как видно, S3 Savage2000 сильно отстал от конкурентов.

Производительность видеокарты в 3D мы будем оценивать на основе следующих тестов:

  • id Software Quake3 Arena v.1.3 (используется demo002) — игровой тест, дающий представление о работе карты в OpenGL
  • Rage Expendable (используется timedemo) — игровой тест, дающий представление о работе карты в Direct3D при включенном мультитекстурировании
  • Accolade/Infogrames Test Drive 6 — игровой тест, дающий представление о работе карты в Direct3D при использовании оптимизации под SSE или 3DNow!, а также умеющий использовать Hardware T&L
  • Epic Games/GT Unreal Tournament v.4.02 (используются мною записанные демо: testd3d.dem и testmetal.dem) — игровой тест, дающий представление о работе карты в Metal при использовании технологии S3TC и при работе с большими текстурами
  • NVIDIA TreeMark — синтетический тест под OpenGL, полностью ориентированный на использование Hardware T&L

Для сравнительной оценки производительности Diamond Viper II Z200 мы будем приводить результаты видеокарт на базе NVIDIA GeForce 256 с SDR и DDR-памятью (ASUS AGP-V6600 и Leadtek WinFast GeForce 256 DDR), а также ATI RAGE FURY MAXX (два чипа ATI RAGE 128 PRO).

Отмечу, что на момент тестирования Diamond Viper II Z200 в драйверах был отключен S3TL, то есть блок аппаратного расчета T&L. Однако, в версии драйверов 9.01.21 есть возможность включить блок S3TL в OpenGL путем внесения изменений в Registry:


[HKEY_CURRENT_CONFIG\Display\Settings]

"ICDHWTL"="ON"

В тестах на Quake3 и Expendable будут приведены данные и по производительности разогнанной видеокарты Diamond Viper II Z200 (до 150/166 МГц).

Видно, что Diamond Viper II Z200 отстала от всех соперников почти везде. Только в низких разрешениях она опережает ATI RAGE FURY MAXX, а при разгоне почти догоняет ASUS AGP-V6600.

Здесь позиции Diamond Viper II Z200 укрепляются, и карта практически сравнялась по скорости с ASUS AGР-V6600. Вероятно, сказывается оптимизация драйверов под 3DNow!.

Положение Diamond Viper II Z200 тут уже сильно улучшается, производительность карты выше ASUS AGP-V6600. Как и в случае с ATI RAGE FURY MAXX, работа с 32-битным цветом у S3 Savage2000 явно на высоте.

Преимущество Diamond Viper II Z200 над видеокартами на базе NVIDIA GeForce 256 с SDR-памятью просто очевидно!

Никаких отличий от аналогичного теста Normal нет, Diamond Viper II Z200 практически на последнем месте.

Наблюдается равенство производительности Diamond Viper II Z200 и ASUS AGP-V6600 на GeForce256.

Видеокарта на базе S3 Savage2000 отстает от всех остальных.

Diamond Viper II Z200 опередила не только ASUS AGP-V6600, но и даже обошла Leadtek WinFast GeForce 256 DDR на низких разрешениях!

Итак, мы видим, что драйверы у Diamond Viper II Z200 хорошо оптимизированы под 3DNow!, что и дало этой карте в Quake3 на процессоре AMD Athlon возможность выглядеть на уровне карт на базе NVIDIA GeForce 256 с SDR-памятью. Также хочу отметить и тот факт, что на Athlon-системе драйверы Diamond Viper II Z200 включают режим AGP 2x, в то время как видеокарты на базе чипов от NVIDIA используют только AGP 1x.

Что касается системы на процессоре Intel Pentium III, то видеокарта Diamond Viper II Z200 показала себя на высоте только в 32-битном цвете. Но даже несмотря на то, что S3 Savage2000 имеет более высокую тактовую частоту (125 МГц против 120 МГц у NVIDIA GeForce 256), платы на базе NVIDIA GeForce 256 остались вне досягаемости.

Ну что можно сказать? Развести руками, и все. Diamond Viper II Z200 отстала по всем статьям.

Результат аналогичен предыдущему.

К сожалению, картина для Diamond Viper II Z200все такая же печальная.

Итак, в Expendable Diamond Viper II Z200 с треском провалилась. Отставание от конкурентов настолько сильное, что ничего положительного о работе S3 Savage2000 под Direct3D в режиме мультитекстурирования сказать нельзя вообще.

К тому же, если войти в Expendable при отключенном Vsync, то наблюдается просто кошмарный лаг, то есть отставание изменений в сцене от действий игрока. Играть можно только при включенном Vsync, а это еще снижает среднюю производительность видеокарты. Мне также остался непонятным категорический отказ Viper II работать в разрешении 1600х1200х32bpp, когда выдавалась ошибка о нехватке памяти, несмотря на то, что режим AGP-текстурирования был включен.

На основе этого теста мы провели исследование зависимости производительности видеокарты от производительности центрального процессора системы, т.н. масштабируемость, а заодно покажем и скорость платы на менее скоростных процессорах:


Можно заметить, что небольшая оптимизация драйверов у S3 Savage2000 под SSE имеется, поскольку игра Expendable использует возможности технологий SSE и 3DNow!. При небольшой разнице в частотах (50 МГц) прирост на Pentium III 600 по сравнению с Celeron 550 довольно значителен. Невысокие значения FPS на процессоре 366 МГц подтверждают наш довод о том, что покупать современные акселераторы стоит только владельцам современных же процессоров.




Я даже не стал делать комментарии после каждого теста, так как их просто нет! Полнейшее поражение Diamond Viper II Z200! Единственное исключение составляет тест на Athlon в 32-битном цвете, где Viper II удалось приблизиться к соперникам хоть на немного. Конечно же, в разрешении 800х600 скорость вроде бы приличная, однако зачем покупать довольно дорогой акселератор для использования в 800х600х16bpp? Прошу заметить также, что при тестировании Viper II использовался Software T&L режим, т.к. Test Drive 6 работает в DirectX, в котором аппаратный T&L драйверы Savage2000 пока не используют.

Перейдем к Unreal Tournament. Отмечу, что тестирование Diamond Viper II Z200 проводилось под API S3 MeTaL (aka MTL), оптимизированный под чипсет S3 Savage2000. При этом был установлен дополнительный пакет больших текстур, идущий на отдельном CD с игрой Unreal Tournament. Тестирование остальных карт проводилось в Direct3D. К сожалению, игра не располагает встроенным бенчмарком для измерения скорости работы в разных API, а демо, записанные во время прохождения того или иного уровня в игре, работают только в рамках одного API. Поэтому мне пришлось пройти уровень Barricade (где используется много больших текстур в API S3 Metal) под Direct3D и записать демо под названием testd3d.dem, а затем, уже в S3 Metal пройти еще раз этот же уровень и записать демо под названием testmetal.dem. Я понимаю, что полной корректности сравнения при этом не будет, однако это был единственный выход для сравнения работы Diamond Viper II Z200 в выгодном для нее режиме (да и самом красивом, должен сказать) с остальными видеокартами, для которых приоритетным в этой игре является Direct3D.

Ну вот и настал тот торжественный момент, когда можно сказать, что Diamond Viper II Z200 положил всех на лопатки. Скорость действительно впечатляет. Только лишь в разрешении 1600х1200 видеокарта немного отстала от конкурентов. Однако повторю, что это при использовании больших текстур, которые у остальных видеокарт не использовались!

   



Успех S3 Savage2000 очевиден. Мне сразу подумалось, что неплохо бы делать подарочные наборы: Diamond Viper II Z200 + Unreal Tournament в одной упаковке :).

Да, как можем видеть, поддержку своего собственного API Metal фирма S3 сделала хорошо, потенциал карты раскрывается вовсю. Тем более, что, по данным S3, последняя версия этого драйвера позволяет обрабатывать два пикселя за такт. Это дало немалую прибавку к скорости (интересно, получается, что предыдущий драйвер запускал только один конвейер). Однако и тут есть ложка дегтя: при работе в 1600х1200х32bpp требуется 256 мегабайт оперативной памяти, чтобы все текстуры могли загрузиться. Хотя это не столь существенный момент, поскольку вряд ли кто будет играть в таком разрешении, это должно послужить сигналом владельцам компьютеров с 64 мегабайтами ОЗУ — я не уверен, что можно будет играть на высоких разрешениях с использованием больших текстур при таком объеме памяти.

Как уже упоминалось ранее, в новой версии драйверов (9.01.21) для Savage2000 стало возможным включить в работу S3TL, т.е. задействовать реализацию Hardware T&L. Поскольку игрового теста, использующего Hardware T&L в OpenGL у нас нет, мы воспользовались тестом NVIDIA TreeMark для демонстрации работы геометрического сопроцессора у S3 Savage2000.

Глядя на эту диаграмму, можно убедиться, что геометрический сопроцессор (S3TL) у Savage2000 безусловно работает, хотя и его скорость весьма мала. Он примерно вполовину более слабый, чем у NVIDIA GeForce 256. Весьма характерным является отсутствие роста производительности при уменьшении разрешений, что доказывает слабость сопроцессора. Видно, что скорость видеокарты сдерживается именно им.

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

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

Подведем итог нашим измерениям производительности. Несмотря на то, что в Direct3D работа Diamond Viper II Z200 выглядит печально - отставание от конкурентов весьма велико, S3 хорошо поработала над своим ICD OpenGL, доведя его до более-менее благопристойного вида, что нашло отражение в неплохих скоростных результатах. Ну, а в API S3 Metal все отлично! Видеокарта просто "летает" в такой сложной игре, как Unreal Tournament. Правда, покупать довольно дорогую плату ради одной игры очень глупо, API S3 Metal больше практически нигде не используется. Конечно, движок от Unreal также поддерживает этот API, поэтому в играх на базе этого движка S3 Savage2000 покажет себя весьма неплохо. Однако ниже я покажу, что так как S3 cоптимизировала свой API только под Unreal Tournament, в том же Unreal появились нарекания на качество графики.

Не так давно вышла демонстрационная программа Dagoth Moor Zoological Gardens, которая уже успела наделать много шума своей красотой и наиболее реалистичной на сегодня графикой. Эта программа использует не только Hardware T&L, но и Software T&L, поэтому на некоторых акселераторах идет без потерь в качестве (Matrox G400, NVIDIA Riva TNT2). Однако, на ряде видеокарт отсутствует прорисовка текстур, и есть иные артефакты (текстуры там используются весьма большие). Как же выглядит это демо на S3 Savage2000?

Часть текстур просто отсутствует (черные объекты), а также есть проблемы с освещением (оно здесь постоянное, и освещенность объектов не зависит от местоположения камеры).

Артефакты, хотя и менее заметные, есть и в OpenGL, в частности в Quake3:

Однако, должен заметить, что больших искажений, какие были на S3 Savage4, тут не наблюдается.

Самое большое количество вопросов возникло при работе со сжатыми текстурами, то есть при использовании S3TC. На днях вышла демоверсия игры Soldier of Fortune (Солдат удачи), которая поддерживает эту технологию. И вот что при этом получается:

Как можно видеть, ошибка в реализации Z-буфера или в работе clipping позволила нам увидеть то, что находится за стеной :). Отмечу, что таких ошибок при работе с S3TC возникало много. Кстати, в Direct3D эту технологию вообще не удалось увидеть: единственная игра Expendable, поддерживающая S3TC, не показала никакого эффекта при включении S3TC.

Буквально на днях S3/Diamond Multimedia выпустила семь уровней для Quake3, использующих технологию S3TC и имеющих сжатые текстуры. К сожалению, Quake3 распаковывает их в оперативной памяти, поэтому для полноценной работы при детализации текстур по умолчанию почти всех этих уровней необходимо 256 Мбайт системной памяти, а для одного уровня и вовсе 384 Мбайта! А уменьшать детализацию мне крайне не хотелось — так вся прелесть графики могла быть утеряной.

Уровни по замыслу очень даже симпатичные, но вот реализация их на S3 Savage2000 подчас приводит к следующим артефактам:

   

Да, вот эта "пляска" текстур или полигонов подчас очень раздражает, хоть она и исчезает при уменьшении детализации текстур. Приведу еще пару скриншотов, на этот раз без артефактов:

   

К сожалению, игры, которая целиком бы поддерживала S3TC и могла дать подобные красивые сцены, пока еще нет. Мне эта ситуация напоминает EMBM, реализованный в Matrox G400. Хоть Matrox и рассылает регулярно анонсы об использовании технологии EMBM в каких-то играх, но при ближайшем рассмотрении выясняется, что эта поддержка очень урезана и рельефными оказываются лишь избранные предметы в избранных сценах. Обидно, но целые технологии таким образом гниют, и не могут найти себе воплощения.

Теперь посмотрим, как обстоит дело у Viper II с проигрыванием MPEG2 видео. В поставку вместе с платой входит DVD-плеер от Zoran, однако он работает с Savage2000 просто отвратительно. Довольно хорошие результаты показала карта с плеером Cinemaster99, движок версии 2.0.36, когда практически при полном отсутствии артефактов загрузка процессора не превышала 40%. Однако, самым лучшим плеером, наиболее полно использующим возможности S3 Savage2000 по MPEG2-декодированию, оказался WinDVD2000. В этой программе при отличном качестве декодирования загрузка процессора не поднимается выше отметки 30%!

Ну что ж, подведем итоги. Видеокарта Diamond Viper II Z200 показала себя современным акселератором, имеющим адекватную нынешнему времени производительность. Чипсет S3 Savage2000 действительно стал настоящим рывком вперед относительно S3 Savage4, но и только. Догнать по производительности NVIDIA GeForce 256 ему не удалось, хотя подчас Savage2000 показывает достаточно близкие результаты.

Тем не менее, карта Diamond Viper II Z200 стоит несколько меньше, чем видеокарты на NVIDIA GeForce 256 с SDR-памятью. Сравните - примерно $180 за Viper II и примерно $210 за карту на базе GeForce 256 с SDR-памятью. Так что Viper II вполне имеет право на жизнь. Но! Нарекания на качество изображения в 3D, на сырость драйверов, на неработоспособность геометрического сопроцессора в Direct3D сильно снижают шансы Savage2000 на успех. Даже превосходная скорость в игре Unreal Tournament не дает этой плате быть серьезным соперником карт от конкурентов. Думается мне, что только при довольно значительной разнице в цене между платами на NVIDIA GeForce 256 и S3 Savage2000, последние смогут занять значительное место на рынке. Владельцам карт на базе Savage2000 придется уповать на просветление умов у программистов из S3, которые, дай Бог, напишут, в конце концов, полноценные драйверы, поддерживающие все заявленные API, а также в полной мере использующие блок S3TL.

Любителям игр от фирмы Epic Games (Unreal, Unreal Tournament и др.) мы смело можем рекомендовать эту карту, поскольку ни одна, ни другая не дает в ней такого качества и такой скорости. Остальным же мы можем посоветовать немного подождать, понаблюдать за динамикой изменения цен, скоростью появления и отладки новых драйверов и неспешно решить для себя вопрос о том, а стоит ли покупать карты на базе Savage2000.

Видеокарта Diamond Viper II предоставлена компанией Niagara