Современные 3D-акселераторы

Олег Татарников

Положение на рынке

Возможные причины и анализ ситуации

Положение на рынке

Для подавляющего большинства применений на компьютере достаточно простенькой двадцатидолларовой видеокарты с 8 Мбайт памяти, но из-за игровых и мультимедийных приложений само понятие «видеокарта» давно стало синонимом «3D-акселератора», и ведущие мировые производители ведут упорную борьбу за каждого «попугая» в таких специализированных тестах, как 3DMark. При этом доходит до того, что и сами графические чипсеты, и драйверы для них специально оптимизируют под существующие синтетические бенчмарки (что зачастую даже ухудшает качество изображения) либо прибегают к откровенно жульническим методам, повышающим производительность в тестах.

Подобная «борьба драйверов» практически в течение всего прошлого года не прекращалась между лидерами этого рынка — компаниями ATi и NVIDIA. Правда, к концу года выяснилось, что с появлением новых версий тестов и, что самое главное, компьютерных игр, оптимизированных под DirectX 9.0 (особенно с поддержкой пиксельных и вершинных шейдеров версии 2.0), ситуация для чипов NVIDIA становится тупиковой. Таким образом, производительность в играх у продуктов NVIDIA начиная с чипсета NV30 стала значительно ниже, чем у аналогичных по классу продуктов компании ATi. Кроме того, новые игры, а в дальнейшем и тестирования выявляли у видеокарт NVIDIA серьезные провалы в качестве отображения сцен, активно использующих пиксельные и вершинные шейдеры. Поэтому уже с середины 2003 года чипсеты NVIDIA серьезно «подмочили» свою репутацию при использовании приложений под DirectX 9.0, что сразу же отразилось на курсе акций этой компании. Столь безоговорочной победы у ATi не было давно.

 

Естественно, компания NVIDIA не сидела сложа руки, ее программисты даже предприняли несколько серьезных шагов, кардинально изменивших новый пакет драйверов (речь идет о так называемом ForceWare, пришедшем на смену традиционному пакету Detonator), который должен снять нарекания по поводу низкой скорости работы шейдеров у всего семейства видеокарт на чипсетах NVIDIA.

Однако к радикальным улучшениям это не привело, и компания NVIDIA, имевшая ранее наибольшую долю на рынке 3D-графики, не только уступила первое место вездесущей корпорации Intel (лидерство которой досталось без особых революций), но и позволила своему основному конкуренту — компании ATi — догнать себя по доле рынка (если в начале года у компании NVIDIA был 31% рынка 3D-акселераторов, а у ATi только 19%, то сегодня соответственно эти показатели приблизительно равны 25 и 22%).

При этом если по объемам продаж компания ATi только догоняет NVIDIA, то по прибыли она ее уже опередила. А судя по динамике текущего года, ATi удастся обогнать NVIDIA и по объемам продаж, если, конечно, последняя не предпримет чего-нибудь экстраординарного.

К тому же если ATi всегда выпускала приличные графические чипсеты, но драйверы к ним неизменно вызывали справедливые нарекания, то сейчас ситуация выровнялась уже и в области программного обеспечения (правда, во многом за счет того, что у NVIDIA дела с ПО пошли хуже). А уж что касается работы с партнерами, то здесь компании ATi вообще нет равных. Недаром корпорация Microsoft выбрала именно ATi в качестве поставщика графики для своей игровой приставки XBox 2. При этом сейчас уже даже не важно, технологические или финансовые аспекты привлекли Microsoft в ATi, — главное, что теперь канадская графическая компания связана тесными отношениями непосредственно с разработчиком DirectX, а значит, лидерство в поддержке приложений, написанных для DirectX, они, как минимум, не утратят.

А уж то, что в число партнеров ATi по итогам 2003 года вошли такие компании, как ASUS или Elitegroup (одни из самых давних и надежных партнеров NVIDIA), говорит само за себя. Конечно, приход этих компаний не привел к свертыванию производства видеокарт на базе чипсетов от NVIDIA, а лишь дополнил линейку платами на базе чипсетов от ATi, но ведь еще не так давно компания Gigabyte за аналогичные действия лишилась партнерства с NVIDIA. Таким образом, получается, что NVIDIA уже настолько ослабела, что не вправе диктовать условия своим партнерам. Теперь и Gigabyte прощен, и, вслед за ASUS и — Elitegroup, другие конкурирующие компании-производители графических ускорителей потянулись к ATi. Такая смена приоритетов вполне естественна  — на рынке графических чипсетов меняется лидер.

В такое положение поставили компанию NVIDIA многочисленные неудачи как в проектировании, так и в производстве графических чипсетов, а скандальные истории с «оптимизацией» драйверов под конкретные тесты и приложения эту ситуацию только усугубили. Теперь калифорнийскую компанию могут спасти лишь существенные технологические достижения. А вот канадская компания ATi, напротив, сделала значительно меньше тактических и стратегических ошибок, нежели NVIDIA, и даже теперь, после того как ее положение серьезно укрепилось, она не спешит совершать опрометчивые шаги и выпускать хотя и революционные, но сырые продукты. Создается впечатление, что на рынке установилось затишье перед очередной бурей и компании заняли выжидательную позицию, заключив своего рода «пакт о ненападении».

Впрочем, согласно всем анонсам, скоро нам предстоит наблюдать новый виток противоборства между ведущими производителями графических ускорителей, и битва между новыми чипсетами от ATi (R420) и NVIDIA (NV40) обещает быть весьма напряженной и интересной. Сейчас в более выигрышной позиции находится именно ATi, и если NVIDIA со своим новым чипсетом не сможет совершить настоящий прорыв, то «крутая» репутация NVIDIA в глазах потребителей будет окончательно подорвана и они перестанут покупать карты NVIDIA из одного только уважения к этому бренду.

В начало В начало

Возможные причины и анализ ситуации

Однако ситуация с производительностью у семейства FX от калифорнийской компании NVIDIA вовсе не столь однозначна, как могло бы показаться на первый взгляд. Во-первых, практически все тесты и сравнения, которые демонстрируют превосходство семейства ATi Radeon, базируются на Direct3D (DirectX 9.0) и определяют скорость работы именно в этой библиотеке от Microsoft, а в OpenGL у плат NVIDIA — традиционное лидерство. Значит, если речь идет не об играх, а о серьезных профессиональных приложениях, то ставить крест на NVIDIA еще рано.

Во-вторых, выпуск компанией NVIDIA нового семейства драйверов ForceWare все-таки существенно изменил расстановку сил как в секторе low- и middle-end, так и среди дорогих плат класса high-end — типа GeForce FX 5950 Ultra или ATi Radeon 9800XT. Это доказывает, что причина отставания кроется не в аппаратной части (или, точнее, далеко не в одной только аппаратной).

Не секрет, что архитектура видеокарт NVIDIA построена на использовании 32-разрядной точности вычислений с плавающей точкой, тогда как продукты ATi выполняют все вычисления с 24-разрядной точностью (что, кстати, является минимально допустимым по требованиям DirectX 9.0). Так что карты канадской компании настроены на максимальную оптимизацию DirectX в его нынешнем воплощении.

При этом утверждать, что видеокарты NVIDIA, построенные на такой универсальной архитектуре, как CineFX, способны выполнять операции с плавающей точкой только с 32-разрядной точностью, было бы неверно, так как архитектура семейства FX задумывалась более гибкой, нежели у конкурентов, и позволяет не только переключаться между ресурсоемкой 32-разрядной точностью и экономичной 16-разрядной, но и включать совсем быструю 12-разрядную точность вычислений для целочисленной арифметики. Таким образом, графические чипсеты NVIDIA потенциально являются более универсальными и мощными — просто они не были рассчитаны на «привязку» к конкретному детищу компании Microsoft DirectX 9.0. Вот потому-то все используемые тестерами синтетические бенчмарки, основанные на Microsoft HLSL (High Level Shader Language), а также игры, специально оптимизированные под DirectX 9.0, либо демонстрируют безусловное лидерство видеокарт ATi, которые работают намного более эффективно в 24-разрядном режиме по сравнению с 32-разрядным у NVIDIA, либо показывают заметное падение качества у NVIDIA, когда она пытается наверстать отставание в скорости и использует переключение режима с 32- на 16-разрядный. Получается, что компания NVIDIA попадает в замкнутый круг и оказывается зажатой в тиски между производительностью и качеством.

Почему же NVIDIA не сделала свои процессоры линейки FX такими, как у ATi, введя фиксированную 24-разрядную точность? Это не только удешевило бы видеокарты от NVIDIA, но и свело бы «соревнование» исключительно к наращиванию тактовых частот графических процессоров и видеопамяти. Возможно, все дело в том, что калифорнийская компания переоценила свое влияние на рынке компьютерной графики и, будучи уверенной в своих силах, разработала собственную архитектуру в расчете на то, что все программисты будут использовать специально разработанный язык шейдеров под названием Cg, который, естественно, лучше подходит для карт NVIDIA и позволяет реализовать их преимущество в полном объеме.

Действительно, когда применялся индивидуальный подход к написанию шейдеров специально под архитектуру плат на GeForce FX (как это делалось для профессиональных приложений) или когда велась усиленная работа с производителями игр для того, чтобы игровые движки оптимизировались под архитектуру видеокарт NVIDIA, то все шло прекрасно. Однако какие бы специальные программы для разработчиков компания NVIDIA ни принимала и какую бы массированную политику работы с производителями игр ни проводила, она физически не в состоянии охватить всех, особенно если разработка приложений быстрее и удобнее выполняется на стандартном компиляторе Microsoft HLSL, а не на NVIDIA Cg.

Более того, когда сама компания пыталась переводить свой графический чип на работу в 16-разрядном режиме, то это оборачивалось неминуемым падением качества картинки, что расценивалось пользователями весьма неоднозначно и послужило причиной неоднократных обвинений компании NVIDIA в мошенничестве (ведь спецификации DirectX 9.0 говорят о том, что точность представления должна быть по меньшей мере 24-разрядной). Таким образом, «стандартный» код DirectX 9.0 видеоплаты на GeForce FX обрабатывали заметно хуже плат ATi Radeon, так как последние в точности соответствовали спецификациям (ни больше ни меньше). При этом даже новый драйвер NVIDIA принципиально не улучшает ситуацию, а лишь сокращает данный разрыв.

Однако если принять во внимание, что последняя версия Microsoft High Level Shader Language дает программистам возможность выбора точности представления при написании кода, то использовать язык Cg компании NVIDIA уже и вовсе не обязательно. И, быть может, в недалеком будущем возможности универсальной архитектуры, подобной GeForce FX, будут востребованы. Действительно — зачем использовать 32-разрядную или даже 24-разрядную точность (как это делает ATi) там, где можно ограничиться, к примеру, 16- или даже 12-разрядным представлением?

Но выбор представления в данном случае ложится на разработчика приложений, который должен учитывать специфику своей задачи. И от программистов здесь требуется намного больше усилий по разработке, написанию и оптимизации кода. При этом практика показала, что оптимизация кода под видеокарты NVIDIA — дело очень хлопотное даже для самой компании-разработчика, а что уж говорить о сторонних производителях!

А ведь покупателю в конечном счете безразлично, каким образом достигается производительность у того или иного приложения на соответствующей видеокарте. Ему подавай новую игру с качественным изображением, и побыстрее! А будут ли эти скорость и качество достигнуты за счет оптимизации или повышения аппаратной производительности графического процессора, ему и дела нет. Поэтому, что победит в итоге: универсальность или специализация — предугадать трудно.

В серьезных же приложениях, как показывает практика, ситуация для NVIDIA куда более благоприятна, особенно с учетом выхода нового семейства драйверов ForceWare, которые, кстати, работают как универсальный компилятор кода DirectX 9.0, интерпретируя его для GeForce FX (перестраивают порядок и структуру команд в реальном времени для того, чтобы графический процессор получал оптимизированный код, выполняющийся быстрее, чем стандартные команды DirectX), а не делают какой-либо оптимизации под конкретное приложение (в чем неоднократно незаслуженно обвиняли компанию NVIDIA), что подтверждают не только игры, но и синтетические тесты.

Итак, сегодня на рынке 3D-акселераторов установился некий шаткий паритет. Любители игр лучше отзываются о продукции от ATi (и именно поэтому ее дела идут успешнее), а профессионалы продолжают придерживаться продукции от NVIDIA (поскольку для них важнее оптимизация под конкретное приложение и поддержка OpenGL, а не DirectX).

Но реально ничего принципиального не происходит: новые изделия и от той, и от другой компании выглядят как немного разогнанные образцы все той же архитектуры, то есть флагманы от обеих фирм — платы Radeon 9800XT и GeForce FX 5950 Ultra  — по производительности и ценам радикально друг от друга не отличаются и обе, в свою очередь, не намного отличаются по производительности от предшественников  — Radeon 9800 Pro и GeForce FX 5900 Ultra (что бы там ни показывали всевозможные тестирования).

КомпьютерПресс 3'2004

Наш канал на Youtube

1999 1 2 3 4 5 6 7 8 9 10 11 12
2000 1 2 3 4 5 6 7 8 9 10 11 12
2001 1 2 3 4 5 6 7 8 9 10 11 12
2002 1 2 3 4 5 6 7 8 9 10 11 12
2003 1 2 3 4 5 6 7 8 9 10 11 12
2004 1 2 3 4 5 6 7 8 9 10 11 12
2005 1 2 3 4 5 6 7 8 9 10 11 12
2006 1 2 3 4 5 6 7 8 9 10 11 12
2007 1 2 3 4 5 6 7 8 9 10 11 12
2008 1 2 3 4 5 6 7 8 9 10 11 12
2009 1 2 3 4 5 6 7 8 9 10 11 12
2010 1 2 3 4 5 6 7 8 9 10 11 12
2011 1 2 3 4 5 6 7 8 9 10 11 12
2012 1 2 3 4 5 6 7 8 9 10 11 12
2013 1 2 3 4 5 6 7 8 9 10 11 12
Популярные статьи
КомпьютерПресс использует