# Install oclgrind with Homebrew, apt

OpenCL device simulator and debugger. Version 26.03.1 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:oclgrind
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install oclgrind
```

  Evidence: local Homebrew formula metadata

### Linux

- Ubuntu apt (92%):

```sh
sudo apt install liboclgrind-21.10t64
```

  Evidence: Ubuntu 24.04 LTS package indexes: liboclgrind-21.10t64 from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz

## Package facts

- **Package key:** brew:oclgrind
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/oclgrind>
- **Version:** 26.03.1
- **Source summary:** OpenCL device simulator and debugger
- **Homepage:** <https://github.com/jrprice/Oclgrind>
- **Repository:** <https://github.com/jrprice/Oclgrind>
- **Upstream docs:** <https://github.com/jrprice/Oclgrind#readme>
- **License:** BSD-3-Clause
- **Source archive:** <https://github.com/jrprice/Oclgrind/archive/refs/tags/v26.03.1.tar.gz>
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- oclgrind (cli)
- oclgrind-kernel (cli)
- oclgrind (alias)
- oclgrind-kernel (alias)

## Dependencies

- llvm@19
- readline
- zstd

## Build dependencies

- cmake

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 26.03.1
- Local data: ok
- Upstream repository: https://github.com/jrprice/Oclgrind
- Upstream latest detected: v26.03.1 (current)
- info: No package-manager update timestamp was available.
## Project history and usage

Oclgrind is an OpenCL device simulator and debugger. It runs OpenCL kernels on a virtual device backed by an LLVM IR interpreter, trading speed for observability and deterministic debugging.

### Project history

The upstream README says Oclgrind was originally created by James Price and Simon McIntosh-Smith at the University of Bristol. It implements a virtual OpenCL device, an OpenCL runtime with ICD support, and a platform for OpenCL development tools.

The project's feature set grew around hard-to-debug GPU programming failures: invalid memory accesses, data races, barrier divergence, instruction histograms, and interactive kernel debugging. Its architecture interprets an abstract intermediate representation rather than running on a particular GPU, making it useful for portability and correctness checks.

Release notes and build documentation show Oclgrind tracking LLVM and Clang over time. The README requires LLVM and Clang 18.0 or newer for source builds, while older release notes such as v15.5 mention updates to LLVM 3.6, illustrating the tool's long dependency relationship with the LLVM compiler stack.

### Adoption history

Oclgrind is a specialist tool, but it is recognized in OpenCL developer materials as a way to debug kernels without relying on vendor-specific GPU debuggers. Codeplay's SYCL/OpenCL debugging guide describes it as a go-to tool for simulating OpenCL execution and investigating portability issues.

Homebrew's formula API generated on 2026-07-01 lists stable version 26.03.1, the `oclgrind` and `oclgrind-kernel` executables, and 67 installs over 365 days. That low package-manager count fits a niche developer-debugging tool rather than a runtime dependency.

### How it is used

The normal workflow is to prefix an OpenCL application with `oclgrind`, causing the application to see Oclgrind as its OpenCL platform and device. Invalid memory accesses are reported to stderr with kernel, work-item, instruction, and source-line context when debug information is available.

Developers can install an ICD loading point so Oclgrind appears alongside other OpenCL platforms, or run it in interactive mode with a GDB-style session. The README warns that interpretation and bounds checking can be orders of magnitude slower than regular CPU execution, so users usually debug reduced problem sizes.

### Why package nerds care

For package metadata, Oclgrind is notable because it is both a command-line debugger and an OpenCL ICD participant. It depends on heavyweight compiler infrastructure, exposes executable tools, and intersects with OpenCL loader configuration rather than behaving like a simple standalone CLI.

### Timeline

- University of Bristol origin: the README credits James Price and Simon McIntosh-Smith as original creators.
- 2015-05-17: v15.5 release notes mention an LLVM 3.6 update, OpenCL C compiler improvements, performance work, atomic race fixes, and interactive debugger behavior changes.
- 2026-07-01: Homebrew formula metadata lists stable version 26.03.1 with LLVM-related dependencies.

### Related projects

- Oclgrind is related to OpenCL ICD loaders, LLVM, Clang, SYCL/OpenCL developer tooling, and OpenCL debugging and analysis tools such as vendor debuggers and intercept layers.

### Sources

- <https://developer.codeplay.com/products/computecpp/ce/2.1.0/guides/sycl-guide/debugging/debugging-on-an-opencl-device.html>
- <https://formulae.brew.sh/api/formula/oclgrind.json>
- <https://github.com/OpenCL/OpenCL/blob/master/OpenCL.md>
- <https://github.com/jrprice/Oclgrind/releases>
- <https://raw.githubusercontent.com/jrprice/Oclgrind/master/README.md>


## Security Notes

escape, surveillance, or offensive capability signal.

- **Geiger risk:** red / medium
- escape, surveillance, or offensive capability signal

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** oclgrind
- **Version Scheme:** 0
- **Revision:** 0
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** stable

## Other Package-Manager Records

- Ubuntu apt - liboclgrind-21.10t64 - 21.10-4: normalized package name match | Ubuntu 24.04 LTS package indexes: liboclgrind-21.10t64 from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | core library for Oclgrind | https://github.com/jrprice/Oclgrind
- Ubuntu apt - liboclgrind-dev - 21.10-4: normalized package name match | Ubuntu 24.04 LTS package indexes: liboclgrind-dev from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | development files for Oclgrind | https://github.com/jrprice/Oclgrind
- Ubuntu apt - oclgrind - 21.10-4: normalized package name match | Ubuntu 24.04 LTS package indexes: oclgrind from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | OpenCL device simulator | https://github.com/jrprice/Oclgrind


## Related links

- [Source-control packages](https://www.automicvault.com/pkg/source-control-tools/) - Belongs to a source-control command family.
- [Secret-risk packages](https://www.automicvault.com/pkg/secret-risk-packages/) - Has protected-tool coverage, approval-gate, or non-low Geiger security signals.
- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://www.automicvault.com/pkg/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [llvm@19](https://www.automicvault.com/pkg/brew/llvm-19/) - Runtime dependency declared by Homebrew.
- [zstd](https://www.automicvault.com/pkg/brew/zstd/) - Runtime dependency declared by Homebrew.
- [cmake](https://www.automicvault.com/pkg/brew/cmake/) - Build dependency declared by Homebrew.
- [bashdb](https://www.automicvault.com/pkg/brew/bashdb/) - Shares av.db curated category or tags: cli, debugger, debugging, developer-tools.
- [ddd](https://www.automicvault.com/pkg/brew/ddd/) - Shares av.db curated category or tags: cli, debugger, debugging, developer-tools.
- [delve](https://www.automicvault.com/pkg/brew/delve/) - Shares av.db curated category or tags: cli, debugger, debugging, developer-tools.
- [gdb](https://www.automicvault.com/pkg/brew/gdb/) - Shares av.db curated category or tags: cli, debugger, debugging, developer-tools.
- [gdbgui](https://www.automicvault.com/pkg/brew/gdbgui/) - Shares av.db curated category or tags: cli, debugger, debugging, developer-tools.
- [mspdebug](https://www.automicvault.com/pkg/brew/mspdebug/) - Shares av.db curated category or tags: cli, debugger, debugging, developer-tools.
- [remake](https://www.automicvault.com/pkg/brew/remake/) - Shares av.db curated category or tags: cli, debugger, debugging, developer-tools.
- [cargo-careful](https://www.automicvault.com/pkg/brew/cargo-careful/) - Shares av.db curated category or tags: cli, debugging, developer-tools.
- [alive2](https://www.automicvault.com/pkg/brew/alive2/) - Local package facts share a topical domain. Shared terms: cli, developer, developer-tools, llvm, zstd.

## Combined YAML source

View the package source record on GitHub. [combined/oclgrind.yml](https://github.com/automic-vault/db/blob/main/combined/oclgrind.yml)


## Sources

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