# Rust API Documentation
This page provides access to the Rust API documentation for Monarch.
The Monarch project consists of several Rust crates, each with specialized functionality:
### Core Framework
- **hyperactor** - Core actor framework for distributed computing
- **hyperactor_macros** - Procedural macros for the hyperactor framework
- **hyperactor_multiprocess** - Multi-process support for hyperactor
- **hyperactor_mesh** - Mesh networking for hyperactor clusters
- **hyperactor_mesh_macros** - Macros for hyperactor mesh functionality
### CUDA and GPU Computing
- **cuda-sys** - Low-level CUDA FFI bindings
- **nccl-sys** - NCCL (NVIDIA Collective Communications Library) bindings
- **torch-sys** - PyTorch C++ API bindings for Rust
- **monarch_tensor_worker** - High-performance tensor processing worker
### RDMA and High-Performance Networking
- **monarch_rdma** - Remote Direct Memory Access (RDMA) support for high-speed networking
- **rdmaxcel-sys** - Low-level RDMA acceleration bindings
### System and Utilities
- **controller** - System controller and orchestration
- **hyper** - HTTP utilities and web service support
- **ndslice** - N-dimensional array slicing and manipulation
- **monarch_extension** - Python extension module for Monarch functionality
## Architecture Overview
The Rust implementation provides a comprehensive framework for distributed computing with GPU acceleration:
- **Actor Model**: Built on the hyperactor framework for concurrent, distributed processing
- **GPU Integration**: Native CUDA support for high-performance computing workloads
- **Mesh Networking**: Efficient communication between distributed nodes
- **Tensor Operations**: Optimized tensor processing with PyTorch integration
- **Multi-dimensional Arrays**: Advanced slicing and manipulation of n-dimensional data
For complete technical details, API references, and usage examples, explore the individual crate documentation above.