huggingface/kernels
Build compute kernels and load them from the Hub.
What it solves
It provides a way for Python libraries and applications to dynamically load optimized compute kernels directly from the Hugging Face Hub, bypassing the need for traditional Python package installation via PYTHONPATH.
How it works
The project consists of a Python package called kernels that allows users to to download and execute kernels from the Hub. For developers, it includes a kernel-builder tool to create these portable, versioned kernels. These kernels are designed to be portable across different Python versions, PyTorch build configurations (including various CUDA versions and C++ ABIs), and older C library versions.
Who it’s for
- AI Developers: Those who need high-performance compute kernels for their applications without managing complex installation processes.
- Kernel Authors: Developers who want to build and distribute optimized compute kernels that are compatible across various environments.
Highlights
- Dynamic Loading: Load kernels directly from the Hugging Face Hub.
- Portability: Kernels can be loaded from paths outside the standard Python path.
- Version Control: Support for loading multiple versions of the same kernel within a single Python process.
- Compatibility: Broad support for recent Python versions and various PyTorch/CUDA configurations.
Related
- Dispatch
- Dispatch
- Dispatch
- Project
- Dispatch