async compute что это

Crytek: Async Compute – технология интересная, но сложная в реализации

AMD сегодня позиционирует себя как лидера по реализации поддержки DiretX12 в собственных GPUs. Что подчеркивается результатами тестов в первых играх DirectX 12, подобных Ashes of the Singularity. В Причина кроется в поддержке асинхронных шейдеров (Asynchronous Shaders) или Async Compute. AMD неоднократно демонстрировала результаты тестов Ashes of the Singularity. Но NVIDIA с видеокартой GeForce GTX 1080 смогла догнать «красного» оппонента, демонстрируя значительный прирост производительности асинхронных шейдеров или Async Compute.

На самом деле с реализацией Async Compute не все так гладко, что связано не столько с недостатком производительности, сколько со сложностью реализации. По крайней мере, на это сетует технический директор Crytek Рок Эржавец (Rok Erjavec) в интервью DSO Gaming:

«Сегодня мы используем Asynchronous Compute при разработке в окружении VR, поскольку технология под названием Async-Timewarp/Reprojection задействуется VR API для снижения задержек и уменьшения негативных последствий случайных выпадений кадров. Конечно, мы экспериментируем и с другими вариантами использования технологии. Возможности интересны, но, по крайней мере, на сегодняшний день реализовать поддержку в сегменте ПК не тривиально из-за отсутствия стандартизации и сравнительной сырости железа, которое поддерживает технологию. Многие GPU имеют проблемные ограничения, например, на pre-emption granularity и т.д.»

Как можно понять, на данный момент Async Compute используется разработчиками только для технологии Asynchronous Timewarp, то есть для компенсации кадров на очках VR на основе предсказания. Разработчики экспериментируют и с другими сферами применения, но Crytek пока не считает технологию стоящей. Интеграция не тривиальная, и тратить ресурсы разработчиков на поддержку пока рано. Тем более что на ПК нет стандартизированной реализации, в каждой архитектуре GPU имеются разные степени реализации технологии, а также свои ограничения.

«Как и с любой новой технологией, здесь действует спираль познания, по которой мы сейчас идем. С конвейерами DX10-11 за множество лет мы привыкли фокусироваться на оптимизации драйверов и опираться на стандартный рабочий процесс, в случае DX12 меняется парадигма, которая устраняет часть преимуществ наследия.

Добавьте к этому тот факт, что ранние игры DX12, по сути, являются портами путей кода с оптимизацией под DX11, поэтому пока рано говорить об играх, которые полностью задействуют сильные стороны DX12. Командам разработчиков придется заново научиться выполнять некоторые процессы, которые ранее относились к сфере ответственности разработчиков драйверов DX11. Ситуация должна улучшиться на протяжении 2016, все больше игр будут ориентироваться на новый низкоуровневый API с самого начала разработки, отличия и преимущества должны стать более очевидными».

Как видим, со стороны разработчиков оптимизм по поводу DirectX 12 весьма сдержанный. Пройдут еще несколько месяцев, прежде чем станет видна картина с поддержкой DX12 в целом. Пока что все реализации относятся, в лучшем случае, к начальному этапу спирали познания.

С нашей стороны мы уже добавили игры с поддержкой DirectX 12 в тесты. Как показали тесты GeForce GTX 1080, NVIDIA идет в правильном направлении. Теперь осталось дождаться более широкой и глубокой поддержки DX12 со стороны игр. Будем надеяться, что ждать осталось недолго.

Источник

GDC: NVIDIA подчеркивает преимущества Async Compute

Наличие нескольких тысяч потоковых процессоров в GPU позволяет справляться с задачами, предусматривающими параллельную обработку, такими как рендеринг 3D-сцены. С другой стороны, видеокарта может выполнять еще и вычислительные задачи, например расчет физики, сняв соответствующие расчеты с процессора. Если рендеринг кадра выполняется за 11 мс (90 fps), то на расчет физики разработчики обычно отводят 2 мс. Поэтому грамотное распределение вычислительных задач по имеющимся ресурсам имеет важное значение. С помощью Async Compute AMD и NVIDIA могут ускорить вычисления физики в два раза.

Подобные расчеты, а именно графические шейдеры и вычислительные инструкции, не могут выполняться на конвейере одновременно. NVIDIA приводит несколько примеров. В частности, со 100% графической нагрузкой и менее чем 50% вычислительной нагрузкой, которая выполняется следом. В результате часть большая ресурсов GPU в некоторые промежутки времени просто простаивает.

Async Compute позволяет выполнять графические и вычислительные задачи одновременно, что снижает общее время расчетов, а также минимизирует простой ресурсов.

Еще интереснее ситуация становится, когда графическая нагрузка состоит из нескольких итераций, каждая последующая из которых уменьшает нагрузку на вычислительные ресурсы. Без Async Compute вычислительная нагрузка будет выполняться после графической, на все вычисления уйдет немало времени, большая часть ресурсов GPU будет бездействовать.

С помощью Async Compute можно снизить простой ресурсов, загружая их почти всегда полностью. И мы вновь получаем снижение общего времени вычислений.

Если учесть задержки в расчетах, то ситуация становится еще более сложной, GPU просто не получает достаточно данных, ему требуется время, чтобы получить данные для дальнейших вычислений. В таком случае, несмотря на кажущуюся 100% загрузку ресурсов, мы получаем задержки между отдельными этапами вычислений.

С помощью Async Compute NVIDIA может бороться с данной проблемой, просто «вытаскивая» простаивающие ресурсы из вычислительных задач и выполняя на них графические вычисления в промежутки простоя. В результате мы получаем уменьшение общего времени вычислений.

Технология Async Compute будет играть все более важную роль в разработке игр. Связано это, главным образом, с тем, что разработчики переносят все больше вычислительных задач на GPU. Поэтому оптимальное распределение задач по вычислительным ресурсам становится все более важным.

Читайте также:  level dat чем открыть

Источник

Asynchronous compute, AMD, Nvidia, and DX12: What we know so far

Ever since DirectX 12 was announced, AMD and Nvidia have jockeyed for position regarding which of them would offer better support for the new API and its various features. One capability that AMD has talked up extensively is GCN’s support for asynchronous compute. Asynchronous compute allows all GPUs based on AMD’s GCN architecture to perform graphics and compute workloads simultaneously. Last week, an Oxide Games employee reported that contrary to general belief, Nvidia hardware couldn’t perform asynchronous computing and that the performance impact of attempting to do so was disastrous on the company’s hardware.

This announcement kicked off a flurry of research into what Nvidia hardware did and did not support, as well as anecdotal claims that people would (or already did) return their GTX 980 Ti’s based on Ashes of the Singularity performance. We’ve spent the last few days in conversation with various sources working on the problem, including Mahigan and CrazyElf at Overclock.net, as well as parsing through various data sets and performance reports. Nvidia has not responded to our request for clarification as of yet, but here’s the situation as we currently understand it.

Nvidia, AMD, and asynchronous compute

When AMD and Nvidia talk about supporting asynchronous compute, they aren’t talking about the same hardware capability. The Asynchronous Command Engines in AMD’s GPUs (between 2-8 depending on which card you own) are capable of executing new workloads at latencies as low as a single cycle. A high-end AMD card has eight ACEs and each ACE has eight queues. Maxwell, in contrast, has two pipelines, one of which is a high-priority graphics pipeline. The other has a a queue depth of 31 — but Nvidia can’t switch contexts anywhere near as quickly as AMD can.

According to a talk given at GDC 2015, there are restrictions on Nvidia’s preeemption capabilities. Additional text below the slide explains that “the GPU can only switch contexts at draw call boundaries” and “On future GPUs, we’re working to enable finer-grained preemption, but that’s still a long way off.” To explore the various capabilities of Maxwell and GCN, users at Beyond3D and Overclock.net have used an asynchronous compute tests that evaluated the capability on both AMD and Nvidia hardware. The benchmark has been revised multiple times over the week, so early results aren’t comparable to the data we’ve seen in later runs.

Note that this is a test of asynchronous compute latency, not performance. This doesn’t test overall throughput — in other words, just how long it takes to execute — and the test is designed to demonstrate if asynchronous compute is occurring or not. Because this is a latency test, lower numbers (closer to the yellow “1” line) mean the results are closer to ideal.

Here’s the R9 290’s performance. The yellow line is perfection — that’s what we’d get if the GPU switched and executed instantaneously. The y-axis of the graph shows normalized performance to 1x, which is where we’d expect perfect asynchronous latency to be. The red line is what we are most interested in. It shows GCN performing nearly ideally in the majority of cases, holding performance steady even as thread counts rise. Now, compare this to Nvidia’s GTX 980 Ti.

Attempting to execute graphics and compute concurrently on the GTX 980 Ti causes dips and spikes in performance and little in the way of gains. Right now, there are only a few thread counts where Nvidia matches ideal performance (latency, in this case) and many cases where it doesn’t. Further investigation has indicated that Nvidia’s asynch pipeline appears to lean on the CPU for some of its initial steps, whereas AMD’s GCN handles the job in hardware.

Right now, the best available evidence suggests that when AMD and Nvidia talk about asynchronous compute, they are talking about two very different capabilities. “Asynchronous compute,” in fact, isn’t necessarily the best name for what’s happening here. The question is whether or not Nvidia GPUs can run graphics and compute workloads concurrently. AMD can, courtesy of its ACE units.

It’s been suggested that AMD’s approach is more like Hyper-Threading, which allows the GPU to work on disparate compute and graphics workloads simultaneously without a loss of performance, whereas Nvidia may be leaning on the CPU for some of its initial setup steps and attempting to schedule simultaneous compute + graphics workload for ideal execution. Obviously that process isn’t working well yet. Since our initial article, Oxide has since stated the following:

Читайте также:  fnt moscow rus что за списание в сбербанке

“We actually just chatted with Nvidia about Async Compute, indeed the driver hasn’t fully implemented it yet, but it appeared like it was. We are working closely with them as they fully implement Async Compute.”

Here’s what that likely means, given Nvidia’s own presentations at GDC and the various test benchmarks that have been assembled over the past week. Maxwell does not have a GCN-style configuration of asynchronous compute engines and it cannot switch between graphics and compute workloads as quickly as GCN. According to Beyond3D user Ext3h:

“There were claims originally, that Nvidia GPUs wouldn’t even be able to execute async compute shaders in an async fashion at all, this myth was quickly debunked. What become clear, however, is that Nvidia GPUs preferred a much lighter load than AMD cards. At small loads, Nvidia GPUs would run circles around AMD cards. At high load, well, quite the opposite, up to the point where Nvidia GPUs took such a long time to process the workload that they triggered safeguards in Windows. Which caused Windows to pull the trigger and kill the driver, assuming that it got stuck.

“Final result (for now): AMD GPUs are capable of handling a much higher load. About 10x times what Nvidia GPUs can handle. But they also need also about 4x the pressure applied before they get to play out there capabilities.”

Ext3h goes on to say that preemption in Nvidia’s case is only used when switching between graphics contexts (1x graphics + 31 compute mode) and “pure compute context,” but claims that this functionality is “utterly broken” on Nvidia cards at present. He also states that while Maxwell 2 (GTX 900 family) is capable of parallel execution, “The hardware doesn’t profit from it much though, since it has only little ‘gaps’ in the shader utilization either way. So in the end, it’s still just sequential execution for most workload, even though if you did manage to stall the pipeline in some way by constructing an unfortunate workload, you could still profit from it.”

Nvidia, meanwhile, has represented to Oxide that it can implement asynchronous compute, however, and that this capability was not fully enabled in drivers. Like Oxide, we’re going to wait and see how the situation develops. The analysis thread at Beyond3D makes it very clear that this is an incredibly complex question, and much of what Nvidia and Maxwell may or may not be doing is unclear.

Earlier, we mentioned that AMD’s approach to asynchronous computing superficially resembled Hyper-Threading. There’s another way in which that analogy may prove accurate: When Hyper-Threading debuted, many AMD fans asked why Team Red hadn’t copied the feature to boost performance on K7 and K8. AMD’s response at the time was that the K7 and K8 processors had much shorter pipelines and very different architectures, and were intrinsically less likely to benefit from Hyper-Threading as a result. The P4, in contrast, had a long pipeline and a relatively high stall rate. If one thread stalled, HT allowed another thread to continue executing, which boosted the chip’s overall performance.

GCN-style asynchronous computing is unlikely to boost Maxwell performance, in other words, because Maxwell isn’t really designed for these kinds of workloads. Whether Nvidia can work around that limitation (or implement something even faster) remains to be seen.

Источник

Компьютерные новости

Все разделы

Видеокарты NVIDIA GeForce RTX 3080 раскупили за 15 секунд – началась война ботов!

Релиз видеокарты NVIDIA GeForce RTX 3080 запомнится на долго. Многие пользователи ждали уведомлений о начале продаж, поскольку по предзаказу они не продавались.

the #RTX3080 sold out in 15 seconds. people who own the bots that do this shit can blow me, ebay should ban all these nerds. Stand together boys, dont buy these inflated cards, make them take the L pic.twitter.com/KRjGYFNQYO

Обычные пользователи возмутились такой практикой и призывают бойкотировать лоты спекулянтов. А некоторые решили выбивать клин клином. Один из них создал ботов для аукциона eBay, который предлагает огромные суммы за товар ($6000 – 20 000), но оплачивать их не будет. Таким образом спекулянты просто не могут реализовать товар.

— Cyberpunk 2077 Countdown (@CP2077Countdown) September 17, 2020

NVIDIA уже извинилась перед пользователями, которые не смогли купить видеокарту из-за действий спекулянтов. Сейчас компания проводит расследование в собственном онлайн-магазине и пытается разобраться в сложившейся ситуации, чтобы предотвратить подобное в будущем. Также она заверила, что каждый день вместе с партнерами поставляет ритейлерам новые партии готовой продукции, чтобы удовлетворить высокий спрос. Посмотрим, что будет 24 сентября (старт продаж GeForce RTX 3090) и 15 октября (старт продаж GeForce RTX 3070).

EGS бесплатно раздает Watch Dogs 2, Football Manager 2020 и Stick It To The Man! в придачу

Новый год еще не скоро, но магазин Epic Games Store уже порадовал щедрыми подарками. До 24 сентября все желающие могут бесплатно добавить себе на аккаунт игры Watch Dogs 2 ( 915 грн ), Football Manager 2020 ( 899 грн ) и Stick It To The Man! ( 109 грн ). То есть вы можете сэкономить почти 2000 грн на их покупке. А с 24 сентября по 1 октября будут раздавать RollerCoaster Tycoon 3 Complete Edition.

Читайте также:  Что значит шампанское кюве

Watch Dogs 2 от Ubisoft в особом представлении не нуждается. Поэтому описание пропустим, а вместо этого сконцентрируемся на распродаже. На странице с игрой доступны несколько изданий. Standard Edition вы можете загрузить бесплатно и купить Deluxe Edition или Gold Edition со скидкой в 80%. Сезонный абонемент также продается со скидкой в 80% до 24 сентября.

Football Manager 2020 – еще один хитовый проект. Вам предлагают стать менеджером одной из футбольных команд из 53 стран и 5 континентов. Всего в игре представлено 118 лиг, 26 из которых полностью лицензированы для игры. И именно от ваших решений, построения тренировочного процесса, трансферной политики, выбранной тактики и стратегии на игру будет зависеть результат вашей команды.

Stick It To The Man! вряд ли известна широкой общественности. Это платформер с элементами экшн и приключений. В центре сюжета находится обычный парень Рей, который в один день получает супер способность – менять мир вокруг себя. Вместе с тем его начинает преследовать загадочный «Человек» за преступление, которого Рей не совершал. Вам предстоит помочь главному герою выбраться из этой непонятной ситуации.

Универсальный игровой контроллер Razer Kishi для iPhone поступил в продажу

Компания Razer сообщила о начале продаж универсального игрового контроллера Kishi с интерфейсом Lightning. Его конструкция и дизайн спроектированы таким образом, чтобы он подходил для разных версий популярной линейки смартфонов iPhone, включая модели iPhone 6+, 6s+, 7+, 8+, X, XR, XS, XS Max, 11, 11 Pro и 11 Pro Max.

Razer Kishi гарантирует мгновенный отклик на действия пользователей благодаря минимальным задержкам. Набор элементов управления знаком любому, кто держал в руках игровой контроллер для ПК или консоли. Он включает в себя:

Список преимуществ Razer Kishi можно продолжить такими пунктами:

Acer CB342CKC – 34-дюймовый IPS-монитор линейки OmegaLine

Линейка мониторов Acer OmegaLine пополнилась моделью Acer CB342CKCsmiiphuzx. Она создана на базе 34-дюймовой IPS-панели с разрешением UWQHD (3440 x 1440) и соотношением сторон 21:9. Она отлично подходит для просмотра фильмов и запуска игр. Этому способствуют быстрая матрица (1 мс) и поддержка технологии AMD FreeSync.

Стоимость новинки пока не сообщается. Сводная таблица технической спецификации монитора Acer CB342CKCsmiiphuzx:

Источник

Компьютерные новости

Все разделы

NVIDIA Pascal не имеет в своем распоряжении технологии Async Compute

До сентября 2015 года широкая общественность даже и не подозревала о технологии Async Compute. Однако первые результаты тестирования видеокарт в бенчмарке Ashes of the Singularity с использованием DirectX 12, которые продемонстрировали существенный перевес продукции компании AMD, создал настоящий ажиотаж вокруг нее. Именно полноценная аппаратная поддержка Async Compute, реализованная в микроархитектуре AMD GCN и отсутствующая в NVIDIA Maxwell, дала AMD новый и очень существенный аргумент, предъявляемый пользователям при покупке видеокарты. Компания NVIDIA попыталась оптимизировать драйвер для лучшей программной реализации Async Compute, но в конечном итоге отказалась от этой затеи, поскольку финальный результат оказался недостаточно хорошим.

Если же вы не знакомы с работой и предназначением технологии Async Compute, то лишь вкратце напомним, что она разработана специально для API DirectX 12. Суть ее работы кроется в следующем: при рендеринге игровой сцены компьютер просчитывает множество сложных эффектов (тени, свет, физику поведения объектов, алгоритм работы AI и другие). Многие из них проходят несколько стадий вычислений, перед формированием на экране финального кадра. В DirectX 11 и предыдущих версиях все эти вычисления осуществлялись последовательно, шаг за шагом. Поэтому задержка на одном из этапов приводила к неэффективному использованию ресурсов ПК, ведь без окончания предыдущего вычисления система не могла осуществлять дальнейшие расчеты (даже если были свободные аппаратные ресурсы). Поэтому в DirectX 12 реализовали возможность параллельного вычисления. Например, если одна часть системы требует очень сложного расчета эффектов света, то другая часть тем временем обрабатывает поведение AI или занимается другими стадиями. Эта технология и носит название Async Compute, позволяя эффективнее использовать ресурсы графического процессора и ПК в целом.

Многие пользователи рассчитывали, что компания NVIDIA обеспечит надлежащую поддержку Async Compute на аппаратном уровне уже в микроархитектуре NVIDIA Pascal. Однако неофициальные источники сообщают, что ее там не будет. Дело в том, что процесс разработки и создания микроархитектуры занимает несколько лет, поэтому у NVIDIA просто не было времени для надлежащей ее интеграции. Взамен NVIDIA поддерживает другие ценные функции (например, VXGI/VXAO и Hybrid Ray Traced Shadows), которых пока нет в продуктах AMD. А все дело в том, что в видеокартах NVIDIA интегрирована поддержка API DirecX 12 Level 12_1, в то время как AMD полагается на DirecX 12 Level 12_0. Как бы там ни было, состязание NVIDIA Pascal и AMD Polaris обещает быть очень интересным.

Источник

Сказочный портал