Компания Майкрософт обнародовала свежие специфики C++ AMP либо Accelerated Massive Prallelism — новой системы неоднородного программирования на C++, созданной для образования программ с синхронным компьютерным кодом.
Такие платформы действенно грузят передовые многоядерные микропроцессоры некоторыми одновременными струями данным, производимых вне зависимости друг от дружки. В первый раз C++ AMP возникла в начале июня минувшего года, тогда в Майкрософт сообщили, что способны сделать специфики AMP открытыми для всех.
Сам формат AMP был основан в Майкрософт, однако при серьезной помощи организаций AMD и Nvidiа. Специфики AMP сохраняют сочинение программ, синхронно загружающих как производительности главного микропроцессора(ов), так и графических чипов с помощью Direct 3D. В обозримых модификация гарантирована также помощь форматов OpenGL/OpenCL.
По версии представителей компании, текущий вариант имеет лишь открытые способы и не применяет каких-нибудь патентов, и других ограниченных факторов, которые бы могли побеспокоить его применение. На деле это значит, что свободных разработчиков программного обеспечения за применение C++ AMP к суду не притягивает ни Майкрософт, ни кто-то другой.
С классической позиции AMP несколько напоминает OpenCL, в связи с тем что заключительный также формировался для неоднородного синхронного программирования и также не привязан к оборудованию некоторого одного компании-производителя. Но OpenCL — это ощутимо не менее низкоуровневая технология и она не действует на базе вызова систематических функций, а вручную компонуется в среде проведения. Помимо этого, буферы данных OpenCL должны в очевидном виде поддерживаться картой памяти.
Специфики и не менее тщательное описание доступны по адресу http://blogs.msdn.com/b/nativeconcurrency/archive/2012/02/03/c-amp-open-spec-published.aspx