Switch branches/tags
Nothing to show
Find file History
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
..
Failed to load latest commit information.
README.md
_cgmath.rs
_nalgebra.rs
_ndarray.rs
_rulinalg.rs
_vek.rs
bench.rs

README.md

mathvector_dotproduct

Doing a dot product operation on different size vectors. All floats.

  • Baseline: 3 dimension vector * 3 dimension vector
  • Hundred: 100 dimension vector * 100 dimension vector
  • Thousand: 1000 dimension vector * 1000 dimension vector

Note - cgmath and vek doesn't allow to do more than 4 dimensions.

baseline hundred thousand
vek 0 - -
cgmath 0 - -
rulinalg 0.066 0.116 0.593
ndarray 0.074 0.122 0.606
nalgebra 0.009 0.197 1.142

Speed units are in microseconds per iteration. Less is better.

Crate versions

vek = "0.9.5"    # Generic 2D-3D math swiss army knife for game engines, with SIMD support and focus on convenience.
cgmath = "0.16.1"              # A linear algebra and mathematics library for computer graphics.
rulinalg = "0.4.2"         # A linear algebra library.
ndarray = "0.12.1"            # An n-dimensional array for general elements and for numerics. Lightweight array views and slicing…
nalgebra = "0.16.12"           # Linear algebra library with transformations and statically-sized or dynamically-sized matrices.

Compiled on: rustc 1.31.1 (b6c32da9b 2018-12-18)