CL_KHR_ICD(3clc)
β¨ CL_KHR_ICD β¨ (that's the 3clc page from the OpenCL Manual, bestie)
π NAME π
cl_khr_icd β ngl this one's whole job is provide interoperability between OpenCL and Direct3D 10. Yes fr fr, that's the tagline, we're not being weird about it, that's just what the page says.
And here's the lil spell you cast to turn it on:
#pragma OPENCL EXTENSION cl_khr_icd :
enable
πΈ DESCRIPTION πΈ
Okay so listen. This is a platform extension, and what it does is define a simple mechanism β that's the actual wording, simple β through which the Khronos OpenCL installable client driver loader (aka the ICD Loader) may expose multiple separate vendor installable client drivers (aka Vendor ICDs) for OpenCL. Multiple. Vendor. ICDs. The way she multitasks π
An application written against the ICD Loader will be able to access all cl_platform_ids exposed by all vendor implementations, with the ICD Loader acting as a demultiplexor. She's literally the group chat admin routing everyone's messages to the right place, no cap.
If this extension is supported by an implementation, the string cl_khr_icd will be present in the CL_PLATFORM_EXTENSIONS string described in the table of allowed values for param_name for clGetDeviceInfo(3clc). So likeβ¦ go check that string, it's how you know she's there π¦
And if thecl_khr_icdextension is supported, then theclIcdGetPlatformIDsKHR(3clc)function is enabled. That's the payoff, that's the moment, that's the main character entrance π
β SPECIFICATION β
OpenCL Specification[1] β go read the real thing, iykyk π
π SEE ALSO π
π AUTHORS π
The Khronos Group π
π COPYRIGHT π
Okay legal bestie moment, keeping this one exactly as written because copyright notices are not a vibe-check situation, they're a "do not touch" situation π
Copyright Β© 2007-2011 The Khronos Group Inc.
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and/or associated documentation files (the
"Materials"), to deal in the Materials without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Materials, and to
permit persons to whom the Materials are furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Materials.
(That last condition? Yeah, the permission notice shall be included in all copies or substantial portions. Keep it, periodt.)
π«Ά NOTES π«Ά
- OpenCL Specification β page 113, section 9.12 - OpenCL Installable Client Driver (ICD). Page one-thirteen, section nine-point-twelve, that's the receipt π§
And that's the whole page, babe β brought to you by The Khronos Group, dated 01/14/2021, filed under CL_KHR_ICD(3clc). Go demultiplex something iconic πβ¨
π¦ where this page comes from
- ubuntu jammy: opencl-1.2-man-doc 1.0~svn33624-5 Β· other
- ubuntu noble: opencl-1.2-man-doc 1.0~svn33624-5 Β· other
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms