Top all-time · #7225
damageboy
Personal blog · bits.houmus.orgprogrammingsystems
damageboy is a personal blog at bits.houmus.org about programming and systems. Since 2018, 11 different Hacker News readers have linked it 13 times, most often “This Goes to Eleven: Decimating Array.Sort with AVX2”. The last post was in 2020, but the archive is still widely read.
Too few sampled comments (3) to say how often HN recommends it.?
Why HN links it
HN readers link damageboy's blog for its posts on SIMD and vectorized sorting, including the vxsort design series. One commenter cites the series as the best source on the design.
Summarised by Claude from a sample of 3 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.
damageboy’s place to vent over those mean computers
Most-linked posts?
- This Goes to Eleven: Decimating Array.Sort with AVX26 people · 6 mentions · first linked 2020-01-30
- NET Core 3.0 Intrinsics in Real Life2 people · 2 mentions · first linked 2018-08-29
What Hacker News says?
Interesting post and paper, thanks! Sometimes the state of the art is not found in another paper but somewhere else, e.g,. there is vxsort by Dan Shechter (damageboy): https://github.com/damageboy/vxsort-cpp/tree/master He uses a similar approach and while I'm not sure how it compares to the older Blacher et al version, I expect it to be in the ballpark. He's written an excellent series of blog posts on the design &…
Comment linking /2020-01-28/this-goes-to-eleven-pt1
on “Vectorized and performance-portable Quicksort”Submitted Decimating Array.Sort with AVX2 as a story · 133 points
HN discussionIf you define inline bool swap_if( bool c, int& a, int& b) { int ta = a, tb = b; a = c ? tb : ta; b = c ? ta : tb; return c; } and then use it in partition's inner loop like right += swap_if( *left < pivot, *left, *right); ..., compiled with Clang (which generates `cmov` instructions), a simplest-possible quicksort is more than twice as fast as `std::sort`. Then you can doctor up the endgame with heapsort, insertion…
Comment linking /2020-02-02/this-goes-to-eleven-pt5>
on “Hoare’s Rebuttal and Bubble Sort’s Comeback”Submitted This Goes to Eleven: Decimating Array.Sort with AVX2 as a story · 10 points
HN discussionTo add to this: A really good, digestible talk about using SIMD for sorting: https://www.youtube.com/watch?v=M6HaSvifxwQ You can also read the author's blog post series, beginning at https://bits.houmus.org/2020-01-28/this-goes-to-eleven-pt1
Comment linking /2020-01-28/this-goes-to-eleven-pt1
on “Intel Publishes Fast AVX-512 Sorting Library, 10~17x Faster Sorts in NumPy”Submitted NET Core 3.0 Intrinsics in Real Life – 3/3 as a story · 9 points
HN discussionSubmitted Goes to Eleven (Pt. 4/∞) – Decimating Array.Sort with AVX2 as a story · 2 points
HN discussionSubmitted Rewriting Array.Sort with C# Hardware Intrinsics as a story · 2 points
HN discussionSubmitted NET Core 3.0 Intrinsics in Real Life as a story · 2 points
HN discussionSubmitted Goes to Eleven (2020) as a story · 1 points
HN discussionSubmitted This Goes to Eleven (Part 1/∞) as a story · 1 points
HN discussionSubmitted Goes to Eleven (Pt. 4/∞) as a story · 1 points
HN discussionSubmitted .NET Core 3.0 Intrinsics in Real Life (2018) as a story · 1 points
HN discussion