obrah 3.4.0

High-level Rust wrapper around OpenCL using OBWIO
Documentation
# OBRAH


OBRAH (OpenCL But Rusty And High-level) is a Rust crate built on top of [OBWIO](https://github.com/muhammadmahdi70412-ship-it/obwio)(crates.io: [OBWIO](https://crates.io/crates/obwio)), providing a **high-level, ergonomic interface for OpenCL**. It abstracts low-level C bindings, letting you perform GPU computations with minimal boilerplate.

## Overview


OBRAH provides an easy-to-use API for:

* Creating OpenCL contexts and command queues
* Loading kernels from `.cl` files
* Allocating and managing GPU buffers
* Running kernels and retrieving results

It is ideal for Rust developers who want GPU acceleration without dealing with raw OpenCL FFI.

## Features


* High-level Rust interface for OpenCL
* Built on OBWIO for cross-platform GPU support
* Simple buffer management (`buffer.to()`, `buffer.from()`, etc.)
* Kernel management (`use_kernel()`, `make_kernel()`, etc.)
* Cleanup utilities to safely release OpenCL resources

## Installation


Add OBRAH to your `Cargo.toml`:

```toml
\[dependencies]
obrah = "3.0.0"
```

## Requirements


* Rust 1.70 or later
* OpenCL SDK installed on your system
* Compatible OpenCL runtime and drivers
* Set OPENCL_SDK to the path of your OpenCL SDK

## License


Licensed under the Apache License, Version 2.0

## Contributing


Contributions are welcome! Open issues, submit pull requests, or improve the documentation.

## Acknowledgments


OBRAH is built on OBWIO, which uses `bindgen` to generate FFI bindings. Thanks to the Rust and OpenCL communities for their documentation and support.