Jacket SDKIntegrate your own GPU code into MATLAB® |
Documentation |
Jacket SDK makes integration of custom GPU code into Jacket's runtime very easy. With a few Jacket-specific functions, GPU code will benefit from Jacket's automated optimizations.
The Jacket SDK enables you to wrap GPU kernels in a jktFunction, similar to the MATLAB® mexFunction. In the jktFunction, the class and dimensions of the inputs are determined with the jkt_class and jkt_dims functions. New arrays are allocated using the jkt_new function. Device side pointers for GPU arrays are initialized using the jkt_mem function, providing a safe way for Jacket to read and write to the GPU. Several other functions are also available, see the documentation.
Compiling your GPU kernel with the Jacket SDK results in a standard MEX file. You can call this MEX file from your MATLAB scripts and you can pass in Jacket's GPU data types. Jacket will optimize the launch of your kernels and manage memory transfers. Your GPU code inherits Jacket's runtime optimizations.
This process to make this work is no more than declaring inputs and outputs, allocating memory to them, and calling the GPU kernel!
With over 100 million GPU-enabled GPUs sold to date, thousands of software developers are already using the free GPU software development tools to solve problems in a variety of professional and home applications - from video and audio processing and physics simulations, to oil and gas exploration, product design, medical imaging, and scientific research. With this user community and the growing availability of GPU kernels, the Jacket SDK is a must for domain professionals.
The base Jacket license does not require any knowledge of GPU programming architectures; however, for users that have or will develop GPU kernels, Jacket SDK is a perfect capability to speed development, improve testing, and simplify deployment of complete applications and algorithms.
