Мы объясняем, почему amd улучшает DirectVid при переходе на 12
Оглавление:
- Накладные расходы являются причиной улучшения AMD с DirectX 12
- И почему AMD не любит Nvidia?
- А как насчет асинхронных шейдеров?
Вы наверняка читали или слышали, что видеокарты AMD намного лучше в DirectX 12, чем Nvidia, что архитектура, используемая в них, гораздо лучше подготовлена к работе с API нового поколения. Это утверждения, которые мы обычно видим каждый день, но действительно ли AMD лучше, чем Nvidia в DirectX 12? Мы расскажем вам все, что вам нужно знать в этом посте.
Накладные расходы являются причиной улучшения AMD с DirectX 12
С тех пор как DirectX 12 начал говорить, мы видим сравнительные графики, подобные следующим:
На этой графике сравниваются две эквивалентные видеокарты, такие как GeForce GTX 980 Ti и Radeon R9 Fury X. Если мы перейдем к предыдущим изображениям, то увидим, что AMD имеет брутальный прирост производительности при переходе с DirectX 11 на DirectX 12, по сравнению с Nvidia, он остается равный или даже теряет производительность при начале работы с новым API. Видя это, любой пользователь подумает, что карта AMD намного лучше, чем карта Nvidia.
Теперь мы переходим к следующему изображению:
На этот раз график сравнивает производительность GeForce GTX 980 Ti и Radeon R9 Fury X в DirectX 11 и DirectX 12. Мы видим, что в DirectX 11 карта Nvidia дает почти вдвое больше, чем AMD, а при переходе на DirectX 12 производительность выравнивается. Мы видим, что Radeon R9 Fury X значительно улучшает свою производительность при работе с DirectX 12, а GeForce GTX 980 Ti значительно улучшается. В любом случае производительность обоих под DirectX 12 одинакова, так как разница не достигает 2 FPS в пользу Fury X.
На данный момент мы должны спросить себя, почему AMD имеет такое улучшение при переходе на DirectX 12, а Nvidia улучшается гораздо меньше. AMD работает лучше под DirectX 12, чем Nvidia, или у него большие проблемы с DirectX 11?
Ответ заключается в том, что у AMD есть большая проблема с DirectX 11, проблема, которая заставляет ее карты работать хуже, чем у Nvidia. Эта проблема связана с использованием, которое драйверы карты делают с процессором, проблемой, известной как «Перегрузка» или перегрузка.
Видеокарты AMD очень неэффективно используют процессор под DirectX 11, чтобы проверить эту проблему, нам достаточно взглянуть на следующие видеоролики, в которых анализируется производительность Radeon R7 270X и GeForce GTX 750 Ti с процессором Core. i7 4790K, а затем с Core-i3 4130. Как мы видим, график AMD теряет гораздо большую производительность при работе с гораздо менее мощным процессором.
Far Cry 4
Ryse: Сын Рима
ХПК Advanced Warfare
Ключ к этому находится в « очереди команд » или списках команд в DirectX 11. Очень простым и понятным способом мы можем обобщить его так, что видеокарты AMD принимают все вызовы отрисовки в API и помещают их в одноядерное ядро делает их очень зависимыми от однопоточной мощности процессора, и поэтому они сильно страдают при работе с менее мощным процессором на ядро. Вот почему графика AMD сильно пострадала от процессоров AMD FX, гораздо менее мощных на ядро, чем у Intel.
Вместо этого Nvidia принимает вызовы отрисовки к API и распределяет их между различными ядрами процессора, при этом нагрузка распределяется, и используется намного более эффективно, и меньше энергии зависит от ядра процессора. Как следствие, AMD страдает гораздо больше, чем Nvidia под DirectX 11.
Проверить последнее очень просто, нам нужно только отслеживать AMD и видеокарту Nvidia под одной и той же игрой и тем же процессором, и мы увидим, как в случае с Nvidia все ядра работают гораздо более сбалансированным образом.
Эта проблема с накладными расходами устранена в DirectX 12, и это основная причина, по которой видеокарты AMD имеют огромный прирост производительности, начиная с DirectX 11 до DirectX 12. Если мы посмотрим на следующий график, то увидим, что в DirectX 12 производительность больше не теряется при переходе от двухъядерного процессора к одному из четырех.
И почему AMD не любит Nvidia?
Внедрение Nvidia командных очередей в DirectX 11 очень дорого, требует больших вложений денег и человеческих ресурсов. AMD оказалась в плохом финансовом положении, поэтому у нее нет тех ресурсов, которые Nvidia могла бы инвестировать. Кроме того, будущее идет через DirectX 12, и таких проблем не возникает, поскольку сам API отвечает за управление очередями команд гораздо более эффективным способом.
Кроме того, в подходе Nvidia существует проблема большей зависимости от оптимизации драйверов, поэтому Nvidia обычно первой выпускает новые версии своих драйверов каждый раз, когда на рынок выходит важная игра, хотя AMD поставила складывается на этом в последнее время. Преимущество подхода AMD заключается в том, что он намного меньше зависит от драйверов, поэтому его карты не нуждаются в новых версиях так же срочно, как у Nvidia, это одна из причин того, что видеокарты Nvidia стареют с время, когда они больше не поддерживаются.
А как насчет асинхронных шейдеров?
Также было много разговоров об асинхронных шейдерах, в связи с этим мы должны лишь сказать, что им придается большое значение, когда в действительности накладные расходы гораздо важнее и определяют производительность видеокарты. Nvidia также поддерживает их, хотя его реализация намного проще, чем AMD, причина этого в том, что его архитектура Pascal работает гораздо более эффективно, поэтому ей не нужно столько асинхронных шейдеров, сколько AMD.
Графика AMD включает ACE, которые представляют собой аппаратный движок, предназначенный для асинхронных вычислений, аппаратное обеспечение, которое занимает место на кристалле и потребляет энергию, поэтому его реализация не прихоть, а из-за серьезного недостатка архитектуры графического ядра. Далее от AMD с геометрией. Архитектура AMD очень неэффективна, когда речь идет о распределении рабочей нагрузки между различными вычислительными блоками и ядрами, которые их формируют, это означает, что многие ядра не работают и поэтому теряются. То, что делают ACE и асинхронные шейдеры, это «дают работу» этим ядрам, которые остались безработными, чтобы их можно было использовать.
В другой части мы имеем графику Nvidia, основанную на архитектурах Maxwell и Pascal, они гораздо более эффективны в геометрии, а число ядер намного меньше, чем у графики AMD. Это делает архитектуру Nvidia намного более эффективной, когда речь идет о разделении работы, и не так много ядер тратится впустую, как в случае AMD. Внедрение асинхронных шейдеров в Pascal осуществляется с помощью программного обеспечения, поскольку реализация аппаратного обеспечения не обеспечит практически никакого выигрыша в производительности, но это будет тормозить размер чипа и его энергопотребление.
На следующем графике показан прирост производительности AMD и Nvidia с асинхронными шейдерами Mark Time Spy 3D:
Будет ли Nvidia внедрять аппаратные асинхронные шейдеры в будущем, зависит от преимуществ, перевешивающих вред.
Facebook улучшает свою службу экстренной помощи при катастрофах
Facebook улучшает свою службу экстренной помощи при катастрофах. Узнайте больше об улучшениях, которые приходят в функцию Facebook в случае атак или катастроф.
Роберт Свон из Intel говорит о 10-нм переходе
С переходом с 14 нм на 10 нм Intel слишком поздно поняла, что откусила больше, чем могла прожевать.
Dropbox: мы объясняем его новые функции
Dropbox включает в себя новые функции, и мы детализируем все, что вам нужно знать о его новых услугах и о том, как он работает.