Metadata-Version: 2.4
Name: metaxuda
Version: 1.0.0
Summary: CUDA-compatible GPU runtime for Apple Silicon that maps Numba CUDA kernels and memory operations onto Apple Metal. Synchronous execution line.
Author-email: Perinban Parameshwaran <p.perinban@gmail.com>
License: Proprietary - Free for students and personal use. Commercial use requires license from p.perinban@gmail.com
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Operating System :: MacOS
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy>=1.23
Requires-Dist: numba<0.67,>=0.61
Provides-Extra: test
Requires-Dist: pytest>=7.0; extra == "test"
Dynamic: license-file

# MetaXuda

MetaXuda is a **CUDA runtime shim for Apple Silicon**, written in Rust, that allows **Numba CUDA kernels** to run unmodified by mapping CUDA calls to Metal.

---

## ✨ Features
- Drop-in replacement for `libcudart.dylib` / `libcuda.dylib`
- Run Numba CUDA kernels (`@cuda.jit`) directly on Apple Metal
- Includes precompiled Metal `.metallib` shaders for fused math ops
- Ships with a stubbed `libdevice.bc` so no CUDA Toolkit is required

---

## ⚙️ Installation

### Requirements
- macOS 13+ with Apple Silicon (M1/M2/M3)
- Python >=3.10
- [NumPy](https://numpy.org/) (>=1.23)
- [Numba](https://numba.pydata.org/) (>=0.59)

### Steps
```bash
# Clone the repo
git clone https://github.com/perinban/MetaXuda.git
cd MetaXuda-

# Back to project root
cd ..
pip install -e .
