Графика: быстрая, медленная и интегрированная

Часть 22: Radeon HD 7950 и 13 центральных процессоров разной производительности


Долгое время основным примером «быстрой графики» в наших тестированиях являлся выбранный в качестве «базового» для основной линейки тестов процессоров видеоадаптер Nvidia GeForce GTX 570. Как мы уже писали, еще до перехода на новую версию тестовой методики эта видеокарта внезапно «скончалась», найти такую же в точности нам не удалось, поэтому некоторое количество процессоров пришлось уже тестировать с более мощным Gigabyte Radeon HD 7950 GV-R795UD-3GD. Причем (как мы тоже уже установили недавно), по причине большей производительности данного GPU иногда уже начинает наблюдаться процессорозависимость результатов. Собственно, таковая есть всегда и везде, но... чем медленнее видео, тем, очевидно, меньше зависит от процессора. Чем быстрее — тем, соответственно, наоборот.

Поэтому мы решили изучить данный вопрос немного более подробно. Тем более, что Radeon HD 7950 до сих пор остается одним из наиболее интересных вариантов для приобретения благодаря (относительно) невысокой цене при (столь же относительно) высокой производительности. В новой линейке компании прямого аналога данной модели пока не появилось, хотя мы не удивимся, если в ближайшее время она реинкарнируется под названием Radeon R9 280 (благо HD 7970 GHz стал R9 280X). В общем, решение продолжает сохранять актуальность для многих покупателей. Часть которых, тем не менее, опасается приобретать видеокарты такого уровня для апгрейда старых компьютеров, предполагая, что имеющийся в наличии процессор «не позволит раскрыть потенциал» (почти дословная цитата из многих форумов). Стоит ли этого бояться? Как мы уже увидели в предыдущем тестировании, определенные основания под таким мнением есть. С другой стороны, использованный нами тогда А10-6800К в плане процессорной производительности соответствует лишь бюджетным решениям — аналогичное быстродействие имеют Athlon X4, ценой менее $100. А вот что происходит выше — интересно. Равно как интересны и потребности игр в многоядерных процессорах. Пусть хотя бы тех, что мы использовали последние два года — новые проекты в наступившем году изучим уже в рамках новой методики.

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

В сущности, таблицы с ТТХ нам сегодня не потребуются — менялись только процессоры. И системные платы, разумеется, однако их влияние на производительность чуть менее чем отсутствует :) Оперативной памяти всегда было 8 ГБ, ее частота — максимальная, штатно поддерживаемая процессором. Единственное отступление от «канонического варианта»: Core i3-2100 — система с ним тестировалась два раза: при установке видеокарты в «процессорный» слот и на «чипсетном» интерфейсе PCIe 2.0 x4. Второй вариант интересен для оценки влияния интерфейса. Хотя бы потому, что некоторые современные ультрабуки используют именно такой способ подключения дискретной графики: как мы уже писали, PCIe x16 из новых CULV-процессоров в SiP-исполнении попросту «выпилен». Да и A6-5200 ограничен как раз PCIe 2.0 x4, так что для более корректного его сравнения с другими при использовании дискретной графики имеет смысл подобрать и «корректного конкурента».

Заметим, что мы ограничились только лишь режимом «стандартного качества», т.е. высокие настройки качества графики и разрешение 1680×1050, поскольку тестировать видеокарту за 300 долларов в более «легких» режимах нет смысла. Точнее, сами тесты мы «прогнали», но результаты в «нижеплинтусном» режиме (с которым уже неплохо справляется и современная интегрированная графика) есть только в таблице, но не в самой статье. Если кому интересны и такие подробности — можно ознакомиться :)

Aliens vs. Predator

Эта игра, пусть и не относится к наиболее современным, предъявляет очень высокие требования к видеочасти. В результате даже недавно ее пришлось пожурить за низкий параллелизм и вообще невысокую нагрузку на процессор. На самом деле, это не совсем так — просто даже в не самых качественных режимах и даже при использовании высокопроизводительных современных видеокарт до, собственно, процессора дело доходит редко: большую часть времени он спокойненько «простаивает». В итоге все испытуемые приходят к финишу практически одновременно: HD 7950 достаточно для сотни кадров в таком режиме и именно их мы видим независимо от процессора. Разве что  «чипсетный» метод подключения отстает от всех прочих больше, чем на погрешность измерения, однако этого вполне можно было ожидать: текстур много, скорость их загрузки в локальную видеопамять имеет значение.

Batman: Arkham Asylum GOTY Edition

А вот пример «легкого» графического движка, где все определяется процессором. Фактически даже однопоточной производительностью последнего, со всеми вытекающими — Pentium G2130 обходит все процессоры AMD, за исключением FX-8350. Да и преимущество FX над Phenom или старшими сокетными APU (даже старыми — типа A8-3870K) крайне невелико. Равно как и превосходство старших Core над Pentium: у них больше кэш-памяти и выше максимальная тактовая частота при неполной нагрузке, да и все. Хотя иногда и этого достаточно, да и вообще — результирующая частота кадров такова, что качество можно увеличивать и дальше, что разброс значений только сократит.

Crysis: Warhead x64

Нагрузка на процессор здесь не ниже, чем в предыдущем случае. Но, к сожалению, игра в принципе не умеет использовать более двух потоков вычислений (Batman иногда пытается, однако не всегда эффективно), в результате чего Pentium G2130 обогнал даже FX-8350, а на ноутбучном А6-5200 играть просто невозможно, фактически независимо от видеокарты. Впрочем, последний на этот «праздник жизни» попал совершенно случайно: на практике никто не будет, разумеется, устанавливать мощную видеокарту в систему с медленным экономичным процессором. Да и для владельца старенького (уже) А6-3500 последняя дороговата. Остальные же участники сравнимы друг с другом. Будь это недорогой APU (или еще более дешевый Athlon X4), Pentium или, напротив, топовый шестиядерный Core i7 — принципиальной разницы в таких играх не будет. Вот видеокарты вплоть до Radeon HD 7790 подходят для них плохо :)

F1 2010

Результаты... Пестрые. Phenom II X6 можно не принимать во внимание: как мы уже не раз писали, старые версии движка EGO некорректно работаю с шестиядерными и трехмодульными процессорами AMD. За исключением этого «взбрыка» видна потребность игры в большом количестве ядер (или, хотя бы, потоков вычисления), но по-разному проявляющаяся для продукции разных производителей. У Intel все просто — крайне желательно иметь четыре физических ядра. Больше — не обязательно. Да и Hyper-Threading эффективен только на двух физических ядрах, но не четырех: старый Core i3 сумел (при нормальном способе взаимодействия с видеокартой) обогнать более новый Pentium, но вот старый Core i7 уже проиграл более новому (пусть даже энергоэффективному) Core i5. А вот в стане AMD не все так гладко. Флагманы для FM1 и FM2 оказались практически равны, хотя у первого четыре ядра, а у второго лишь четыре «ядра», но оба вышли лишь на уровень двухъядерных Pentium годичной или Core i3 двухгодичной давности. А8-3870К это простительно — он и сам старый уже относительно. А вот А10-6800К разочаровал. Но еще более разочаровывает FX-8350: тут и модулей вдвое больше, чем у А10-6800К, и кэш-память третьего уровня есть, однако... Однако все это дало лишь примерно 10% производительности.

Таким образом, приходим к следующему выводу: даже поддержка игрой нескольких потоков вычисления зачастую не позволяет добиться высоких результатах при низкой однопоточной производительности. Вот если последняя высокая — все просто. По крайней мере, до тех пор, пока количество ядер не превысит потребности и возможности движка. Но и относительно хорошо оптимизированным под многоядерность представителям последних все равно нужно одно максимально быстрое ядро.

Far Cry 2

Мы сохраняли эту игру в тестовом наборе вот уже двух процессорных методик в основном потому, что она имеет очень высокую процессорозависимость. Фактически, несмотря на почтенный уже возраст движка DUNIA, в плане многоядерной оптимизации он сильно опередил свое время. Недаром и в вышедшем в позапрошлом году Far Cry 3 удалось использовать движок пятилетней давности, лишь доработав его в плане графики. И, кстати, FC3 быстро стал одним из эталонов утилизации современных многоядерных процессоров. Предыдущая версия, разумеется, в этом плане послабее, однако принципиальная разница между двух- и четырехъядерными процессорами Intel видна невооруженным глазом. Причем тут ее уже на разницу в тактовой частоте и прочие особенности никак не спишешь — почти двукратная ибо. Т.е. задействовать все четыре ядра Core i5/i7 эта старая уже игра может. А вот более двух модулей, либо (в случае «старых платформ») четырех ядер AMD — увы, нет. Впрочем, небольшая, но устойчивая разница между старыми и новыми архитектурами этой компании наблюдается, однако она как раз вполне укладывается в подросшую однопоточную производительность.

Metro 2033

Пример игры, которой нужно все. Причем как раз ей фактически необходимы карты, уровня Radeon HD 7950 — в остальных играх нашего набора уже можно обойтись и более медленными видеоадаптерами. И, заметим, это первый и единственный случай (из рассмотренных нами), когда процессоры AMD расположились именно в том порядке, который и хотелось бы видеть всегда. Во всяком случае, равенство всех модификаций Core i5/i7 и FX-8350 — то, что Pentium G2130 сумел обогнать всех остальных участников тестирования из этого лагеря эффект нежелательный :) С другой стороны, способность Pentium обгонять Core i3 предущего поколения (наблюдаемая вот уже три поколения подряд) тоже не слишком желательный эффект для Intel, но не настолько неприятный.

В общем, как видим, в наиболее «свежем» (из используемых нами на данный момент) графических движков определенный смысл в многоядерности есть, однако ее поддержка не столь уж прямолинейна, как могло бы показаться — медленный четырехъядерный (причем не обязательно самый медленный) процессор легко может отстать от быстрого двухъядерного. Но самое неприятное даже не это, а то, что и требования к видеокарте у современных игр тоже выше, чем у более старых. С этим, собственно, и связан почти одинаковый результат ведущей пятерки — более 60 FPS в среднем не выдает уже Radeon HD 7950. Медленных же процессоров действительно не хватает для того, чтобы видеокарта могла показать все, на что способна, но... Если отбросить совсем уж специфичные А6-3500/5200, даже A8-3870K (аналог которого без видеочасти Athlon II X4 651 появился еще пару лет назад и стоит куда дешевле сотни долларов) отстает от лидеров лишь на 20%, а более современный Pentium G2130 — вообще на 10%. Если же ориентироваться на более медленные и дешевые карты (что при использовании бюджетного процессора более привычно) разница будет еще меньшей. Вплоть до полного исчезновения.

Стратегический поток

Окинем взглядом результаты в целом. Хорошо заметно, что в среднем они максимальным образом зависят от удельной производительности на вычислительный поток и практически не зависят от количества поддерживаемых потоков. Казалось бы исключением являются старшие процессоры Intel, где разница между двух- и четырехъядерными моделями выглядит многообещающе, но во многом эта та же самая однопоточная производительность. Просто потому, что не стоит забывать об одной технологии, которой настольные двуъядерники (и часть мобильных) просто лишены: Turbo Boost, как раз позволяющий резко увеличивать частоту одного или двух ядер при небольшой загрузке остальных. В частности, Core i7-3770K при «половинной утилизации» работает на частоте 3,8 ГГц против 3,2 ГГц пары аналогичных по микроархитектуре ядер Pentium G2130, да еще и увеличенная емкость кэш-памяти третьего уровня (к чему игры восприимчивы) сказывается. В общем, основные преимущества старших Core вовсе не в количестве ядер, а, скорее, в их качестве.

С другой стороны, сложно было бы ожидать обратного — по сути, на частоту кадров влияет производительность ровно одного потока: который и занимается выводом картинки. Других до сих пор может и не быть — хорошим примером популярной современной игры является World of Tanks, где параллелизм отсутствует в принципе. Но даже если подход разработчиков менее ортодоксальный, вынос работы в отдельные потоки может лишь разгрузить основной. После того, как для него удастся выделить целое ядро процессора в монопольном режиме, частота кадров начинает зависеть только от производительности этого самого ядра. Причем уже не слишком важно общее число потоков — два, четыре или больше, поскольку каждый из дополнительных менее требователен к ресурсам. В результате на выполнение всех их вместе может хватить и одного ядра процессора, т.е. нужная цель (вывести в «монопольный режим» поток, занимающийся отрисовкой картинки) выполняется и в случае двухъядерной модели. Может и не хватить, что свойственно некоторым современным проектам — тогда четырехъядерный (или, хотя бы, четырехпоточный) процессор уже будет иметь определенное преимущество. Особенно заметно это проявляется в многопользовательском режиме, что немудрено: работа с сетевой картой нередко требует немалое количество вычислительных ресурсов (для популярных в бюджетных компьютерах чипов Realtek так и вовсе лучше тоже отдельное ядро отдать, благо распараллеливать нагрузку их драйверы до сих пор не умеют), что может сказаться на «мастер-потоке». Аналогичная проблема, судя по имеющимся у нас данных, проявляется и в драйверах видеокарт: ПО AMD более тяготеет к «однопоточной производительности», нежели разработки Nvidia, более благосклонно относящиеся к увеличению количества ядер процессора, что иногда может приводить к совершенно разной расстановке сил при сравнении медленных четырех и быстрых двух ядер. Впрочем, последнее — вопрос нуждающийся в дополнительной проверке. Причем и не слишком применимой к практике — все-таки в рамках одной платформы сейчас и AMD, и Intel обычно предлагают пусть и разное количество, но одинаковых ядер, т.е. сравнение Pentium с частотой 4 ГГц и Core i5 на 2 ГГц возможно лишь гипотетически.

Есть ли надежды на принципиальное исправление ситуации? Теоретически есть — надо будет посмотреть на проекты, рассчитанные на консоли нового поколения. Дело в том, что и Sony, и Microsoft используют в своих новых продуктах процессоры той же архитектуры х86-64, что и персональные компьютеры. Да и микроархитектура аналогичная одному из сегодняшних героев — процессорная часть центральной SoC Xbox One и Sony PlayStation 4 это (в первом приближении) два A6-5200. Только еще и на более низкой тактовой частоте, т.е. однопоточная производительность этих микросхем еще ниже. А вот полное количество ядер — вдвое выше. Таким образом, программистам придется хоть тушкой, хоть чучелом, но отказываться от концепции «стратегического потока» (которая, кстати, прекрасно ложилась не только на процессоры для компьютеров, но на и относительно малоядерные CPU предыдущего поколения консолей — в процессоре PlayStation 3 из восьми теоретических ядер полноценной была лишь одна пара, а Xbox 360 использовал трехъядерный процессор с SMT), и разбивать задачу на большее число потоков. В частности, и под вывод картинки должен полноценно задействовать не один, а два-три вычислительных потока, и все драйверы должны стать многопоточными. Вот такой подход уже сможет помочь многоядерным моделям, если... Если мы опять «не упремся» в то, что и многопоточная производительность при использовании разного количества, но разных ядер может быть одинаковой. В любом случае, пока полностью разобраться с этим вопросом не представляется возможным — как уже сказано, придется дождаться появления игровых движков, на практике оптимизированных под большое количество «тощих» ядер.

Пара слов об интерфейсе

Выше мы не комментировали подробно результаты Core i3-2100 в двух ипостасях — при использовании видеокарты на «процессорном» PCIe x16 и чипсетном PCIe x4. Причина проста — как видим, большого разнообразия в них нет: «нештатный» способ коммутации немного снижает производительность, но всюду одинаковым образом и именно что «немного»: изменение полосы пропускания в четыре раза и добавление на пути еще одного хопа (в виде южного моста чипсета) приводит к потерям лишь в районе 10%. На этом фоне, естественно, часто обсуждаемые отличия между PCIe 2.0 и 3.0, либо х16 и х8 одной версии PCIe просто теряются: там лишь двукратная (а не четырехкратная) разница в пиковой пропускной способности, причем при «прямом подключении» к процессору, т.е. потенциальная разница в производительности вообще уложится в 5%, что не стоит внимания.

Насколько эти результаты распространимы на другие GPU? Теоретически положение может быть каким угодно: с одной стороны при меньшей вычислительной мощности самого чипа снижается эффект от сторонних факторов и именно в нее все и «упирается», а с другой — младшие видеокарты имеют меньшую емкость локальной памяти, что повышает потребность в передаче данных по шине. Впрочем, забегая чуть вперед, сообщаем, что эксперименты с ноутбучным GeForce GT 740M в паре с очень разными процессорами показали те же 10% разницы между «процессорным» PCIe 3.0 x16 и «чипсетным» PCIe 2.0 x4, т.е. более близкой к практике оказалась первая точка зрения из двух вышеизложенных.

Таким образом, можно прийти к выводу о незначительности такого фактора, как интерфейс подключения дискретного GPU в плане влияния на производительность. Разумеется, если подобрать еще более перекошенный вариант, т.е. сравнить, например, PCIe 3.0 x16 и PCIe 1.1 x1, разница увеличится. Однако такие ситуации слишком уж синтетичны. Вот рассмотренная нами сегодня — ближе к практике. Но как раз в ее случае разброс результатов невелик. А в случае более быстрых вариантов, нежели «чипсетный» PCIe 2.0 x4 он может только уменьшиться.

Итого

Что остается в сухом итоге? Как видим, пресловутая «процессорозависимость» на практике существует, в чем никто и не сомневался. Однако есть и нюансы. В частности, само по себе количество ядер пока не имеет высокой ценности: обычно выводы об его влиянии делаются на основе сравнения двух- и четырехъядерных процессоров Intel, однако в их случае ядра отличаются не только по количеству, но и по «качеству». Вот в продукции AMD таких глобальных различий нет — медленный кэш третьего уровня дает очень мало, а тактовые частоты процессоров под FM2 и AM3+ (имеющих одинаковую архитектуру модулей) сравнимые. В результате и производительность их очень близкая, что, впрочем, в немалой степени компенсируется невысокими ценами всех продуктов. Да в относительном исчислении доплата за «лишние» ядра невелика, что делает приобретение какого-нибудь FX-6300 очень соблазнительной идеей: работать будет не хуже четырехмодульных моделей, но уже побыстрее «Атлонов» (APU для геймера в любом случае не лучший выбор, поскольку встроенное видео все еще слабовато, а платить за него, используя дискретное не интересно, поскольку можно не платить). За Intel таких «подарков» не замечено — все-таки даже младшие Core i5 стоят дороже, чем некоторые представители линейки FX-8000, а упомянутый FX-6300 покупателю обойдется дешевле, чем подавляющее большинство Core i3, но... Производительность «ай-пятых» несколько выше, так что и разница в цене оправдана. Вот Core более высокого класса, как видим, геймеру все еще ничего существенно-нового предоставить неспособны, хотя иногда и повышают частоту кадров даже далеко не в самых новых играх (пример Far Cry 2 весьма показателен), но платить за это приходится неоправданно дорого. Причем и «прибавка» к FPS выглядит как «было очень много, а стало еще больше», т.е. принципиально ничего не решает — вложить ту же сумму в видеокарту более оправдано с точки зрения конечного результата.

Ну а еще хорошо видно, что старое эмпирическое правило: «в игровом компьютере видеокарта должна быть вдвое дороже процессора» продолжает действовать. И им можно пользоваться на практике, что очень удобно, поскольку позволяет не слишком углубляться в детали. Разумеется, не стоит забывать о том, что верно оно при подборе пары «CPU+GPU» примерно одного времени выпуска — при  замене видеокарты в старом компьютере нужно смотреть не на то, сколько стоил процессор на момент покупки, а почем продаются его современные аналоги в плане производительности. Ну и, как водится, от любых правил возможны отступления в ту или иную сторону — как мы сегодня увидели, для видеокарте за 300 долларов (пусть и уходящей с рынка — возможно в пользу более дешевого продукта аналогичной производительности) может пригодиться процессор за 200, причем производительность будет более высокой, чем если следовать «букве закона», приобретая какой-нибудь Core i3 за 150. Но на проценты, а не в разы в отличие от перекоса в другую сторону — дешевое видео при дорогом процессоре. А как меняет расстановку сил использование более современных игр — проверим уже в ближайшее время.



Благодарим компании Corsair, «Ф-Центр» и Palit
за помощь в комплектации тестовых стендов



Дополнительно

Нашли ошибку на сайте? Выделите текст и нажмите Shift+Enter

Код для блога бета

Выделите HTML-код в поле, скопируйте его в буфер и вставьте в свой блог.