CL_KHR_ICD(3clc)

πŸ“¦
version 1.0~svn33624 Β· 3 versions
, in ubuntu jammy, ubuntu noble

✨ 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 the cl_khr_icd extension is supported, then the clIcdGetPlatformIDsKHR(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 🌈


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 🫢

  1. 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