чего ждать игрокам и разработчикам?
Всё, что нужно знать о DirectX 12
Наверняка, многие уже предвкушают улучшение графики в своих компьютерных играх. Что же вам нужно знать о DX12.
Номер 10.
Кардинальное повышение вызовов прорисовки.
Что такое вызов прорисовки? Каждый раз, когда вершину, плоскость или ядро требуется отрендерить посылается вызов прорисовки на центральный процессор. DX12 делает эту работу менее требовательной для процессора, что позволяет повысить количество вызовов прорисовки. Это отлично, потому что на одном экране сможет поместиться значительно больше объектов. DX12 увеличит производительность в несколько раз.
Номер 9.
Раздельный рендеринг. Эта технология позволяет вашему компьютеру прорисовывать часть экрана, половину или четверть — да и вообще любую дробную часть экрана в зависимости от количества ваших графических процессоров. Процессор сможет прорисовывать кусок экрана с помощью отдельного графического процессора. Так, например, половина экрана будет рендерится одним графическим процессором, а другая половина — другим.
Вам может показаться, что это не так важно, но это не так – это действие буквально разрезает на две или четыре части количество пикселей, с которыми работает графический процессор.
Пока все будет синхронизировано, в чем и заключается работа интефейса API, нагрузка будет уменьшена и для игроков с несколькими графическими процессорами, что повысит частоту кадров и позволит играть в новые игры.
Номер 8.
DX12, к сожалению, не повысит качества ваших нынешних игр.
Чтобы игра получила все преимущества DX12, API должен быть оптимизирован, или же создаваться изначально под DX12. Конечно, это не значит, что для ваших любимых игр не выйдет пача, однако, если в свойствах игры прямым текстом не указано, что игра сделана или адаптирована под DX12, производительность будет примерно на том же уровне, что и сейчас. Возможно, вам стоит написать разработчикам игр, в которые вы играете и намекнуть им на пач для DX12.
Номер 7.
Поток выполнения значительно улучшен.
В блок-посте о DX12 Microsoft признали, что API DX11 обладает некоторыми ограничениями. Например, мультипоточность не так хорошо оптимизирована, в то время, как в DX12 мультипоточность полностью перекроили. Также он позволяет процессору использовать все его ядра для сообщения с видеокартой. Ранее это было совершенно невозможно, а процессоры использовали одно ядро для большинства графических задач. То есть вы увидите графику более высокого качества. Если на практике теория окажется верной, то частота кадров не изменится.
Номер 6.
Понижение нагрузки на центральный процессор.
Вы знаете, что центральный процессор занимается обсчетом искусственного интеллекта, а также физикой и спецэффектами. Поскольку искусственный интеллект, физика, и спецэффекты требуют серьёзных вычислений, обычно всем этим приходится загружать центральный процессор. Графический и центральный процессоры совершенно разные. Графический процессор обсчитывает геометрию, а центральный процессор делает все остальные виды вычислений. DX12 уменьшает нагрузку на все виды вычислений. Вы могли заметить, что развитие центральных процессоров замедлилось, а новые графические процессоры выходят все чаще. DX12 приспосабливается к этому, оптимизируя данные, которые отправляются на ЦП до их фактической отправки. Таким образом, нагрузка на центральный процессор снижается, и ЦП быстрее обрабатывает большое количество ИИ физики и спецэффектов.
Номер 5.
Смешение брендов и графических процессоров.
NVIDIA и AMD имеют некоторые значительные отличия. В принципе, и сейчас можно запускать игры на видео картах различных производителей одновременно, хотя это может стать проблемой. Как хорошо, это будет работать на вашем компьютере в первую очередь зависит о того, насколько хорошо оптимизирован движок. Есть вероятность того, что всё буде работать нормально, однако изначально не было какого-то единого стандарта, но API DX12 позволит без проблем работать с несколькими видеокартами различных производителей. В последствие, игра будет обладать всеми функциями, использующими одни и те же команды, т.е. графические карты будут работать практически или совсем бесшовно.
Номер 4.
Требования.
DX12 предназначен только для Windous10. То есть, чтобы наслаждаться улучшениями DX12, вам нужен Windous10. Также Вам, возможно, придется приобрести новую видеокарту. Видеокарты NVIDIA, поддерживающая DX12, основаны на архитектуре Кеплер (Keplar) или Максвелл (Maxwell). Это все карты серии 700 и старше. У AMD это видеокарта с графическим ядром нового поколения GCN, а также карты 2012 года серии HT-77, которая включает серию HD85, Radeon75 и так далее, все будущие карты от обоих производителей будут поддерживать DX12.
Номер 3.
Небольшой список игр, которые с выхода будут поддерживать все преимущества DX12.
Первой официальной игрой с поддержкой DX12 ,была Ashes of the Singularity. Также такую поддержку добавили в игры Rise of the Tomb Raider, Hitman, Gears of War Ultimate Edition, Total War Warhammer, а также Just Cause 3, The Elder Scrolls Online. Из новых игр поддержка будет в Deus Ex Mankind Divided и Star Citizen.
Номер 2.
DX12 значительно упростит процесс разработки.
Номер 1.
У DX12 появился конкурент. AMD долгое время разрабатывали API под названием Vulkan, который является прямым потомком Open GL. ValveSoftware официально поддержали Vulkan и сказали, что AMD движутся в правильном направлении. Valve является довольно крупной компанией, и их словам вполне можно доверять. Однако, не забывайте, что как и у всякой компании, у Valve, вероятно, в этой свой собственный интерес в плане денег. Это не значит, что они не правы, но всё-таки это мнение, а которое могли повлиять деньги. Vulkan можно будет использовать на Андроиде, что подразумевает гораздо большую гибкость, чем у DX12. Но, учитывая, что технологию разрабатывают AMD, то вероятно, что они воспользуются этим для продвижения своего собственного железа. Всё-таки здесь крутятся огромные финансовые вложения.
Нам многое известно о Вулкане. Мы знаем, что представители Valve и AMD утверждают, что это – лучший выбор. В то время, как представители Microsoft говорят, что лучший выбор – это DX12. Но нам придется ждать, пока оба продукта не завершат свою конечную разработку, чтобы мы смогли по достоинству оценить обе технологии и понять, какая из них работает лучше. Ещё многое неясно, и участие Valve подразумевает задействование их базы фанатов, да и Microsoft, владеющая Xbox, обладает своей базой фанатов. Это вполне может стать горячей темой для обсуждения в интернете в ближайшем будущем.
К слову об обсуждениях в интернете. Что думаете Вы? Вы поддерживаете DX12, или Вы – Вулканец? Как вы считаете, что станет стандартом? Пишите нам почту [email protected], звоните 8-495-741-86-27.
it-sgroup.ru
чего ждать игрокам и разработчикам?
В общем, на вопрос «Где я могу скачать DirectX 12?» пока нет ответа. Есть только определенные перспективы относительно того, что новая версия API принесет разработчикам и нам, геймерам. А пока что анонс DirectX 12 следует рассматривать как сигнал, что активная работа по развитию DirectX продолжается. Ранее отсутствие видимой активности со стороны Microsoft довело до того, что некоторые уже вообще поставили под сомнение выход новых версий DirectX. Речь идет о прошлогоднем интервью Роя Тейлора, вице-президента AMD по продажам в «канале» (Roy Taylor, Vice President of Global Channel Sales), ресурсу heise.de. Хотя такие заявления следует принимать, как говорится, «со щепоткой соли», особенно в свете собственной инициативы AMD — Mantle. Как бы то ни было, Microsoft решила напомнить о DirectX и действовать.
В отличие от предыдущих итераций, новый релиз сосредоточен не на графических эффектах и поддержке новых аппаратных функций GPU, а на оптимизации программного стека DirectX под уже существующее железо. AMD убедительно продемонстрировала, что в некоторых отношениях DirectX 11 является бутылочным горлышком, ограничивающим производительность системы. Конкретно: DirectX 11 неэффективен при большом количестве draw calls.
Ожидается, что благодаря DirectX 12 эффективность использования CPU увеличится на 50% по сравнению с показателями DX11. По крайней мере такой результат получен с помощью закрытой версии 3DMark 2011, портированной на DX12. Microsoft называет несколько факторов, благодаря которым это стало возможным.
Многопоточное исполнение инструкций драйвера
Результаты профилирования того же бенчмарка демонстрируют более эффективное распределение нагрузки на CPU между несколькими потоками. На диаграмме видно, что на четыре потока теперь распределяются не только самой программы 3DMark, но и драйвера графической карты — речь о компоненте, исполняемом в User Mode.
Кроме того, если присмотреться к диаграмме, то можно заметить, что при использовании DirectX 12 пропадает компонент графического драйвера в Kernel Mode. Речь идет о низкоуровневой подсистеме Direct3D, которая включает менеджер видеопамяти, планировщик GPU, а также miniport driver, который производитель GPU должен предоставить для непосредственного доступа к функциям железа.
DirectX 11DirectX 12Таким образом, вся кухня Direct3D теперь полностью переместилась в User Mode. Сам по себе такой шаг негативно отразится на производительности, но, по идее, он должен быть скомпенсирован за счет более эффективной многопоточности, а также отсутствия смены контекста между User Mode и Kernel Mode.
Pipeline State Objects
Кроме того, Microsoft непосредственно поработала над проблемой draw calls, которую столь успешно решает Mantle. Для этого потребовалась основательная переделка графического конвейера Direct3D. Здесь необходим небольшой ликбез относительно того, как выполняется рендеринг в Direct3D. Существует несколько стадий (stages) конвейера, которые на абстрактном уровне олицетворяют этапы подготовки изображения. Важно то, что стадии, вопреки тому, как это может показаться, не выполняются одна за другой в реальном времени. От runtime-компонента DirectX требуется определить состояние конвейера (pipeline state), представляющее собой совокупность состояний каждой из стадий, то есть параметры операций, которые выполняет GPU в процессе рендеринга, и ресурсы — данные, над которыми будут произведены операции (текстуры, вершины и так далее). Только когда все это собрано вместе, делается draw call — вызов, запускающий рендеринг объекта. И вот тогда miniport driver графического процессора, в свою очередь, транслирует pipeline state в набор инструкций для GPU на понятном ему языке (hardware state).
Последний этап вносит свой вклад в общее время отрисовки объекта (напомним, эта и все вышеупомянутые процедуры все еще выполняются на CPU). А если объектов на экране много, то возникает пресловутая проблема draw calls, когда производительность CPU становится бутылочным горлышком. AMD Mantle, будучи низкоуровневым API, уменьшает время подготовки конвейера к отдаче draw call просто за счет отсутствия этапа трансляции pipeline state в hardware state. Хотя кто знает, какие еще оптимизации в Mantle включила AMD.
Direct3D 12 по-прежнему является высокоуровневым API, относительно безразличным к железу, на котором выполняется рендеринг (GPU только сообщает о поддерживаемых им функциях). В нем проблема решается по-другому. Вместо того чтобы передавать драйверу pipeline state целиком в момент draw call, состояния множества отдельных стадий конвейера объединены в несколько более крупных объектов которые формируются незавимисо и отдаются драйверу немедленно. Таким образом, не дожидаясь draw call, драйвер может сразу конвертировать PSO в аппаратные инструкции и чуть ли не отправить последние в регистры GPU (в источнике на MSDN этот момент не совсем понятен). Кроме того, укрупнение объектов, олицетворяющих состояния стадий конвейера, позволяет драйверу быстрее разрешать зависимости между последними. Если в процессе подготовки к draw call какой-либо из PSO поменялся, также требуется пересчитать только соответствующие инструкции, а не hardware state целиком.
Также не совсем ясно, почему именно раздельная репрезентация pipeline state должна привести к драматическому уменьшению времени подготовки к draw call. Так или иначе, на трансляцию pipeline state в hardware state все равно расходуется процессорное время. Возможно, ранняя подготовка отдельных PSO как-то поможет быстрее разрешать зависимости при подготовке hardware state, о чем пишут на MSDN. Может быть, преимущество будет получено за счет исполнения runtime-компонента Direct3D и драйвера GPU на разных потоках.
Command lists, bundles
DirectX 12 также представляет новую модель управления нагрузкой GPU с помощью списков команд (command lists). В модели DirectX 11 уже существует этот термин. API предоставляет два типа контекста устройства (device context): immediate context и deferred context. В первом случае команды непосредственно отправляются на драйвер GPU, во втором — записываются списки команд, которые затем могут воспроизводиться в immediate context. Нововведение DX12 состоит в том, что драйвер GPU в модели Direct3D 11 может заранее просчитывать низкоуровневые инструкции на основе различных списков команд.
В дополнение к спискам команд в Direct3D 12 появилась еще одна сущность — bundles. Bundle представляет собой набор команд, которые могут быть исполнены неоднократно в сочетании с различными ресурсами — к примеру, для рендеринга идентичных объектов с разной текстурой. В этом случае от драйвера требуется только один раз подготовить инструкции для GPU.
Совместимость, выводы
В отличие от предшествующих версий, DirectX 12 не потеряет совместимости с уже существующими GPU, поддерживающими DirectX 11. NVIDIA уже заявила, что DX12 будет принят процессорами на архитектуре Fermi, Kepler и Maxwell. AMD гарантирует совместимость для GPU на архитектуре GCN, Intel — для графики Iris и Iris Pro в чипах Haswell. DirectX 12 также ожидает портирование на Xbox One.
Впрочем, появилась информация о некоторых дополнительных функциях DirectX 12(*), которые все-таки потребуют аппаратных модификаций GPU. В целом эту неопределенность, вместе с долгим временем ожидания первых игр с поддержкой DirectX 12, можно рассматривать как знак того, что разработка API пока находится на весьма ранней стадии. В пользу данного предположения говорит и тематика оптимизации использования CPU, которая объединяет DX12 и AMD Mantle, представленный относительно недавно — осенью прошлого года.
Естественно, что DirectX 12 бросает тень на будущее инициативы AMD, которая довольно успешно стартовала и набирает обороты, получая поддержку в популярных игровых движках (Frostbite 3, следующая версия CryEngine). Возможно, именно AMD мотивировала Microsoft тем, что привлекла внимание к недостаткам DirectX 11, но Mantle через полтора-два года уже перестанет быть единственным API, который дает возможность их избежать. При этом совместимость DirectX 12 не ограничивается видеоадаптерами на
infoportalru.ru
Качество Hitman сравнили на DirectX 11 и DirectX 12 в новом видео
Hitman |
Перезагрузка Hitman стала одной из первых игр, которые поддерживают DirectX 12 с момента релиза. Поэтому для любителей графики грех было не сделать наглядное сравнение визуального оформления проекта студии IO Interactive на разных версиях графического API. Как стало известно Gamebomb.ru, на канале Candyland в сервисе YouTube появилось как раз такое сравнение.
«В данном видео мы сравнивали производительность и визуальные эффекты игры Hitman при использовании DirectX 11 и DirectX 12 на РС на максимальных настройках. Для сравнения использовалась видеокарта Nvidia GeForce GTX 980. Обращаем внимание, что никакой ошибки тут нет. Похоже, что видеокарты Nvidia действительно не делают особой разницы между версиями DirectX, в то время как продукция AMD демонстрирует серьезное улучшение картинки», — говорится в описании ролика.
Различия в демонстрируемой картинке рассмотреть смогут только самые зоркие. Впрочем, в сети уже долгие месяцы ведется полемика о том, что архитектура видеокарт AMD прекрасно подходит для последней версии графического API от Microsoft, в отличие от Nvidia. Как бы то ни было, нужно отметить, что DirectX 12 скорее увеличивает эффективность работы видеокарты, а не влияет на качество графики игры в целом.
По данным Gamebomb.ru, реализация поддержки нового графического интерфейса в Hitman для некоторых фанатов игры вышло боком. На странице игры в сети Steam участились жалобы от геймеров по поводу вылета игры при включенном DirectX 12. В дополнение, в некоторых случаях игра наотрез отказывается применять те или иные настройки графики, выбранные пользователем.
Новости по теме:
gamebomb.ru
Страница 1 из 3123»consei.ru
Сравнение производительности видеокарт в DirectX 11, DirectX 12 и Vulkan, часть 2 (слабый CPU)
Эра Direct3D 12 в компьютерных играх официально наступила, и нет никаких сомнений в том, что этой технологии принадлежит будущее, — столь много усовершенствований вобрал в себя новый интерфейс программирования. Direct3D 12 (и его кроссплатформенный коллега Vulkan) позволяет игровому движку более эффективно распоряжаться ресурсами GPU за счет прямого управления теми задачами, которые в предыдущих итерациях API выполнял драйвер или сами библиотеки Direct3D. Современные GPU в полной мере поддерживают функции рендеринга Direct3D 12 и обеспечивают эффективную интеграцию графики с вычислениями общего назначения (так называемыми асинхронными вычислениями).
Вот только на практике API нового поколения еще далеки от реализации всего заложенного в них потенциала. Не будем приукрашивать картину, которая открылась в первой части тестирования видеокарт в Direct3D 12 и Vulkan. Фактически лишь две из игр, которые мы постоянно используем в качестве бенчмарков GPU, показали, на что способно новое ПО при должном старании разработчиков, — мы говорим о Ashes of the Singularity и DOOM. В остальных тестах при смене API можно рассчитывать в лучшем случае на умеренный рост быстродействия, и то с массой оговорок.
Так, среди графических процессоров последних поколений только большие чипы AMD — Hawaii (Radeon R9 390X), Fiji (Radeon R9 Fury X) и Vega (Radeon RX Vega 64) — проявили большую симпатию по отношению к Direct3D 12. На быстродействие флагманской видеокарты NVIDIA (GeForce GTX 1080 Ti) программный интерфейс в среднем никак не влияет, а остальные «зеленые» процессоры работают под ним хуже, чем под старым. Наконец, Microsoft невольно выдала черную метку чипам с архитектурой Kepler и Maxwell, которые, по всей видимости, уже никогда не обретут полноценной поддержки в игровых движках под Direct3D 12.
Слабость API нового поколения является обратной стороной их силы: «тонкие» библиотеки Direct3D 12 отдали множество функций разработчикам игровых движков, а внедрение нужных приемов программирования в массовом ПО идет с запозданием. Неудивительно, ведь в игровых компьютерах по-прежнему стоит масса видеокарт, которые в лучшем случае лишь формально совместимы с Direct3D 12 и Vulkan, поэтому мощную оптимизацию игр под новые API пока можно наблюдать лишь в отдельных проектах на основе собственных движков.
Графические API и процессорозависимость
Однако часть функций Direct3D 12 и Vulkan не требует от разработчиков игр особенных усилий. Сама структура конвейера этих API позволяет снизить нагрузку на центральный процессор за счет сокращения времени подготовки draw call, что особенно важно, когда на экране присутствует множество отдельных моделей [прим.: Draw call — команда, требующая создать единственную полигональную сетку (mesh)] .
Впервые на эту проблему обратили внимание AMD и DICE, создатели проприетарного низкоуровневого интерфейса Mantle. Первым тайтлом с поддержкой Mantle стала Battlefield 4, но тогда, в 2014 году, игровая графика не была настолько богата геометрией, чтобы центральный процессор ограничивал частоту смены кадров в сбалансированной системе. Даже год спустя мы пришли к выводу (см. наше тестирование процессорозависимости), что любой худо-бедно современный процессор Intel с четырьмя ядрами раскрывает потенциал топовых GPU того времени.
Но за прошедшее время обстановка поменялась: игры стали сложнее, а GPU получили многократно возросшую вычислительную мощность. CPU, напротив, развиваются достаточно медленно с точки зрения однопоточной производительности, а пятое, шестое, седьмое и так далее ядра в играх используются редко. Многие геймеры производили апгрейд с двухъядерного процессора на четырехъядерный с расчетом не менять его еще долгие годы, поэтому сейчас вопрос процессорозависимости вновь стал актуальным.
Самый яркий, хотя и довольно экзотический пример — стратегия Ashes of the Singularity. Ее движок именно за счет быстрой отдачи draw call сильно наращивает быстродействие под Direct3D 12 и Vulkan даже при мощном центральном процессоре. Но в нашей методике есть и другие игры с богатой геометрией. В этот раз мы проведем тестирование на платформе с четырьмя ядрами и сниженной частотой CPU, а потом сравним результаты с тем, что было получено ранее при помощи высокопроизводительного процессора.
В предыдущей части тестирования процессор нашего тестового стенда, Core i7-5960X, работал на постоянной частоте 4 ГГц при восьми активных ядрах. Для имитации более слабого CPU мы отключили половину ядер и установили тактовую частоту на отметке 2,5 ГГц.
Честно говоря, это не очень реалистичная конфигурация для современных CPU Intel (даже младшие модели Core i5 поколений Caby Lake и Coffee Lake берут более высокие частоты при полной загрузке четырех ядер), но она вполне соответствует некоторым моделям предыдущих поколений. 1,5 ГГц — подходящая разница, чтобы наглядно показать связь версии графического API и процессорозависимости, а измерение кадровой частоты на всем спектре моделей современных CPU пусть останется задачей для следующей части нашей серии «Процессорозависимость».
С другой стороны, мы зашли не настолько далеко, чтобы оставить два активных ядра. В современном домашнем ПК такому процессору уже не место, и некоторые игры просто не будут нормально работать на двух ядрах.
По итогам первого тестирования мы дисквалифицировали из участников несколько видеокарт, в первую очередь GeForce GTX 970 и GTX 980 Ti, которые не годятся для игр под Direct3D 12 и Vulkan в силу архитектурных особенностей. Кроме того, были исключены бюджетные игровые видеокарты Radeon RX 560 и GeForce GTX 1050 Ti — у них попросту недостаточно мощные GPU, чтобы оптимизация API сыграла большую роль даже на слабой платформе.
Наконец, мы нашли несколько ошибок в тестовых результатах первой части стати и приведем все данные (как при сильном, так и при слабом CPU) в обобщающих графиках и таблицах. Для того чтобы обеспечить корректное сравнение, новые результаты получены на тех же версиях драйверов (Radeon Software Crimson Adrenalin Edition 18.1.1 и GeForce Game Ready Driver 390.65), которые мы использовали в прошлый раз. Драйверы довольно старые, но, если бы мы повторили тесты на актуальных версиях, это бы не повлияло сколь-либо существенно на результаты. В конце концов, самая свежая из выбранных игр вышла еще в сентябре прошлого года, и драйверы уже содержат оптимизации для всех них. За прошедшее время каких-либо глобальных изменений в ПО, которые поднимают общее быстродействие, производители GPU не внесли.
Тестовый стенд, методика тестирования
Конфигурация тестовых стендов | |
---|---|
CPU | Intel Core i7-5960X (4 ядра @ 2,5 ГГц, постоянная частота) |
Intel Core i7-5960X (8 ядер @ 4,0 ГГц, постоянная частота) | |
Материнская плата | ASUS RAMPAGE V EXTREME |
Оперативная память | Corsair Vengeance LPX, 2133 МГц, 4 × 4 Гбайт |
ПЗУ | Intel SSD 520 240 Гбайт + Crucial M550 512 Гбайт |
Блок питания | Corsair AX1200i, 1200 Вт |
Система охлаждения CPU | Thermalright Archon |
Корпус | CoolerMaster Test Bench V1.0 |
Монитор | NEC EA244UHD |
Операционная система | Windows 10 Pro x64 |
ПО для GPU AMD | |
Все видеокарты | Radeon Software Crimson Adrenalin Edition 18.1.1 |
ПО для GPU NVIDIA | |
Все видеокарты | GeForce Game Ready Driver 390.65 |
Бенчмарки: игры | ||||
---|---|---|---|---|
Игра (в порядке даты выхода) | API | Настройки, метод тестирования | Полноэкранное сглаживание | |
1920 × 1080 / 2560 × 1440 | 3840 × 2160 | |||
Rise of the Tomb Raider | DirectX 11/12 | Макс. качество, VXAO выкл. Встроенный бенчмарк | Выкл. | |
Tom Clancy’s The Division | DirectX 11/12 | Макс. качество, HFTS выкл. Встроенный бенчмарк | SMAA 1x Ultra + TAA: Supersampling | TAA: Stabilization |
DOOM | OpenGL 4.5 / Vulkan | Макс. качество. Миссия Foundry | TSSAA 8TX | Выкл. |
Deus Ex: Mankind Divided | DirectX 11/12 | Макс. качество. Встроенный бенчмарк | Выкл. | |
Battlefield 1 | DirectX 11/12 | Макс. качество. OCAT, начало миссии Over the Top | TAA | |
Ashes of the Singularity: Escalation | DirectX 11/12/ Vulkan | Выкл. | ||
Total War: WARHAMMER II, встроенный бенчмарк | DirectX 11/12 | Макс. качество. Встроенный бенчмарк (Battle Benchmark) | Выкл. |
В тестовую обойму вошли семь игр 2016–2017 годов выпуска, среди которых шесть поддерживают API Direct3D 12 и две — Vulkan. Доподлинно известно, что все они так или иначе задействуют функцию Multi-Engine («асинхронные вычисления»). И пара слов о DOOM. Эта игра использует так называемые Shader Intrinsitc Functions — шейдеры, непосредственно исполняемые на GPU избранной архитектуры, в обход стадии компиляции из высокоуровневого кода. Только Vulkan, в отличие от OpenGL и Direct3D любой версии, дает такую возможность, и только AMD выпустила для Vulkan соответствующее расширение. Собственные Shader Intrinsics есть и у NVIDIA, но они доступны только через проприетарый интерфейс NVAPI или библиотеки GameWorks. Именно поэтому Vulkan в DOOM принес GPU AMD такой мощный прирост быстродействия, хотя не обижены и чипы NVIDIA.
Тесты выполнены при разрешениях 1080p, 1440p и 2160p. Настройки подобраны таким образом, чтобы обеспечить высокую частоту смены кадров (от 60 FPS и выше в режиме 1080p) на мощных GPU последнего поколения.
Участники тестирования
www.capitalwm.ru
Выигрыш в производительности от перехода игр с DirectX 11 на DirectX 12 или Vulkan совсем не гарантирован, а лучше сказать — гарантирован не всем. Проверим, что прогресс игрового ПО на данный момент принес видеокартам NVIDIA и AMD трех различных поколений ⇣ Содержание ⇡#От теории — к практикеМы долго говорили об особенностях API нового поколения и готовы перейти к бенчмаркам, но сначала придется признать: все сказанное в теоретической части не получится напрямую связать с цифрами. Поддержка Direct3D 12 или Vulkan в какой-либо игре еще не значит, что ее движок задействует ту или иную из новых функций, а главное, нам неизвестно, насколько широко и эффективно она используется. Также не будем забывать, что Direct3D 12 и Vulkan являются сравнительно низкоуровневыми API, и задача оптимизации быстродействия под GPU различной архитектуры лежит на плечах разработчиков движка (некоторые из которых прямо сообщают, что поддержка Direct3D — экспериментальная опция и ожидать чудес не стоит). Эти переменные останутся скрыты от глаз исследователя без полноценного профайлинга приложений — задачи, которая выходит далеко за рамки данного обзора. Как бы то ни было, результаты тестирования дают представление о быстродействии видеокарт в API нового поколения на данный момент — вне зависимости от того, как могла бы сложиться идеальная картина. ⇡#Тестовый стенд, методика тестирования
В тестовую обойму вошли семь игр 2016–2017 годов выпуска, среди которых шесть поддерживают API Direct3D 12, а две — Vulkan. Доподлинно известно, что все они так или иначе задействуют функцию Multi-Engine («асинхронные вычисления»). И пара слов об отдельных играх.
Тесты выполнены при разрешениях 1080p, 1440p и 2160p. Настройки выбраны таким образом, чтобы обеспечить высокую частоту смены кадров (от 60 FPS и выше в режиме 1080p) на мощных GPU последнего поколения и приемлемую частоту (от 30 FPS в 1080p) на ускорителях среднего уровня, что соответствует реальным сценариями использования. Для слабых видеокарт (Radeon RX 560 и GeForce GTX 1050 Ti) выбраны иные, более щадящие параметры качества графики в ряде игр. При таких настройках мы едва ли сможем в полной мере оценить экономию ресурсов CPU на подготовке draw call, которую обеспечивает Direct3D и Vulkan. Испытания API Mantle в свое время показали, что максимальный рост быстродействия возникает в несбалансированных конфигурациях (мощный GPU и двухъядерный центральный процессор) либо при кадровой частоте свыше 100 FPS. Тестирование на платформе со сниженным числом ядер и частотой CPU будет представлено во второй части статьи.
Участники тестирования Для тестирования были избраны пять видеокарт на базе GPU каждого производителя в диапазоне архитектур от GCN 1.1 (Radeon R9 390X) до GCN 1.4 (Radeon RX Vega 64) и от Kepler (GeForce GTX 780 Ti) до Pascal (GeForce GTX 1080 Ti) соответственно. ⇡#AMD Radeon R9 390X
⇡#AMD Radeon R9 Fury X
⇡#AMD Radeon RX 560
⇡#AMD Radeon RX 580
⇡#AMD Radeon RX Vega 64
Если Вы заметили ошибку — выделите ее мышью и нажмите CTRL+ENTER. |
3dnews.ru
В видеоиграх не видно разницы между DirectX 11 и DirectX 12
Кадр демонстрации Agni’s Philosophy |
Вокруг нового программного интерфейса DirectX 12 ходит множество слухов и многие геймеры ждут от него чуть ли не чуда. Как выяснил Gamebomb.ru, специалисты индустрии отмечают, что практически никакой разницы видно не будет.
Если с переходом от DirectX 10 на DirectX 11 любители видеоигр могли насладиться такими визуальными технологиями, как асинхронные шейдеры и многопотоковый буфер записи, то новшества DirectX 12 будут сугубо техническими. Для сравнения редакция PCGamesN опубликовала видео-сравнение игры Ashes of the Singularity на различных API, а также изображение с включенной и выключенной тесселяцией на DirectX 11.
Ключевым отличием работы DirectX 12 является параллельная обработка команд для графического адаптера. Другими словами, вместо того, чтобы обрабатывать информацию по очереди, видеокарта может параллельно обрабатывать данные целыми группами. Все это ускоряет производительность и повышает частоту кадров в секунду. Однако визуально никаких отличий не будет.
Тем не менее, на примере Ashes of the Singularity видно, что игры будущего смогут свободнее и быстрее работать с большим количеством объектов на одном экране. По данным Gamebomb.ru, более быстрая обработка информации также позволит несколько разгрузить мощности компьютера, чтобы занять их обработкой данных других систем.
Новости по теме:
gamebomb.ru
Всё, что нужно знать о DirectX 12
Наверняка, многие уже предвкушают улучшение графики в своих компьютерных играх. Что же вам нужно знать о DX12.
Номер 10.
Кардинальное повышение вызовов прорисовки.
Что такое вызов прорисовки? Каждый раз, когда вершину, плоскость или ядро требуется отрендерить посылается вызов прорисовки на центральный процессор. DX12 делает эту работу менее требовательной для процессора, что позволяет повысить количество вызовов прорисовки. Это отлично, потому что на одном экране сможет поместиться значительно больше объектов. DX12 увеличит производительность в несколько раз.
Номер 9.
Раздельный рендеринг. Эта технология позволяет вашему компьютеру прорисовывать часть экрана, половину или четверть — да и вообще любую дробную часть экрана в зависимости от количества ваших графических процессоров. Процессор сможет прорисовывать кусок экрана с помощью отдельного графического процессора. Так, например, половина экрана будет рендерится одним графическим процессором, а другая половина — другим.
Вам может показаться, что это не так важно, но это не так – это действие буквально разрезает на две или четыре части количество пикселей, с которыми работает графический процессор.
Пока все будет синхронизировано, в чем и заключается работа интефейса API, нагрузка будет уменьшена и для игроков с несколькими графическими процессорами, что повысит частоту кадров и позволит играть в новые игры.
Номер 8.
DX12, к сожалению, не повысит качества ваших нынешних игр.
Чтобы игра получила все преимущества DX12, API должен быть оптимизирован, или же создаваться изначально под DX12. Конечно, это не значит, что для ваших любимых игр не выйдет пача, однако, если в свойствах игры прямым текстом не указано, что игра сделана или адаптирована под DX12, производительность будет примерно на том же уровне, что и сейчас. Возможно, вам стоит написать разработчикам игр, в которые вы играете и намекнуть им на пач для DX12.
Номер 7.
Поток выполнения значительно улучшен.
В блок-посте о DX12 Microsoft признали, что API DX11 обладает некоторыми ограничениями. Например, мультипоточность не так хорошо оптимизирована, в то время, как в DX12 мультипоточность полностью перекроили. Также он позволяет процессору использовать все его ядра для сообщения с видеокартой. Ранее это было совершенно невозможно, а процессоры использовали одно ядро для большинства графических задач. То есть вы увидите графику более высокого качества. Если на практике теория окажется верной, то частота кадров не изменится.
Номер 6.
Понижение нагрузки на центральный процессор.
Вы знаете, что центральный процессор занимается обсчетом искусственного интеллекта, а также физикой и спецэффектами. Поскольку искусственный интеллект, физика, и спецэффекты требуют серьёзных вычислений, обычно всем этим приходится загружать центральный процессор. Графический и центральный процессоры совершенно разные. Графический процессор обсчитывает геометрию, а центральный процессор делает все остальные виды вычислений. DX12 уменьшает нагрузку на все виды вычислений. Вы могли заметить, что развитие центральных процессоров замедлилось, а новые графические процессоры выходят все чаще. DX12 приспосабливается к этому, оптимизируя данные, которые отправляются на ЦП до их фактической отправки. Таким образом, нагрузка на центральный процессор снижается, и ЦП быстрее обрабатывает большое количество ИИ физики и спецэффектов.
Номер 5.
Смешение брендов и графических процессоров.
NVIDIA и AMD имеют некоторые значительные отличия. В принципе, и сейчас можно запускать игры на видео картах различных производителей одновременно, хотя это может стать проблемой. Как хорошо, это будет работать на вашем компьютере в первую очередь зависит о того, насколько хорошо оптимизирован движок. Есть вероятность того, что всё буде работать нормально, однако изначально не было какого-то единого стандарта, но API DX12 позволит без проблем работать с несколькими видеокартами различных производителей. В последствие, игра будет обладать всеми функциями, использующими одни и те же команды, т.е. графические карты будут работать практически или совсем бесшовно.
Номер 4.
Требования.
DX12 предназначен только для Windous10. То есть, чтобы наслаждаться улучшениями DX12, вам нужен Windous10. Также Вам, возможно, придется приобрести новую видеокарту. Видеокарты NVIDIA, поддерживающая DX12, основаны на архитектуре Кеплер (Keplar) или Максвелл (Maxwell). Это все карты серии 700 и старше. У AMD это видеокарта с графическим ядром нового поколения GCN, а также карты 2012 года серии HT-77, которая включает серию HD85, Radeon75 и так далее, все будущие карты от обоих производителей будут поддерживать DX12.
Номер 3.
Небольшой список игр, которые с выхода будут поддерживать все преимущества DX12.
Первой официальной игрой с поддержкой DX12 ,была Ashes of the Singularity. Также такую поддержку добавили в игры Rise of the Tomb Raider, Hitman, Gears of War Ultimate Edition, Total War Warhammer, а также Just Cause 3, The Elder Scrolls Online. Из новых игр поддержка будет в Deus Ex Mankind Divided и Star Citizen.
Номер 2.
DX12 значительно упростит процесс разработки.
Как я и говорил, API в DX12 куда проще, чем DX11. Он более сжатый и обладает меньшим количеством команд с похожими функциями. Будут ли разработчики использовать движок другого производителя, или же свой собственный, им нужно будет выполнять определенный графические действия, для чего используется определённый набор команд, то есть в какой-то степени это уменьшит объём работ в этом направлении. Помимо этого, он будет лучше распределять работу, которая потребует меньше затрат на оптимизацию в дальнейшем процессе разработки. Таким образом, разработка игр будет протекать более прямолинейно. Это позволит разработчикам сосредоточиться на творческой составляющей игры. Конечно же, процесс разработки игры проще не станет, поскольку на это по-прежнему требуется много знаний и умений, а также либо самостоятельные практики, либо обучение. Но чем больше времени разработчики будут уделять творческому процессу, тем лучше.
Номер 1.
У DX12 появился конкурент. AMD долгое время разрабатывали API под названием Vulkan, который является прямым потомком Open GL. ValveSoftware официально поддержали Vulkan и сказали, что AMD движутся в правильном направлении. Valve является довольно крупной компанией, и их словам вполне можно доверять. Однако, не забывайте, что как и у всякой компании, у Valve, вероятно, в этой свой собственный интерес в плане денег. Это не значит, что они не правы, но всё-таки это мнение, а которое могли повлиять деньги. Vulkan можно будет использовать на Андроиде, что подразумевает гораздо большую гибкость, чем у DX12. Но, учитывая, что технологию разрабатывают AMD, то вероятно, что они воспользуются этим для продвижения своего собственного железа. Всё-таки здесь крутятся огромные финансовые вложения.
Нам многое известно о Вулкане. Мы знаем, что представители Valve и AMD утверждают, что это – лучший выбор. В то время, как представители Microsoft говорят, что лучший выбор – это DX12. Но нам придется ждать, пока оба продукта не завершат свою конечную разработку, чтобы мы смогли по достоинству оценить обе технологии и понять, какая из них работает лучше. Ещё многое неясно, и участие Valve подразумевает задействование их базы фанатов, да и Microsoft, владеющая Xbox, обладает своей базой фанатов. Это вполне может стать горячей темой для обсуждения в интернете в ближайшем будущем.
К слову об обсуждениях в интернете. Что думаете Вы? Вы поддерживаете DX12, или Вы – Вулканец? Как вы считаете, что станет стандартом? Пишите нам почту [email protected], звоните 8-495-741-86-27.
it-sgroup.ru
Отличия DirectX 12 от DX11 разглядеть непросто
Мы достаточно наслышаны о производительности и инновационных элементах DirectX 12, в частности о многопоточной буферизации и асинхронных шейдерах. Но вот в чём дело: переход между DX10 и DX11 проявлялся не только в частоте кадров, но также в реализации новых графических эффектов, к примеру, динамической тесселяции. Перемены между DX11 и DX12 заметить гораздо сложнее. Нет ничего такого, на что можно было бы показать и заявить: “это – DirectX 12”. Посмотреть все игровые видеокарты с поддержкой DirectX 12.
Ролик издания PC Games Hardware демонстрирует работу Ashes of Singularity на обоих API. Попытаемся напрячь глаза и разглядеть какие-нибудь отличия:
Да-да. Окружение выглядит идентичным, количество объектов не изменилось, уровень детализации одинаков. Насыщенность эффектов оружия немного подросла, но нельзя сказать, что это день и ночь.
Официальное мнение AMD (данная компания – своего рода лидер API, она внедряет поддержку ассинхронных вычислений на аппаратном уровне) указывает, что разница между 11 и 12 заключается в производительности:
“Асинхронные шейдеры очень важны, поскольку с их помощью уменьшается задержка рендеринга графики. Меньше задержка – выше производительность. “Производительность” может означать повышение fps во время игры и ускорение генерации и ответа VR-окружения. Кроме того, разбитие детализации на тонкие уровни ещё сильнее сокращает рабочее время – как говорится, работаем не тяжелее, а умнее”.
“Геймеры знают, что прежде чем разработчики смогут взять эту технологию на вооружение, они должны её увидеть – и мы заботимся об этом. Наше сотрудничество с разработчиками Oxide/Stardock ( и другими неназванными) на предмет крутых новых технологий во время проведения AMD Gaming Evolved Program показало здоровый интерес игроделов к этим функциям. Это служит хорошим предзнаменованием для всех!”.
Это в самом деле важно – раскрытие потенциала DirectX12 будет зависеть от разработчиков игр – как именно они будут использовать улучшенную линию связи между GPU и CPU. Ведь принципиально новых технологий (вроде теселляции в DX11) в DirectX12 нет. В ролике видно, каким количеством независимых 3D объектов наполнила поле боя в Ashes of the Singularity компания Oxid.
С таким количеством объектов DX11 тоже справляется – правда со скоростью ленивца, плывущего в бассейне. Ни один разработчик в здравом уме не будет так нагружать оборудование. Подытожим: Визуальные эффекты DirectX12 не отличаются от знакомых нам игр с хорошей графикой, но работает он быстрее и лучше. Уверен, как только разработчики изучат его как следует, они найдут способ расширить возможности DX12 ещё глубже.
etalongame.com
Что такое DirectX 12 и какие преимущества он несет?
DirectX 12 — это особый компонент, обеспечивающий слаженную работу ОС и других приложений, в основном игр, с драйверами видеокарты.
Если вы регулярно следили за нашей серией материалов, связанных с новой Windows 10, вы, вероятно, заметили, что не редко в них упоминался DirectX 12. Это не случайно – с того момента, когда Microsoft заговорила о следующей версии операционной системы, компания не раз подчеркивала центральную роль, отведенную в ней последнему DirectX. Почему это так важно для вас, как пользователя, и какие улучшения принесет новая версия графического интерфейса с предстоящей Windows 10? Сегодня мы постараемся кратко ответить на эти вопросы.
Немного предыстории
Хотя он часто воспринимается как неотъемлемая часть каждой Windows, на самом деле впервые DirectX появился во втором пакете обновления для Windows 95. Он представляет собой комплексный набор различных модулей, объединенных под общим названием «интерфейс прикладного программирования» (application programming interface или API). Каждый из них выполняет многочисленные и разнообразные функции, но их главная цель заключается в обеспечении прямого доступа для различных мультимедийных и видеопрограмм (в основном игры, конечно) к аппаратной части компьютерной системы, работающей под управлением Windows.
До появления первой версии DirectX (которая носила серийный номер 2.0а) с Windows 95 Service Release 2, запуск и выполнение подобных приложений (игр) был громоздким и сложным процессом. Чтобы получить прямой доступ к аппаратному обеспечению, программа обращалась к DOS – предшественник Windows без графического интерфейса. Это был, мягко говоря, неэффективный механизм использования компонентов, таких как оперативная память, видео и звуковая карта и т.д.
С появлением Windows 95 Microsoft решила, что пора открыть новую страницу в своей истории. Компания осознала, что для того чтобы сделать новую операционную систему популярной среди обычных пользователей и особенно среди геймеров, одна должна предложить более эффективную рабочую среду для работы игровых тайтлов.
Так родился DirectX – программный интерфейс нового поколения, благодаря которому все мультимедийные приложения, способные его использовать, получили более быстрый доступ к необходимому им оборудованию.
В начале принятие нового API пошло сравнительно медленно, особенно на фоне достаточно сильной конкуренции со стороны появившегося несколькими годами ранее OpenGL. Постепенно, однако, DirectX становился все лучше и лучше, и сегодня практически в одиночку доминирует в мире компьютерных видеоигр – по крайней мере, на платформе Windows.
Счастливый номер 12
Не сложно догадаться, что цифры в названии интерфейса указывают номер его версии. В данном случае мы говорим о двенадцатой версии DirectX, которая заслуживает особого внимание из всех одиннадцати других, которые предшествуют ей.
Правда в том, что все последнее десятилетие – с момента появления версии 10, Microsoft в основном «лежала на старых лаврах», если говорить о DirectX. Доминирующее положение интерфейса (и Windows в частности) в сегменте PC сделало компанию немного ленивой, и в результате большинство улучшений в версиях 10 и 11 были скорее эволюционными, чем революционными. Каждая из этих версий получила промежуточные обновления, которые добавили относительно небольшие оптимизации и новые, но не особенно впечатляющие возможности.
В отличие от них версия 12 является большим, решительным шагом вперед не только для DirectX в частности, но и для Microsoft в целом.
Поскольку Windows 10 будет единой платформой, работающей на смартфонах, планшетах, ноутбуках, настольных компьютерах и игровых консолях (Xbox One), появление DirectX 12 отразится на гораздо более широком спектре аппаратных устройств.
Владельцам Xbox One, например, новый интерфейс обещает ускорение возможностей рендеринга и, следовательно, более красивые на вид игры. Более того, в Microsoft надеются, что переход к DirectX 12 уничтожит превосходство их главного конкурента – консоли Sony PlayStation 4, которая в настоящее время предлагает более высокую вычислительную мощность, чем Xbox One. Например, новый API позволит разработчикам игр получить более быстрый доступ к высокопроизводительному ESRAM буферу Xbox, а это в свою очередь приведет к росту количества кадров в секунду.
DirectX 12 обещает и ускорение приборной панели Xbox One, как и полноценную поддержку 4К видео.
Новая жизнь для старых компьютеров
Другое очень интересное обещание, связанное с DirectX 12, звучит так: оптимизация. Microsoft говорит, что только с обновлением до Windows 10 (и DirectX соответственно) мультимедийная (т.е. игровая) производительность вашего компьютера может увеличиться почти в два раза. А предварительные тесты PCWord показали, что рост может быть даже больше.
За счет чего можно достичь аналогичного скачка в производительности без замены аппаратных средств? Все очень просто – за счет полноценного использования ресурсов, которым располагает компьютер.
Сегодня практически все актуальные компьютеры, будь то мобильные или настольные, рассчитывают на процессор с более чем одним вычислительным ядром. Более того – в современных графических процессорах количество ядер измеряется тысячами.
Возвращаясь в прошлое, когда Intel закончила «войну за мегагерцы» и приняла концепцию повышения производительности посредством параллелизма, т.е. путем разделения операций/расчетов между двумя и более процессорными ядрами, тогдашнее программное обеспечение было не готового к такому гигантскому скачку вперед.
Ни массовые операционные системы (читай Windows), ни приложения, работающие под их управлением, не были оптимизированы так, чтобы максимально использовать преимущества от наличия более одного процессорного ядра.
Поэтому замена одноядерного на двух- или четырехъядерный процессор, несомненно, приводила к росту производительности, но не так драматично, как ожидали пользователи.
Одна из основных задач нового DirectX 12 как раз таки и заключается в том, чтобы позволить играм по максимуму использовать все доступные ядра процессора и нагружать их на полную мощность. Эффект от такой оптимизации мягко говоря впечатляет – результаты в популярном тесте 3D Mark показывают 10-15-кратное увеличение производительности при переходе от DirectX 11 к DirectX 12!
Тем не менее, это еще не все. Софтверный гигант обещает рост производительности не только для мощных десктопных систем, но и для более слабых устройств, таких как портативные компьютеры и планшеты с Windows.
Разумеется, это не означает, что они чудесным образом превратятся в полноценную альтернативу настольному игровому PC, но благодаря Windows 10 и DirectX 12 они предложат более гладкую и качественную графику.
Новый интерфейс обеспечит и гораздо более эффективный алгоритм распределения задач между интегрированной и дискретной графикой – функция, подобная той, которую предлагает нашумевшая несколько лет назад технология Virtu от компании Lucid.
И наконец – DirectX 12 подготовит Windows для нового мира разрешения 4К, которое мы надеемся, закрепится в мире ПК в ближайшие несколько лет.
Бесплатно скачать DirectX 12 можно с официального сайта.
windowstips.ru