This example demonstrates how to load precompiled code objects from memory and execute the contained kernel(s). For more information on this topic, please refer to the HIP documentation.
- Two data vectors are created on the host.
- Two data buffers are created on the device.
- The vectors are copied to their corresponding buffers.
- A precompiled code module is loaded from memory.
- A kernel function is loaded from the module.
- A buffer for kernel arguments is created. It contains both (device) data buffers.
- A kernel launch configuration is created.
- The kernel is launched.
- The results are copied back to the data vectors.
- The device buffers are freed.
hipModuleLoadDataExloads a precompiled code module from memory.hipModuleGetFunctionloads a kernel from a given module.hipModuleLaunchKernellaunches a kernel which was loaded from a precompiled module.
hipCtxCreatehipCtxDetachhipDeviceGethipFreehipGetErrorStringhipInithipMallochipMemcpyDtoHhipMemcpyHtoDhipModuleGetFunctionhipModuleLaunchKernelhipModuleLoadDataEx