No project description provided
Project description
Python math library written in Rust
Work in progress
Examples
Sum of two 32-bit integer array
import rem_math as rm
array = [i for i in range(100_000_000)]
sum_two_i32_result = rm.sum_two_ints32(array, array, simd=True)
print(sum_two_i32_result)
Benchmarks (Python)
--------------------------------------- benchmark 'arr_i32': 1 tests ---------------------------------------
Name (time in ms) Min Max Mean StdDev Median IQR Outliers OPS Rounds Iterations
------------------------------------------------------------------------------------------------------------
test_sum_arr_i32 4.2611 4.4810 4.3450 0.0814 4.3310 0.0625 2;1 230.1495 5 100
------------------------------------------------------------------------------------------------------------
---------------------------------------- benchmark 'arr_i32_simd': 1 tests -----------------------------------------
Name (time in us) Min Max Mean StdDev Median IQR Outliers OPS (Kops/s) Rounds Iterations
--------------------------------------------------------------------------------------------------------------------
test_sum_arr_i32_simd 1.1802 1.2003 1.1903 0.0071 1.1903 0.0051 2;0 840.1472 5 100000
--------------------------------------------------------------------------------------------------------------------
---------------------------------------- benchmark 'numpy': 1 tests ----------------------------------------
Name (time in ms) Min Max Mean StdDev Median IQR Outliers OPS Rounds Iterations
------------------------------------------------------------------------------------------------------------
test_numpy_sum 7.6939 7.8477 7.7710 0.0544 7.7710 0.0387 2;0 128.6840 5 13
------------------------------------------------------------------------------------------------------------
Legend:
Outliers: 1 Standard Deviation from Mean; 1.5 IQR (InterQuartile Range) from 1st Quartile and 3rd Quartile.
OPS: Operations Per Second, computed as 1 / Mean
Benchmarks (Rust)
Array accumulation time: [15.509 µs 15.532 µs 15.575 µs]
Found 11 outliers among 100 measurements (11.00%)
1 (1.00%) low mild
3 (3.00%) high mild
7 (7.00%) high severe
Array accumulation with SIMD instructions
time: [77.083 ns 77.499 ns 78.264 ns]
Found 9 outliers among 100 measurements (9.00%)
2 (2.00%) high mild
7 (7.00%) high severe
Roadmap
- Add GPU-accelerated operations for improved performance.
- Implement own custom type objects for best performance from ecosystem.
- Expand mathematical functionality with additional features and algorithms.
Stay tuned for updates as the library evolves!
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
rem_math-0.1.0.tar.gz
(17.6 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file rem_math-0.1.0.tar.gz.
File metadata
- Download URL: rem_math-0.1.0.tar.gz
- Upload date:
- Size: 17.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.9.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
00afeefaaf324aa58a41e53745e31704f654a2570a79e17a88fb25345579da45
|
|
| MD5 |
b29c5ecccec958d517ed055acc19d54d
|
|
| BLAKE2b-256 |
bdf3a9c144dfc3fa2c9269e47101589a2f592d2f8ea712626d5abc2e45c871aa
|
File details
Details for the file rem_math-0.1.0-cp311-cp311-win_amd64.whl.
File metadata
- Download URL: rem_math-0.1.0-cp311-cp311-win_amd64.whl
- Upload date:
- Size: 126.4 kB
- Tags: CPython 3.11, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.9.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ef37f35c03a22fb0932b79d9e07b9df79f297f029ea475f739dc40eb76081714
|
|
| MD5 |
5890cff4caa7a32afe82f85a3b8220b6
|
|
| BLAKE2b-256 |
307595c66757e138ebbc561aa41dff640d3c4d2502677f96383ea11f06860329
|