Popularity
4.9
Stable
Activity
0.0
Stable
152
9
19

Programming language: Assembly
License: GNU General Public License v3.0 or later

blas alternatives and similar packages

Based on the "Science and Data Analysis" category.
Alternatively, view blas alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of blas or a related project?

Add another 'Science and Data Analysis' Package

README

Go implementation of BLAS (Basic Linear Algebra Subprograms)

Any function is implemented in generic Go and if it is justified, it is optimized for AMD64 (using SSE2 instructions).

AMD64 implementation uses MOVUPS/MOVUPD instructions if all strides equal to 1 so it run fast on Nehalem, Sandy Bridge and newer processors but relatively slow on older processors.

Any implemented function has its own unity test and benchmark.

Implemented functions

Level 1

Sdsdot, Sdot, Ddot, Snrm2, Dnrm2, Sasum, Dasum, Isamax, Idamax, Sswap, Dswap, Scopy, Dcopy, Saxpy, Daxpy, Sscal, Dscal, Srotg, Drotg, Srot, Drot

Level 2

not implemented

Level 3

not implemented

Example benchmarks

FunctionGeneric GoOptimized for AMD64 Ddot2825 ns/op895 ns/op Dnrm22787 ns/op597 ns/op Dasum3145 ns/op560 ns/op Sdsdot3133 ns/op1733 ns/op Sdot2832 ns/op508 ns/op

Documentation

http://godoc.org/github.com/ziutek/blas