Automic VaultAutomic Vault

brew

Install opencl-icd-loader with Homebrew, apk, dnf, pacman

OpenCL Installable Client Driver (ICD) Loader. Version 2026.05.29 via Homebrew; verified 2026-06-25.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install opencl-icd-loader

local Homebrew formula metadata

overview

Package summary

OpenCL Installable Client Driver (ICD) Loader

Commands and aliases

No executable aliases were found in the local package database.

history

Project history and usage

OpenCL ICD Loader is the Khronos official loader library that exports OpenCL API entry points, enumerates installed OpenCL implementations, and dispatches calls to vendor Installable Client Drivers.

Project history

The need for an ICD loader came from OpenCL's multi-vendor model: a single system may have OpenCL implementations from CPU, GPU, FPGA, or accelerator vendors. Khronos announced the OpenCL Installable Client Driver loader in 2012, describing it as the library that lets applications choose among installed platforms and dispatch calls to the underlying implementation.

The Khronos GitHub repository packages that mechanism as source code and tests for the official OpenCL ICD Loader. The README is careful about scope: the loader is not an OpenCL implementation, so users must install at least one vendor ICD supporting the `cl_khr_icd` extension.

Adoption history

The `cl_khr_icd` extension specification describes the ICD Loader as a demultiplexor that exposes platform IDs from multiple vendor implementations to applications linked against the loader. That role made `libOpenCL.so`/OpenCL loader packages a standard dependency for portable OpenCL applications on systems where the actual compute runtime comes from a separate vendor package.

Package managers often split the OpenCL ecosystem into headers, the ICD loader, and vendor runtimes. That split lets a program build and link once while the user's machine decides at runtime whether Intel, AMD, NVIDIA, POCL, FPGA, or other OpenCL providers are available.

How it is used

Developers link applications against the ICD loader instead of a specific vendor OpenCL library. At runtime the loader enumerates vendor ICDs, exposes OpenCL entry points, and routes calls to the implementation associated with the platform, context, queue, memory object, or other ICD-compatible object.

Operators and developers use the package to make OpenCL discovery work in heterogeneous installations. The Homebrew package also installs `cllayerinfo`, a Khronos diagnostic tool for inspecting OpenCL layers and loader behavior.

Why package nerds care

This is a tiny-looking package with a huge dependency-graph job. Without an ICD loader, every OpenCL consumer would have to choose a vendor implementation at link time or ship awkward runtime glue. With it, distributions can package OpenCL like Vulkan and OpenGL loader stacks: neutral loader first, vendor implementations separately.

It is especially important in reproducible build and CI images because installing headers and the loader is enough to compile and link many OpenCL applications even when no GPU runtime is present. Runtime capability remains a deployment concern.

Timeline

  • 2012: Khronos published news for the OpenCL Installable Client Driver loader and source availability.
  • OpenCL extension era: `cl_khr_icd` defined the mechanism for multiple vendor ICDs behind one loader.
  • GitHub era: KhronosGroup/OpenCL-ICD-Loader became the canonical source repository and test location for the official loader.

Related projects

  • Related projects include OpenCL-Headers, OpenCL-CLHPP, OpenCL-SDK, vendor OpenCL runtimes, POCL, and higher-level compute stacks such as SYCL implementations that rely on OpenCL platforms on some systems.

security posture

Risk level: blue

broad file, network, media, or database tool signal.

Risk classifier

blue risk · medium confidence · tool

Why

  • broad file, network, media, or database tool signal

Signals

  • text:client

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 6 platform targets.
  • Build metadata lists 2 build dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

executables

Installed executables

CommandKindExposureNote
No executable data was present.

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-07-08
manager version2026.05.29
manager updated2026-06-25
local dataok
upstreamcurrent
latest detectedv2026.05.29

https://github.com/KhronosGroup/OpenCL-ICD-Loader

  • okNo freshness warnings were generated.

install metadata

Package metadata

Package keybrew:opencl-icd-loader
Version2026.05.29
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/opencl-icd-loader
Homepagehttps://www.khronos.org/registry/OpenCL/
Repositoryhttps://github.com/KhronosGroup/OpenCL-ICD-Loader
Upstream docshttps://github.com/KhronosGroup/OpenCL-ICD-Loader#readme
LicenseApache-2.0
Source archivehttps://github.com/KhronosGroup/OpenCL-ICD-Loader/archive/refs/tags/v2026.05.29.tar.gz
Last updated2026-06-25T13:37:58+02:00
Pulseupdated
Build dependenciescmake, opencl-headers
Bottleavailable (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared
CaveatsThe default vendors directory is $HOMEBREW_PREFIX/etc/OpenCL/vendors

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Nameopencl-icd-loader
Version Scheme0
Revision0
Head VersionHEAD
Conflicts With
  • ocl-icd
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyyes
URL Keys
  • head
  • stable

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

apk95%

cllayerinfo 2.3.3-r0

Generic OpenCL ICD Loader

https://github.com/OCL-dev/ocl-icd

sudo apk add cllayerinfo
  • License: BSD-2-Clause
  • Architecture: x86_64
  • Source Package: opencl-icd-loader
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Opencl Icd Loader
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: cllayerinfo from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

opencl-icd-loader 2.3.3-r0

Generic OpenCL ICD Loader

https://github.com/OCL-dev/ocl-icd

sudo apk add opencl-icd-loader
  • License: BSD-2-Clause
  • Architecture: x86_64
  • Source Package: opencl-icd-loader
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Opencl Icd Loader
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: opencl-icd-loader from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

opencl-icd-loader-dev 2.3.3-r0

Generic OpenCL ICD Loader (development files)

https://github.com/OCL-dev/ocl-icd

sudo apk add opencl-icd-loader-dev
  • License: BSD-2-Clause
  • Architecture: x86_64
  • Source Package: opencl-icd-loader
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Opencl Icd Loader
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: opencl-icd-loader-dev from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

opencl-icd-loader-doc 2.3.3-r0

Generic OpenCL ICD Loader (documentation)

https://github.com/OCL-dev/ocl-icd

sudo apk add opencl-icd-loader-doc
  • License: BSD-2-Clause
  • Architecture: x86_64
  • Source Package: opencl-icd-loader
  • normalized package name match
  • Matched by: Opencl Icd Loader
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: opencl-icd-loader-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
dnf95%

OpenCL-ICD-Loader 3.0.6-7.20250722gitad770a1.fc44

Khronos official OpenCL ICD Loader

https://github.com/KhronosGroup/OpenCL-ICD-Loader

sudo dnf install OpenCL-ICD-Loader
  • License: Apache-2.0
  • Category: Unspecified
  • Architecture: i686
  • Source Package: OpenCL-ICD-Loader
  • 2 dependencies
  • 2 provides
  • normalized package name match
  • Matched by: Opencl Icd Loader
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: OpenCL-ICD-Loader from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
dnf95%

OpenCL-ICD-Loader-devel 3.0.6-7.20250722gitad770a1.fc44

Development files for Khronos official OpenCL ICD Loader

https://github.com/KhronosGroup/OpenCL-ICD-Loader

sudo dnf install OpenCL-ICD-Loader-devel
  • License: Apache-2.0
  • Category: Unspecified
  • Architecture: i686
  • Source Package: OpenCL-ICD-Loader
  • 7 dependencies
  • 3 provides
  • normalized package name match
  • Matched by: Opencl Icd Loader
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: OpenCL-ICD-Loader-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
pacman95%

ocl-icd 2.3.4-1

OpenCL ICD Bindings

https://github.com/OCL-dev/ocl-icd

sudo pacman -S ocl-icd
  • License: BSD-2-Clause
  • Architecture: x86_64
  • 1 dependencies
  • 1 provides
  • 1 optional deps
  • normalized package name match
  • Matched by: Opencl Icd Loader
Arch Linux sync databases · geo.mirror.pkgbuild.com · Arch Linux sync databases: ocl-icd from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment