Questions tagged «directx12»

3
为什么对于图形API,线程安全如此重要?
据称Vulkan和DirectX12都可以以线程安全的方式使用。人们似乎对此感到兴奋。 为什么将其视为如此巨大的功能?无论如何,“真实的”处理被扔到了单独处理单元上的存储桥上。 另外,如果它太大,为什么直到现在才出现线程安全Graphics API?

1
有多少个直接/计算/复制队列有意义?
DirectX 12公开了图形(称为“ Direct”),计算或复制任务的命令队列。就提供的功能而言,每一个都是下一个的超集。该规范指出命令队列可以由设备并发执行。但是,API并没有以任何方式限制命令队列的数量(至少我不知道有任何限制)。 显然,不同的供应商处理此问题非常不同: 英特尔在最近的一次演讲(幻灯片23)中指出,当前其GPU无法并行处理Graphics&Compute,并且复制引擎的吞吐量很弱。他们建议不要使用多个图形/计算队列。 AMD 早就开始宣传从Mantle和当前的Gen控制台开始的队列/“异步着色器”的使用。还有一些开发人员(示例)通过并行执行计算和图形任务来确认显着的性能提升。 最近有一些关于Nvidia不支持硬件中的异步着色器的大惊小怪的事情:一次使用单独的Graphics和Compute队列似乎会使速度变慢,这表明驱动程序是仿真的。另一方面,并​​行复制操作已得到CUDA的长期支持,这清楚地表明DMA引擎可以独立工作。 有什么方法可以在运行时确定将CommandList提交给多个CommandQueue而不是一个CommandQueues是否有意义?(鉴于以前的案例不涉及太多的工程开销) 虽然我可以轻松地看到并行执行与计算/图形操作并行的内存操作有何用处,但令我感到震惊的是,并行运行多个计算和图形进程不必要地复杂(除非没有主要的性能优势)。对我来说还不清楚,这如何能带来明显更好的性能。除了许多小型连续任务无法产生足够的GPU负载的病理情况外。
11 directx12  api 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.