sb-simd
spectralnorm
Our great sponsors
sb-simd | spectralnorm | |
---|---|---|
11 | 2 | |
72 | 5 | |
- | - | |
8.4 | 0.0 | |
almost 2 years ago | over 2 years ago | |
Common Lisp | Common Lisp | |
MIT License | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
sb-simd
-
The Usability of Advanced Type Systems: Rust as a Case Study
> fully dynamic
Well, no, it's SBCL. Common Lisp has support for types, but most compilers only use them for optimization, SBCL goes one step further and emits warnings when you mismatch types. And looking at the code, I can see lots of type declarations.
It's also interesting to note that the code does not seem to be using SBCL's new SIMD library*, so it could be sped up even more.
* <https://github.com/marcoheisig/sb-simd>, see the texinfo file for documentation.
-
Implementation comparison
I suppose that using arrays + using SIMD instructions could be even faster. Someone is already doing that: https://github.com/marcoheisig/sb-simd/blob/master/examples/simd-dot.lisp .
-
Which programming language or compiler is faster
Common Lisp (sbcl) performance via native implementation of simd [0] is very impressive ! It is litteraly acheieving C/Cpp speeds (within few ms). Great work by Marco Heisig
[0] https://github.com/marcoheisig/sb-simd
-
sb-simd vectorization speed
Here is another demonstration of how effective SIMD vectorization can be using sb-simd.
-
Quite amazing SBCL benchmark speed with sb-simd vectorization
You can see on Programming Language and Compiler Benchmark site the amazing speed of SBCL when sb-simd is used for vectorization.
-
How to speed up array writes?
For SBCL-specific, Marco and Bela have put in a ton of work at sb-simd - may be the OP finds the relevant simd interface there!
-
Programming Language and compiler Benchmarks
And sb-simd is getting very-very impressive to say the least thanks to Marco Heisig.
-
Best Lisp(s) for Functional & (seperately) Systems programming?
You can use sb-simd for manual vectorisation with SBCL. Manual vectorisation is definitely more hassle than automatic vectorisation, but often worth it.
-
Common Lisp (SBCL) slower than Python 3.9?
Fully agreed. One more library that could open up areas is also coming soon. Though documentation is still to be written. Please check sb-simd I wish I could have supported Marco even more.
- Question about Cons cell implementations
spectralnorm
-
Common Lisp still beats Java, Rust, Julia, Dart in 2021 on benchmarks based on phone number encoding from the famous paper "Lisp as an alternative to Java" from 21 years ago
I have a few benchmark programs (https://github.com/bpecsek/spectralnorm.git) I have originally developed for The Computer Language Benchmark Game and now I am using them to check regression /benchmark sb-simd (https://github.com/marcoheisig/sb-simd.git) during development doing it with Marco Heisig you can see strange results.
What are some alternatives?
sbcl - Mirror of Steel Bank Common Lisp (SBCL)'s official repository
prechelt-phone-number-encoding - Comparison between Java and Common Lisp solutions to a phone-encoding problem described by Prechelt
PrimesResult - The results of the Dave Plummer's Primes Drag Race
sleef - SIMD Library for Evaluating Elementary Functions, vectorized libm and DFT
sb-simd - A convenient SIMD interface for SBCL.
kandria - A post-apocalyptic actionRPG. Now on Steam!
doom-emacs - An Emacs framework for the stubborn martian hacker [Moved to: https://github.com/doomemacs/doomemacs]
Programming-Language-Benchmarks - Yet another implementation of computer language benchmarks game
Carp - A statically typed lisp, without a GC, for real-time applications.