I'm pretty curious and searching among Intel driver libraries I found some DLLs which reference "C for Media Runtime for Intel Graphics" so these seems like a propietary GPU computing API that's used by OpenCL implementation.. I don't know if that exposes more functionality than OpenCL but seems like CUDA for Nvidia..
Do you plan on releasing it as an alternative to OpenCL for GPU computing? Do you have plans to share info more about it?
!!!Update this post thread in order to make sure the outside world knows that C for Media in no longer internal only!!!
We have recently open-sourced CM runtime together with Intel media driver and CM compiler. We also put the CM package in 01.org(https://01.org/c-for-media-development-package). The source code are path below respectively,
· Intel Media Driver for VAAPI and Intel® C for Media Runtime: https://github.com/intel/media-driver/
· Intel C for Media Compiler and examples: https://github.com/intel/cm-compiler/
· Intel Graphics Compiler: https://github.com/intel/intel-graphics-compiler/
I briefly skimmed a few of the C-for-Media examples and it looks like the language promotes a SIMD programming model?
I'm curious what the motivation was for creating a new media language instead of sticking with OpenCL/GLSL/etc.?
Thanks for the question.
Some comments on Intel®'s OpenCL™ implementation and C for Media positioning.
- OpenCL™ is a standard is maintained by Khronos Group™. Notice on the Khronos Group™ OpenCL™ page there are a few extensions associated with Intel media features. Intel®'s OpenCL™ implementations employ said extensions. Reference: https://www.khronos.org/registry/OpenCL/
- C for Media has been defined by Intel®. It's specific purpose (media), while OpenCL™ is general purpose. C for Media is not beholden to a standard in the same manner that a compliant OpenCL™ implementation is. Historically, this positioning has yielded significant flexibility for how C for Media data and operations leverage hardware.
- Lastly, Intel® Media SDK has been targeted toward more higher level functionalities than C for Media. Intel® Media SDK is associated with encode/decode/and preprocessing.
If you have C for Media questions I recommend the media sdk forum at the moment.