blitsort
gridsort
blitsort | gridsort | |
---|---|---|
15 | 5 | |
699 | 201 | |
- | - | |
3.3 | 0.0 | |
6 days ago | almost 2 years ago | |
C | C | |
The Unlicense | 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.
blitsort
- Glidesort, a new stable sort in Rust up to ~4x faster for random data
- GitHub - scandum/blitsort: Blitsort is an in-place stable adaptive rotate mergesort / quicksort (Not C#)
-
Hacker News top posts: Dec 2, 2022
Blitsort: A fast, in-place stable hybrid merge/quick sort\ (62 comments)
- Blitsort: A fast, in-place stable hybrid merge/quick sort
-
Blitsort: An ultra-fast in-place stable hybrid merge/quick sort
Looks like the author added the `LICENSE` file in repo root after this comment: https://github.com/scandum/blitsort/blob/main/LICENSE
This is always a great point to bring up, though. People who don't properly declare the license of their OSS projects are (either unintentionally or internionally) make it a headache for companies to use. I'm not saying it's bad to explicitly deny corporate use (via GPL, etc.). The real problem IMO is when other OSS projects vendor unlicensed code and then declare their projects to be under MIT license. Then if a corporation uses it, they're unknowingly violating the copyright of the transitive dep.
- Blitsort: An in-place stable sorting algorithm faster than qsort and pdqsort
- Blitsort: An in-place stable sorting algorithm faster than pdqsort
- I tried creating a sorting algorithm in C language.
- Blitsort is an in-place stable adaptive rotate merge sort
gridsort
-
Blitsort is an in-place stable adaptive rotate merge sort
Well, blitsort's performance is exceptional in the sense that it's 15% faster than the next fastest stable in-place sort.
As for stability, it's useful when you need to sort a table with an integer index. So it might be of value to database software.
I probably should point out some of the weakness on the README.
Agreed on pdqsort being 3x slower worst case on "killer" input, but it's my understanding that's why it's not being used to replace std::sort.
As for runs of 50, haven't benched those, though I assume gridsort (https://github.com/scandum/gridsort) would handle those rather well.
- Gridsort: A stable sort faster than std:sort
- 335 points in 5 hours
What are some alternatives?
quadsort - Quadsort is a branchless stable adaptive mergesort faster than quicksort.
pdqsort - Pattern-defeating quicksort.
fluxsort - A fast branchless stable quicksort / mergesort hybrid that is highly adaptive.
tremc - Curses interface for transmission
highway - Performance-portable, length-agnostic SIMD with runtime dispatch
ram_bench - A benchmark for random memory accesses
combsort.h - optimized combsort macro
glidesort - A Rust implementation of Glidesort, my stable adaptive quicksort/mergesort hybrid sorting algorithm.
crumsort - A branchless unstable quicksort / mergesort that is highly adaptive.