Интернет магазин китайских планшетных компьютеров



Компьютеры - DirectCompute

26 апреля 2011


Оглавление:
1. DirectCompute
2. Использование и поддержка



DirectCompute — интерфейс программирования приложений, который входит в состав DirectX — набора API от Microsoft, который предназначен для работы на IBM PC-совместимых компьютерах под управлением операционных систем семейства Microsoft Windows. DirectCompute предназначен для выполнения вычислений общего назначения на графических процессорах, являясь реализацией концепции GPGPU. Изначально DirectCompute был опубликован в составе DirectX 11, однако позже стал доступен и для DirectX 10 и DirectX 10.1. DirectCompute является конкурентом аналогичных систем, в особенности OpenCL от Khronos Group и CUDA от nVidia.

Технологическое описание

DirectCompute, впервые появившись в составе DirectX 11, стал одним из важнейших его нововведений, первой технологией в составе DirectX, предоставившей доступ к вычислениям общего назначения на графических процессорах.

DirectCompute присутствует в трёх версиях:

  • DirectCompute 10 для GPU, которые поддерживают Direct3D 10;
  • DirectCompute 10.1 для GPU, которые поддерживают Direct3D 10.1;
  • DirectCompute 11 для GPU, которые поддерживают Direct3D 11.

Если версии DirectCompute 10 и DirectCompute 10.1 почти одинаковы по функциональным возможностям, то DirectCompute 11 предоставляет существенно больше функций:

  • 3D Thread Dispatch предоставляет возможность при помощи одного трёхмерного потока массива заменить несколько двумерных.
  • Максимальное количество потоков по сравнению с DirectCompute 10/10.1 увеличено на 33%: с 768 до 1024.
  • Объём памяти, выделяемый на группу потоков, был увеличен с 16 Кб до 32 Кб.
  • Улучшен доступ к памяти: если для DirectCompute 10/10.1 возможность чтения и записи были возможны лишь в область памяти размером 256 Кб, то в DirectCompute 11 этот размер уменьшен до 32 Кб.
  • Появились т.н. атомарные операции, которые дали возможность каждому потоку использовать защищенные области памяти.
  • Были добавлены вычисления с двойной точностью.
  • Была добавлена Gather4 — выборка из графической памяти, скорость работы которой при определённых условиях может в четыре раза превышать скорость предыдущих выборок.

Несмотря на нацеленность на неграфические вычисления общего назначения, DirectCompute может использоваться и в игровой графике. Так, он может использоваться при рендеринге теней, рендеринге полупрозрачных поверхностей без предварительной сортировки и некоторых других областях. Также DirectCompute может использоваться для трассировки лучей, обработке и фильтрации цифровых изображений, просчёте алгоритмов игрового искусственного интеллекта и для других задач.

Особенный интерес DirectCompute вызывает при просчёте алгоритмов физических движков. С помощью DirectCompute можно обрабатывать механику твёрдых тел, физику тканей и гидрогазодинамику. Компания AMD активно работает с DirectCompute в рамках проекта Open Physics Initiative.



Просмотров: 1607


<<< CUDA
OpenCL >>>