Welcome to RustyNum!¶
RustyNum is a high-performance numerical computation library written in Rust, designed to be faster, lighter, and simpler than traditional solutions. With seamless Python bindings, RustyNum empowers developers and data scientists to achieve efficient computation with minimal overhead.
Early Development Notice
RustyNum is currently in early development and has some important limitations:
- Limited Data Type Support: Currently only supports
float32
,float64
, and experimentaluint8
- Basic Operation Set: Many NumPy operations are not yet implemented
- Partial Multithreading: Only matrix operations support parallel processing
We're actively working on expanding these capabilities. Check our GitHub repository for the latest updates and planned features.
🚀 What is RustyNum?¶
RustyNum is built to demonstrate the potential of Rust's SIMD capabilities while providing a NumPy-like interface for Python users. Whether you're working on machine learning, data analysis, or scientific computing, RustyNum offers:
- Up to 2.86x faster computations than NumPy for key operations.
- Lightweight and portable Python wheels (300 KB vs. NumPy’s ~15 MB).
- Minimal dependencies, ensuring quick and easy deployment.
🏆 Key Features¶
High Performance¶
- Utilizes Rust's
portable_simd
for lightning-fast computations. - Optimized for matrix and vector operations, with support for advanced numerical tasks.
- Matrix operations use additional multithreading for parallelization. Multithreading is currently not supported for any other operations.
Seamless Python Integration¶
- Python bindings offer a familiar interface for NumPy users.
- Compatible with popular Python versions (3.8 - 3.12).
Lightweight and Portable¶
- No external Rust crates used—keeping the codebase simple and transparent.
- Tiny footprint ensures quick installations and smooth deployments.
đź“š Get Started with RustyNum¶
Ready to explore RustyNum? Here’s how you can dive in:
- Installation: Install RustyNum with a single
pip
command. - Quick Start: Learn the basics of using RustyNum.
- Tutorials: Explore real-world examples and advanced guides.
- API Reference: Dive deep into RustyNum’s Python API.
🌟 Why RustyNum?¶
- Speed: Perform computations faster than NumPy.
- Familiarity: Built with Python users in mind—no steep learning curve.
- Flexibility: Ideal for machine learning, data preprocessing, and scientific research.
- Open Source: Contribute and be part of a growing community.
🤝 Contribute¶
RustyNum is open source and powered by contributors like you! Whether you’re a developer, data scientist, or enthusiast, your input matters.
- GitHub Repository: Explore the codebase, report issues, or submit pull requests.
- Join the Community: Share ideas, ask questions, or propose features.
đź“© Stay Updated¶
Follow the journey and stay updated on RustyNum's latest developments:
- Star the GitHub repository to support the project!