Журнал «Компьютерра» № 6 от 14 февраля 2006 года
Шрифт:
Впрочем возможно, что только в нашей стране серьезные взрослые люди готовы копить по три месяца на заветную вторую «ультру» в пару к первой видеокарте, а в более экономически развитых странах Запада никаких проблем с покупкою семисотдолларовых игрушек «просто чтобы покрасивее было» не возникает[О чем косвенно говорит тот факт, что основную прибыль ATI и nVidia получают именно с дорогих решений]. Однако лично мне хочется надеяться, что это все же не так, потому что в этом случае останется только признать, что Дэвид Вон со товарищи прав, и будущее игровой индустрии на ближайшие несколько лет следует нарисовать в жутко скучных тонах «тупых голливудских боевиков», не несущих в себе ни идей, ни режиссуры, и запоминающихся разве что спецэффектами.
Мультиплейерные игры по Интернету не в счет, их бум еще впереди (хотя ради Battlefield 2 уже стоит задуматься о покупке двухсотдолларовой видеокарты), но тупиковость даже этого направления очевидна. В конце концов, в реальной жизни не все могут быть одновременно генералами и суперменами-спецназовцами, – должен кто-то и боеприпасы подносить, и в окопах сидеть. Понятно, что основные потребители игровой продукции – подростки или люди, желающие немного
Впрочем, на вкус и цвет товарищей нет. Будем исходить из того, что вы обожаете римейки вроде Splinter Cell: Chaos Theory, жить без анизотропии и антиалиасинга не можете и располагаете лишними пятью-двадцатью сотнями долларов. Или хотя бы надеетесь, что когда деньги появятся, вам еще не расхочется покупать подобные процессоры и видеокарты.
Первой в минувшем году «отстрелялась» компания nVidia, доминировавшая на рынке всю вторую половину 2005 года со своим GeForce 7800[См. «КТ» #602, «24 цилиндра от nVidia»]. «Вылизанное» за несколько лет совершенствования линейки FX – 6xxx – 7xxx графическое ядро успешно демонстрировало безусловно лучшие показатели быстродействия, отличную масштабируемость, поддержку самого широкого набора возможностей и умеренное энергопотребление – пусть и ценою громадного и весьма дорогостоящего в производстве кристалла, производимого по «старому» 110-нм технологическому процессу. «Завязшая» в производственных проблемах ATI достойной альтернативы почти четыре месяца предложить не могла – и, в результате, запоздавший прогрессивный Radeon X1800[См. «КТ» #610, «Новая надежда»], ценою громадных усилий, высоких тактовых частот и крайне дорогостоящей памяти хитом так и не стал. Однако он составил вполне серьезную конкуренцию 7800-м картам, – и nVidia решила разменять низкое тепловыделение данных карт на повышение производительности.
Думаете, ATI, поставленная в донельзя невыгодное положение, растерялась? Ничуть! Вооруженная наконец-то доведенным до ума прогрессивным 90-нм технологическим процессом (позволяющим впихнуть на миллиметр кристалла в полтора раза больше транзисторов, чем у nVidia) и новой архитектурой, остаток осени и начало зимы канадская корпорация ковала настоящее «оружие возмездия». Это сейчас новости о Radeon X1900 читаются спокойно, а когда мне в почтовый ящик под NDA свалился пресс-релиз, в котором раскрывались технические подробности о новом графическом процессоре, я едва не выпал из кресла. Если совсем вкратце – то в X1900 находится 48 блоков обработки пиксельных шейдеров, или три (!) видеокарты в X1800-м пиксельном эквиваленте. Честно говоря, еще полгода назад я весьма скептически относился к перспективам появления графических процессоров, снабженных 32 блоками обработки пиксельных шейдеров, а тут – ни много ни мало – предлагается в массовых количествах (ATI хорошо подготовилась к анонсу!) чип c 48 блоками PS (в «пересчете» к старой архитектуре). Причем, что характерно, несмотря на гораздо большее число транзисторов (380 против 300 миллионов), с заметно меньшим размером кристалла, а стало быть, и меньшей себестоимостью и большим выходом, нежели у конкурента. Вдобавок, переплюнув конкурента вдвое по числу устройств обработки пиксельных шейдеров, ATI еще и не сдала ни мегагерца запредельно высокой тактовой частоты Radeon X1800, почти на 20% большей, чем даже у 512-мегабайтного варианта 7800 GTX. Не выиграть, имея на руках такое подавляющее «численное преимущество», было практически невозможно, – и X1900 XTX действительно практически всюду (за парой исключений, связанных не то с драйверами, не то с «прямыми» руками разработчиков игр) бывшего лидера от nVidia «задавил». Массой. Всю линейку Radeon X1800 сразу же после выхода X1900 свернули, самый продаваемый период пропустили, но зато ATI теперь гордо носит корону безоговорочного лидера производительности в 3D-графике. Впрочем nVidia, надо думать, долго мириться с таким положением дел не будет, и ближе к весне, (когда у покупателей снова появятся деньги), закончив отложенное ради запуска 7800 GTX освоение 90-нм технологического процесса, тоже выкатит «что-нибудь эдакое». Право же, наблюдая за этой сумасшедшей гонкой, в которой производительность видеокарт меньше чем за год удваивается, я жалею только об одном – что не могу менять видеокарты в своем компьютере с сопоставимой периодичностью.
Свое сражение, хотя и в меньших масштабах, разыграла этой зимой и еще одна парочка «заклятых друзей» – Intel и AMD. Находившаяся уже длительное время в роли догоняющей, первая наконец-то выпустила Pentium 4 «таким, каким он должен был изначально быть» – без страшных технологических усечений Wilamette, архитектурных перекосов Northwood и перегрева Prescott. Переход на 65-нм техпроцесс породил процессор с отличным потенциалом разгона, хорошей масштабируемостью и «умеренным» (по меркам Prescott’а, к которому, впрочем, все уже более или менее привыкли) тепловыделением; процессор, в принципе, способный преодолеть пресловутый 4-ГГц барьер и, возможно, даже «доползти» до заветных 5 ГГц, которые в начале «эпохи NetBurst» нам клятвенно обещали. Но по иронии судьбы как раз такой процессор компании Intel сейчас не нужен, поскольку намучившись с Prescott’ом, она уже приняла решение о «похоронах» архитектуры и ее замене принципиально новым процессором. А создавать конкуренцию самой себе, когда «старая» архитектура будет длительное время обгонять «новую», выходящую в конце лета – невыгодно. Поэтому вместо того, чтобы открыть
Впрочем, это тема для отдельной статьи, а здесь мы рассмотрим «симметричный ответ» AMD – Athlon 64 FX60, который, по сути, является обычным Athlon 64 X2 4800+, только работает на чуть большей частоте – 2,6 ГГц. Изначально предполагалось, что AMD анонсирует его раньше, чем Intel представит Pentium 955, однако Intel, по заложенной этим летом традиции, упускать лавры первого анонса не стала и в последний момент скорректировала сроки. Учитывая, что FX60 существенно опережает ее топовое решение – вполне разумная мера: теперь вместо двух отчетов о лидерстве AMD и «догоняющем» Intel в Сети находится как отчет о лидерстве AMD, так и вполне лестные отзывы на 955-й. Впрочем, AMD, похоже, не в обиде, – в любом случае, она продает столько процессоров по высокой цене, сколько вообще в состоянии произвести. Интересна разве что смена вектора традиционно «геймерской» серии с «быстрых одноядерников» на «быстрый двухъядерник», пусть и с чуть меньшей тактовой частотой (2,6 против 2,8 у FX-57). Скорее всего, воспользовавшись мощным пиаром двухядерников со стороны Intel-а и недавно появившейся серией задействующих многопоточность патчей (в том числе и на уровне драйверов), AMD решила, что момент для этого выбран более чем подходящий. И сейчас мы это проверим.
Вооружившись всеми «игровыми» новинками, мы собрали в лаборатории шикарный тестовый стенд, где на практике проверили, к чему же, в конце концов, привела волна анонсов «железа» на практике. Для того чтобы можно было оценить выгоду на текущий момент от задействования второго ядра и обеспечить более объективные показатели сравнения видеокарт, мы слегка разогнали наш FX60 до тактовой частоты 2,8 ГГц и основные тесты проводили на нем, используя FX57 в качестве «референсного» одноядерного образца. В качестве драйверов мы взяли самые последние стабильные сборки nVidia Forceware 8x.xx и ATI Catalyst 6.x; причем для них обоих производители заявили об «оптимизациях под двухъядерные процессоры». Более подробная конфигурация стенда и полученные результаты, как обычно, расписаны во врезках.
Тестовая система
Процессор: AMD Athlon 64 FX-60 @ 2,80ГГц (Dual core CPU),
AMD Athlon 64 FX-57 @ 2,80 ГГц (Single core CPU)
Материнская плата: MSI K8N SLI (nForce 4 SLI)
Оперативная память: 2х512 Мбайт DDR 400 Corsair 2-2-2-5
Блок питания: OCZ 520W
ОС и драйверы
Windows XP Professional SP2; nVidia nForce4 Platform Driver 6.39; DirectX 9.0c End User Runtime; Catalyst 6.1 и ForceWare 81.98
В итоге получилась довольно интересная картинка.
Во-первых, «оптимизации под двухъядерность» действительно принесли в ряде приложений весьма ощутимые плоды, выразившиеся примерно в 10–15-процентном приросте производительности в 3Dmark 2006 и Far Cry. Причем если с 3Dmark ситуация не вполне понятна (возможно, разработчики Futuremark приложили здесь свою руку), то с Far Cry – однозначна: эта игра многопоточность до сих пор не поддерживает, и существенный прирост производительности при переходе к двухъядерным процессорам в ней – это в чистом виде эффект новых драйверов. nVidia каких-либо комментариев по поводу своих «оптимизаций», к сожалению, не дает (и, что еще хуже, пользователи в некоторых ситуациях жалуются на нестабильную работу «оптимизированных» драйверов, вплоть до необходимости эти оптимизации через реестр отключать), а вот представители ATI охотно поясняют, что, по сути, основные их оптимизации сводятся к разнесению потоков видеодрайвера (обрабатывающего «сырые» данные, передаваемые ему через Direct3D– или OpenGL-интерфейсы, и отправляющего их на ускоритель) и потока игры по разным процессорам. Far Cry традиционно славен огромными объемами используемой в этой игре «геометрии», а потому, по видимости, их обработка действительно занимает настолько существенное время, что подобное «распараллеливание» дает ощутимый прирост. Однако в остальных случаях, как нетрудно видеть, от существующих «оптимизаций» ни вреда, ни толку, в общем-то, никакого.
Для некоторых игр, и, в частности, Quake 4 и Call of Duty 2, существуют специальные патчи, вносящие в эти игры «врожденную» поддержку многопоточности. Поскольку здесь речь заходит уже не о тривиальном «разделении» драйвера и игры по разным процессорам, а о более интеллектуальном распределении между процессорами различных подсистем одной игры, то и прирост производительности здесь стабильнее и выше – до 40% (!). Но здесь, к сожалению, следует упомянуть одно «но»: происходит это далеко не во всех игровых ситуациях и, к сожалению, наибольший прирост достигается на наиболее простых и потому «быстрых» игровых сценах, которые, в общем-то, ускорять и не обязательно. И объяснение этому эффекту довольно простое: основной «тормоз» в играх – это графический ускоритель, а до тех пор, пока 80% времени процессор ожидает, пока ускоритель выведет очередной кадр на экран, получить более чем 1/(1 – (1-80%) / 2) ~ 11% прироста производительности, увы, даже в идеальном случае невозможно. А чем проще сцена – тем меньше времени съедает видеокарта и тем больше прирост производительности. И, к сожалению, пока при разработке игр основной упор делается на «графику», эта ситуация к лучшему не изменится. К примеру, в российском «Периметре», многопоточность довольно эффективно используется для параллельной обработки повреждений и изменений игрового мира. Но сегодняшние стратегии и так не могут пожаловаться на недостаточную производительность машин игроков, а когда вы в последний раз видели шутер, где можно было бы соорудить не то что дырку в стене дома, а хотя бы воронку в земле от взрыва снаряда?