Проект разработки APU Kaveri напрашивался сам собой. При наличии в арсенале отличной GPU части компании AMD надо было как можно быстрее интегрировать ее в CPU часть. А для того, чтобы понять, насколько нетривиальной была работа по интеграции объемного графического процессора, расскажу об этом подробнее. Дальнейший рассказ о рождении нового APU и его технологиях следует поделить на две части: первая – официальная, вторая – взгляд с моей точки зрения. Итак, начнем.
Разработчики компании попытались избежать простого размещения GPU GCN. Ведь в таком случае неизбежно пришлось бы решать более глобальные проблемы масштабируемости пропускной способности шин. Поэтому Kaveri не просто получил более широкие шины обмена данными, он получил их именно в тех местах, где они требовались. Помимо шин, AMD решилась на радикальные изменения в обращении процессора к памяти. Вместо банального массива памяти, деленной на логические части для GPU и CPU, в APU вся память может быть использована обеими частями одновременно.
Называется эта технология hUMA. Проектирование столь сложного алгоритма в первую очередь связано с рядом разработок AMD, направленных на уменьшение издержек очереди CPU и GPU при обращении к памяти. В существующем виде (сильно упрощенном) они работают совместно, но когда возникает потребность в выполнении задачи на GPU, сначала ее получает CPU, потом он резервирует часть памяти и дальше запрос поступает на GPU, который опять блокирует под задачу кусок памяти.
Самое сложное на этом этапе – обмен данными между CPU и GPU. Если нам нужны одновременно данные из процессорного буфера и GPU, то запрос будет ходить через исполнительные устройства, тем самым добавляя циклы как бы пустой работы. С технологией hUMA доступ осуществляется независимо от того, к чему эти области были адресованы. В таком случае уже сейчас можно перечислить ряд достоинств, которыми стали обладать APU:
После ряда аппаратных решений наступило время рассказать о программных нововведениях и ближайшем будущем.
Создав организацию HSA, AMD вынуждена решить ряд первостепенных задач. И поскольку уже сейчас в группу входит большое число компаний, то на первое место встала проблема планирования. Скажем, как исполнять код на разных устройствах под разными ОС? Должен быть создан единый алгоритм и система библиотек. Этим AMD придется заниматься в ближайшее время. И готовые программы для конечного потребителя появятся только в конце 2014 года.
Зато благодаря этому AMD получит высокую скорость в таких приложениях за счет того, что код исполняется не только на CPU, но и на GPU одновременно. Фактически вся идея и заключается в том, чтобы программы не видели разницы между ними, используя суммарную производительность.
Рассказ о Mantle был бы неполным без упоминания одного человека – нашего бывшего соотечественника, инициатора всей программы разработки Mantle. Пусть пока его имя останется тайной, но на саммите APU13 мне удалось пообщаться с ним продолжительное время и узнать напрямую из первоисточника цели программы и их воплощение. Официально проект Mantle был запущен с целью улучшения производительности, которой можно было бы достичь, убрав тормозящие места на пути между исполнительными командами и аппаратными решениями AMD. Впоследствии разработчики пришли к неким выводам, после чего добились явного преимущества Mantle над существующими API.
Mantle – это такой же API, как и DirectX, но (проще говоря) более утонченный, в нем учтены архитектурные особенности GPU, поэтому работать он будет быстрее. На мой взгляд, Mantle способен подтолкнуть всю индустрию и доказать, что развлекательная сторона ПК забыта зря. Ее рано снимать со сцены. С другой стороны, AMD нарывается на неприятности со стороны Microsoft, ведь API DirectX был единственным много лет и стал стандартом.
Допустим, вся эпопея с Mantle удалась, а учитывая ее совместимость с видеокартами сторонних производителей, идея может стать действительно удачной. Что же такое DirectX для Microsoft? Сейчас мы возьмем и рассмотрим Dx11(Х): скелет этого API не меняется с седьмой версии, добавляются лишь незначительные команды, фактически все еще используется базис седьмого DX, что немного пугает. Тогда почему Microsoft не хочет что-либо менять? Ответов может быть много, и, скорее всего, все они будут являться правдой.
Начнем с вершины: DX для Microsoft – продукт не стратегический. После того, как Microsoft Entertainment отделилась от основной компании Microsoft, приставочный мир стал жить отдельно от ПК. Dx11 хоть и стал основным API новых приставок, дополнительные функции в нем являются результатом «впиливания», а не разработки. К тому же «хвост» старых команд никуда не делся, а так и тянется от поколения к поколению. Для самой Windows DX не является условием выживания ОС на рынке – это бонус, не более того.
Вот и получается, что DX, на который Microsoft «подсадила» всех разработчиков, перестал их же удовлетворять. Код программ с каждым новым поколением видеокарт растет, а скорость выполнения падает. Глава разработчиков API Mantle понимал, что создание альтернативного API вызовет негодование со стороны Microsoft. Здесь напомню, что AMD на ближайшие несколько лет будет являться партнером для Microsoft, поскольку производит процессоры для Xbox One. С другой стороны, те ключевые студии типа DICE и Oxygen, применив Mantle, были в восторге. Да-да, удалось поговорить и с разработчиками. Наибольшие дивиденды получат конечные пользователи, у них появится альтернатива.
Но остается вопрос, чем же так хорош Mantle?
Главной проблемой DX стала перегрузка CPU запросами от программ. Чем больше юнитов используется в коде, тем быстрее вырастает очередь из запросов. Ну, очередь и очередь, скажете вы, чем она мешает? Дело в том, что исполнение кода на GPU не обходится без участия CPU. Сначала он обрабатывает часть требуемых данных и только потом в действие вступает GPU. На определенном этапе, особенно в стратегиях, API DX так сильно тормозил, что GPU «отдыхал» чуть ли не половину времени. Конечно, программисты пытались разными путями обойти порог, но настало время, когда вместо очередных попыток проще было создать новый API, без узких мест. Кстати, в команде разработчиков со стороны AMD есть несколько ключевых людей, которые по собственному опыту могут понять запросы разработчиков игр. Поэтому, по их мнению, они учли все подводные камни в новом API.
Уже сейчас доступен драйвер и обновлена игра Battlefield, но, тем не менее, выводы делать все же рано. Нужно смотреть шире и попробовать сравнить DX с Mantle в той среде, где DX по-настоящему сдерживал производительность. Так что стоит подождать стратегий с поддержкой Mantle. А пока новый API добавит несколько процентов скорости в любимой Battlefield. Наибольший эффект ждет нас в несбалансированных конфигурациях, где перевес останется на стороне GPU. И предварительно можно сказать, что Mantle будет интересен в первую очередь владельцам средних по мощности систем.
От себя могу добавить, что AMD с Mantle действительно может при благоприятном стечении обстоятельств обойти Microsoft и переписать историю развития рынка развлечений. Остается лишь понять, хватит ли сил AMD. Подробное тестирование Mantle мы отложим на недельку, пока не улягутся страсти и не приедут видеокарты для Dual Graphics.
Вернемся к испытуемым – вместе с APU A10-7850К нам достался инженерный образец A8-7600. С ними и состоится знакомство.
Тестовый стенд №1
Процессоры и режимы их работы в системе №1
Тестовый стенд №2
Процессоры и режимы их работы в системе №2
Тестовый стенд №3
Процессоры и режимы их работы в системе №3
Тестовый стенд №4
Процессоры и режимы их работы в системе №4
Тестовый стенд №5
Процессоры и режимы их работы в системе №5
Уровень энергопотребления измеряется по трем величинам.
Стоит немного рассказать о применяемых в тестировании программах и причинах их выбора.
WinRAR 4.2 x64 – используется встроенный тест производительности. Сама программа размещена на разделе диска, который находится на SSD накопителе, тем самым исключается низкая производительность классического HDD. Результат теста – это среднее значение, полученное после трех запусков программы. WinRAR неспроста фигурирует в данном обзоре, ведь нам часто приходится скачивать и распаковывать файлы. Тем более RAR очень распространен среди архиваторов и хорошо поддерживает многопоточность.
Java Micro Benchmark. Нетипичный тест среди обзоров процессоров. Java Micro Benchmark позволяет сравнить показатели производительности системы на различных платформах.
Excel BenchMark еще более редкий гость. Изначально стояла задача проверить скорость работы в пакете Office. Хорошо подходит конвертация из Word в PDF, но есть слишком сильная зависимость от остальной конфигурации системы, особенно HDD. А рост производительности чаще выше от смены частоты оперативной памяти, чем от дополнительных 100-200 МГц частоты процессора. Поэтому пришлось поискать более адекватный тест, который нагружает связку «процессор-память-чипсет». К счастью, он нашелся. Итак, что же представляет собой тест Excel? Изначально это таблица с данными, по которым в процессе выполнения бенчмарка строится динамично меняющийся график.
Всего в группе шесть подтестов.
XnView достаточно распространенная программа для просмотра фотоматериала. Она бесплатна и легка в использовании. Дополнительно в нее встроены простые функции для переконвертирования форматов, внесения изменений и прочего. Меня интересовал бытовой взгляд на тест, точнее, за какое время программа внесет изменения и сохранит тридцать пять файлов NEF формата. Типичные требования любителя-фотографа. Но задача усложняется не просто сменой формата в JPG, но и требованием сделать изменения в графических файлах. Были выбраны самые простые и очевидные вещи: изменение баланса цвета, смена температуры, выравнивание горизонта, убирание выпуклости, добавление резкости, изменение размера до 1900 пикселей по большей стороне. Не скажу, что в процессе тестирования задействуются все ресурсы, но от скорости ЦП результат зависит на 85%. На оставшиеся 15% влияет жесткий диск.
Xilisoft Video Converter Ultimate – популярный видеоконвертер. Причина его выбора в том, что он умеет хорошо загружать процессор, используя его возможности на 100%. Из всего списка возможностей мой выбор пал на 20-минутный видеофайл с одной серией сериала в формате MKV 720p, а на выходе должен получиться удобный файл для просмотра на планшете. Задача, распространенная среди владельцев планшетов, которые покупают все больше и больше пользователей. Конечно, с годами растет число ядер CPU и мощность GPU, но до сих пор не все экземпляры могут воспроизводить неконвертированное видео.
Xilisoft Audio Converter Pro. Конвертируем альбом исполнителя из FLAC в MP3, пригодный для использования в телефонах, планшетах и плеерах. FLAC файл однообразен и наполнен всеми песнями последовательно, нам надо разбить его на композиции и сохранить каждую в MP3. Простое действие для пользователя, но непростое для системы. Проблема в том, что большая часть конвертеров аудио не загружает все ядра, то есть они являются однопоточными заданиями. Увы, мне так и не удалось найти подходящую программу, адекватно нагружающую CPU, зато интересно будет проверить, как работают технологии ускорения одного ядра на процессорах разных компаний.
Pinnacle Studio 16. Версия известнейшей платформы для обработки видеоматериалов. Теоретически во время финальной сборки видеоматериала программа использует все технологии процессора, но самое главное – она многопоточная! Сама программа является очень распространенной среди любительских монтажных систем, а нам многого и не надо. Было решено соединить воедино несколько фрагментов с экшен камеры в один, снабдить их плавными переходами и привести к одной температуре картинку, равно как и цветовой баланс, и резкость.
Adobe Photoshop CS6 (64 Bit). Много слов здесь ни к чему. Результат тестирования – это время наложения фильтров на одну картинку. Для тестирования был взят обыкновенный JPG файл средних размеров, который был пропущен через фильтры, изменение размеров, настройки гаммы и прочее. Вполне типичный набор для программы. В отличие от видеокодирования Photoshop так и не стал многопоточным, скорее его можно назвать умеренно загружающей ядра процессора программой.
Cinebench x64. Распространенный тест процессора в рендере. Изначально мне бы хотелось предоставить результаты в пакетах Autodesk 2013, но из-за жесткой привязки к конфигурации системы при смене процессора требуется новая регистрация продукта. И даже после перерегистрации пакет не работает должным образом, как итог, пришлось от него отказаться. Результаты одной системы с разными процессорами в Autodesk были сравнены с разницей по результатам тестирования Cinebench, существенного отличия не выявилось.
Тестовый стенд целиком, без учета монитора.
Сводная таблица сравнения энергопотребления.
| Модель | Простой | CPU 100% | CPU/GPU 100% |
| Core i7-4930K@4.5 | 133 | 355 | 355 |
| Core i7-3970X@4.5 | 150 | 352 | 352 |
| Core i7-4770K@4.3 | 81 | 223 | 264 |
| Core i7-3770K@4.7 | 100 | 215 | 235 |
| Core i7-2700K@4.7 | 99 | 228 | 243 |
| Core i5-3570K@4.6 | 79 | 182 | 199 |
| Core i5-3470@3.9-4.1 | 71 | 133 | 143 |
| Core i5-2500@3.9-4.1 | 76 | 172 | 184 |
| A10-7850K@4.4 | 97 | 180 | 200 |
| A8-7600@3.9 | 70 | 135 | 140 |
| A10-6800K@4.8 | 97 | 193 | 232 |
| A10-5800K@4.4 | 66 | 177 | 210 |
| A10-5700@4.3 | 65 | 173 | 205 |
| A8-5600K@4.3 | 66 | 174 | 203 |
| A8-5500@4.0 | 71 | 161 | 192 |
| A6-5400K@4.5 | 62 | 113 | 130 |
| А4-5300@4.1 | 64 | 110 | 124 |
| А8-3870К@3.7 | 78 | 230 | 279 |
| A6-3670К@3.5 | 76 | 210 | 250 |
| A6-3650@2.9 | 66 | 163 | 187 |
| A6-3500@2.7 | 66 | 134 | 160 |
| A4-3400@3.0 | 66 | 130 | 150 |
| A4-3300@2.8 | 64 | 108 | 121 |
| Core i7-4930K | 110 | 280 | 280 |
| Core i7-3970X | 110 | 340 | 340 |
| Core i7-4770K | 75 | 173 | 201 |
| Core i7-3770K | 70 | 133 | 159 |
| Core i7-2700K | 76 | 148 | 158 |
| Core i5-4670K | 74 | 175 | 205 |
| Core i5-3570K | 70 | 123 | 133 |
| Core i5-3470 | 68 | 110 | 120 |
| Core i5-2500 | 80 | 142 | 152 |
| Core i3-4340 | 64 | 117 | 135 |
| Core i3-3220/5 | 66 | 92 | 113 |
| Core i3-2125 | 79 | 113 | 126 |
| Pentium G640 | 75 | 97 | 111 |
| A10-7850K | 70 | 140 | 161 |
| A8-7600 | 70 | 135 | 140 |
| A10-6800K | 68 | 152 | 172 |
| A10-5800K | 66 | 152 | 175 |
| A10-5700 | 67 | 115 | 135 |
| A8-5600K | 62 | 135 | 158 |
| A8-5500 | 61 | 112 | 138 |
| A6-5400K | 58 | 97 | 112 |
| А4-5300 | 58 | 98 | 111 |
| А8-3870К | 67 | 148 | 177 |
| A6-3670К | 67 | 143 | 165 |
| A6-3650 | 64 | 133 | 158 |
| A6-3500 | 63 | 108 | 131 |
| A4-3400 | 65 | 109 | 127 |
| A4-3300 | 62 | 95 | 107 |
Настройки:
Данный бенчмарк тестирует скорость выполнения процессором математических операций.
Настройки:
Настройки:
Настройки:
Настройки:
Настройки:
Настройки:
Настройки:
Настройки:
В части игр, где это возможно, использовались встроенные средства измерения быстродействия:
Для нижеперечисленных игр производительность измерялась с помощью утилиты FRAPS v3.5.9:
VSync при проведении тестов был отключен. Во избежание ошибок в погрешности измерений все тесты производились по три раза. При вычислении среднего FPS за итоговый результат бралось среднеарифметическое значение результатов всех прохождений.
Список участников и их частоты:
| Название | Номинальные частоты GPU/Mem, МГц |
Разгон GPU/Mem, МГц |
| i7-4770K | 1250/1600 | 1500/2400 |
| i7-4670K | 1150/1600 | 1450/2400 |
| i7-3770K | 1150/1600 | 1500/2133 |
| Pentium G640 | 1100/1600 | 1500/2133 |
| i3-2125 | 1100/1600 | 1500/2133 |
| i5-2500 | 1100/1600 | 1500/2133 |
| i7-2700K | 1350/1600 | 1500/2133 |
| i3-4340 | 1150/1600 | 1500/2400 |
| i3-3220 | 1050/1600 | 1500/2133 |
| i3-3225 | 1050/1600 | 1450/2133 |
| i5-3470 | 1100/1600 | 1500/2133 |
| i5-3570K | 1150/1600 | 1500/2133 |
| A4-3300 | 444/1600 | 480/2020 |
| A4-3400 | 600/1600 | 670/2100 |
| A6-3500 | 444/1600 | 480/2020 |
| A6-3650 | 444/1600 | 480/2020 |
| A6-3670К | 444/1600 | 900/1866 |
| А8-3870К | 600/1600 | 900/1866 |
| А4-5300 | 723/1600 | 810/1800 |
| A6-5400K | 760/1600 | 1086/2133 |
| A8-5500 | 760/1600 | 860/2100 |
| A8-5600K | 760/1600 | 1086/2133 |
| A10-5700 | 760/1600 | 867/2110 |
| A10-5800K | 800/1600 | 1013/2133 |
| A10-6800K | 844/1600 | 1013/2400 |
| A10-7850K | 720/2400 | 960/2400 |
| A10-7600 | 720/1866 | 760/1950 |
Необходимо отметить, что для всех тестов с разгоном (в том числе и 2D) частота памяти соответствует второму столбцу таблицы.
Настройки:
Версия бенчмарка 4.0.
Настройки:
Настройки:
Версия 1.03.
Настройки:
Версия – последняя на момент тестирования, с обновлениями Origin.
Настройки:
Настройки:
Настройки:
Настройки:
Настройки:
Для начала подведем итоги тестирования в 3D, включая синтетические тесты.
Ниже приведена сводная таблица результатов 2D/3D.
Нельзя оценивать новое ядро Kaveri, вызывающее интерес совокупностью софтверных и аппаратных разработок, без программной части. Да, компания AMD каждый год обновляет линейку APU, но именно сейчас в нее внедрены все передовые разработки. Тем не менее, торопиться с выводами и смотреть лишь на чистую производительность не стоит. Через год, когда появятся программы, в полной мере использующие HSA (Heterogeneous System Architecture), можно будет говорить, расставляя правильные акценты.
Так, к примеру, данный тестовый набор уже мало соответствует веяниям времени, да и Intel наверняка не будет сидеть сложа руки. Необходимо будет осознанно подойти к выбору ПО для тестирования новых процессоров. Ведь с каждым обновлением аппаратная часть все меньше влияет на производительность и все больше становится заметна зависимость от программ. И наибольшие дивиденды получит тот производитель, который сможет в полной мере поддержать и заинтересовать разработчиков в своих решениях. Пока на стороне AMD проект Mantle и технология HSA, что позволяет ей, как минимум, бороться на равных с конкурентом. А через год, если ситуация останется прежней, можно будет говорить и о преимуществе, пусть не фактическом в скорости, а тактическом – в разработке аппаратно-программной связки.
Единственное, что волнует – это возросшая стоимость APU Kaveri. Негативно на покупательский спрос может повлиять и смена сокета. Хотя Intel же меняет платформы, так почему бы AMD не попробовать?
С моей точки зрения A10-7850К удался. Пусть его CPU часть вряд ли займет первые места по скорости, зато сбалансированность вычислительной и графической составляющих вполне позволяет создать мини-систему, которая позволит не только работать, но и играть. С другой стороны, новые и модернизированные шины негативно повлияли на разгон. Частотный потенциал CPU остался прежним – 4-4.5 ГГц, а вот шина памяти стала очень чувствительной и теперь получить работу памяти на частотах выше 2.4 ГГц сложно.
На этом пока все. В скором времени вас ждет подробный рассказ о Mantle, Dual Graphics и результаты очередного тестирования.
Выражаем благодарность за помощь в подготовке материала: