Przykład: wtyczka CUDA JAX
- Implementacja interfejsu PJRT C API za pomocą obudowy (pjrt_c_api_gpu.h).
- Skonfiguruj punkt wejścia pakietu (setup.py).
- Zaimplementuj metodę initialize() (__init__.py).
- Można go testować za pomocą dowolnych testów jax dla CUDA.
Implementacje platform
Informacje o używaniu PJRT po stronie frameworka w celu nawiązania połączenia z urządzeniami PJRT:
- JAX
- jax-ml/jax:
interfejs API współpracuje z interfejsami PJRT za pomocą interfejsów
xla_client
- jax-ml/jax:
interfejs API współpracuje z interfejsami PJRT za pomocą interfejsów
- GoMLX
- ZML
- Pakiet API PJRT pjrt.zig
- Załaduj wtyczkę PJRT context.zig.
- Interakcje z buforami PJRT buffer.zig
- Wykonaj moduł za pomocą pakietu module.zig PJRT.
Implementacje sprzętowe
- Wtyczki pełnej integracji (PJRT+MLIR+XLA):
- Wtyczki do lekkiej integracji (PJRT+MLIR):
- StableHLO Reference Interpreter plugin (wtyczka Interpretera referencyjnego StableHLO (oparta na MLIR, wtyczka C++), która zostanie połączona po zakończeniu devlabs).
- Wtyczka Tenstorrent-XLA (opracowana na podstawie MLIR, wtyczka w języku C)