#simd #libm #vector #math #ffi

nightly sys no-std sleef-sys

Rust FFI bindings to the SLEEF Vectorized Math Library

3 releases

Uses old Rust 2015

0.1.2 Jan 30, 2019
0.1.1 Aug 15, 2018
0.1.0 Aug 15, 2018

#1476 in Hardware support

Download history 37/week @ 2023-06-06 53/week @ 2023-06-13 73/week @ 2023-06-20 51/week @ 2023-06-27 47/week @ 2023-07-04 49/week @ 2023-07-11 64/week @ 2023-07-18 56/week @ 2023-07-25 44/week @ 2023-08-01 50/week @ 2023-08-08 61/week @ 2023-08-15 42/week @ 2023-08-22 44/week @ 2023-08-29 63/week @ 2023-09-05 68/week @ 2023-09-12 43/week @ 2023-09-19

227 downloads per month
Used in 4 crates


26K SLoC

C 25K SLoC // 0.0% comments Shell 321 SLoC // 0.1% comments Java 151 SLoC Rust 130 SLoC // 0.2% comments

Contains (Zip file, 93KB) sleef/doc/sleeflogo.pptx

Rust bindings for SLEEF

Travis-CI Status Appveyor Status Latest Version docs

SLEEF: SIMD Library for Evaluating Elementary Functions

Note: Rust does not support long double (80-bit precision floating-point types) and the SLEEF APIs that use it are not included in these bindings yet (they could probably be added to just handle long double as a bag of bytes**.

Cargo features

  • dft (default: disabled - equivalent to SLEEF's BUILD_DFT option): SLEEF also includes SIMD-vectorized and parallelized subroutines for discrete Fourier transform (DFT) with an API similar to FFTW.

Platform support

This wrapper supports the following platforms, but CI is not properly set up for all of them yet.

Linux targets: build run
MacOSX targets: build run
Windows targets: build run


This project is licensed under either of

at your option.


Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in sleef-sys by you, as defined in the Apache-2.0 license, shall be triple licensed as above, without any additional terms or conditions.


~41K SLoC