frontpage.
newsnewestaskshowjobs

Open Source @Github

fp.

Open in hackernews

Faster sorting with SIMD CUDA intrinsics (2024)

https://winwang.blog/posts/bitonic-sort/
92•winwang•1y ago
Code at https://github.com/wiwa/blog-code/

Comments

ashvardanian•1y ago
The article covers extremely important CUDA warp-level synchronization/exchange primitives, but it's not what is generally called SIMD in the CUDA land .

Most "CUDA SIMD" intrinsics are designed to process a 32-bit data pack containing 2x 16-bit or 4x 8-bit values (<https://docs.nvidia.com/cuda/cuda-math-api/cuda_math_api/gro...>). That significantly shrinks their applicability in most domains outside of video and string processing. I've had pretty high hopes for DPX on Hopper (<https://developer.nvidia.com/blog/boosting-dynamic-programmi...>) instructions and started integrating them in StringZilla last year, but the gains aren't huge.

winwang•1y ago
Oh wow, TIL, thanks. I usually call stuff like that SWAR, and every now-and-then I try to think of a way to (fruitfully) use it. The "SIMD" in this case was just an allusion to warp-wide functions looking like how one might use SIMD in CPU code, as opposed to typical SIMT CUDA.

Also, StringZilla looks amazing -- I just became your 1000th Github follower :)

ashvardanian•1y ago
Thanks, appreciate the gesture :)

Traditional SWAR on GPUs is a fascinating topic. I've begun assembling a set of synthetic benchmarks to compare DP4A vs. DPX (<https://github.com/ashvardanian/less_slow.cpp/pull/35>), but it feels incomplete without SWAR. My working hypothesis is that 64-bit SWAR on properly aligned data could be very useful in GPGPU, though FMA/MIN/MAX operations in that PR might not be the clearest showcase of its strengths. Do you have a better example or use case in mind?

winwang•1y ago
I don't -- unfortunately not too well-versed in this field! But I was a bit fascinated with SWAR after I randomly thought of how to prefix-sum with int multiplication, later finding out that it is indeed an old trick as I suspected (I'm definitely not on this thread btw): https://mastodon.social/@dougall/109913251096277108

As for 64-bit... well, I mostly avoid using high-end GPUs, but I was of the impression that i64 is just simulated. In fact, I was thinking of using the full warp as a "pipeline" to implement u32 division (mostly as a joke), almost like anti-SWAR. There was some old-ish paper detailing arithmetic latencies in GPUs and division was approximately more than 32x multiplication (...or I could be misremembering).

bobmcnamara•1y ago
Parallel compares: https://graphics.stanford.edu/~seander/bithacks.html#ZeroInW...
DennisL123•1y ago
Interesting stuff. Not sure if I read this right that it‘s 16 und 32 bit values of integers that get sorted. If yes, I‘d love to see if the GPU implementation can beat a competitive Radix sort implementation on a CPU.
winwang•1y ago
It's 32 32-bit values which get sorted. I don't think a GPU sort would beat a CPU sort at this scale, even if you don't take kernel launch time into account. CPUs are simply too fast for (super-)small data, especially with AVX-512. But if we're talking about a larger amount of data, that would be a different story, i.e. as part of a normal gpu mergesort.
maeln•1y ago
It is also useful if your data already lives on the GPU memory. For example, when you need to z-sort a bunch of particles in a 3d renderer particle system.
exDM69•1y ago
A 32 way GPU sorting algorithm might be just what I need for sorting and deduplicating triangle id's in a visibility buffer renderer I am working on.

Thanks for sharing.

winwang•1y ago
As someone who doesn't know very much about graphics (ironically), you're welcome and hope it helps!
fourseventy•1y ago
What are the biggest use cases of GPU accelerated sorting?

Show HN: HackerBooks – HackerTube, but for books mentioned on HN

https://hackerbooks.org
1558•roansh•21h ago•257 comments

Postgres 19 is late because so many more bugs are being found now

http://rhaas.blogspot.com/2026/10/postgres-19-is-late-and-its-ais-fault.html
587•soheilpro•2d ago•361 comments

Show HN: Wikihack – HackerTube, but for Wikipedia articles mentioned on HN

https://wikihack.netlify.app
278•aizk•8h ago•79 comments

Show HN: I've updated my Linux System Call website and API

https://syscall.sh/
59•guitmz•3h ago•28 comments

HackerTube: YouTube built from videos recommended by HN

https://karpathy.bearblog.dev/hacker-tube/
2668•karpathy•1d ago•595 comments

Bones may release proteins that slow aging and extend life span

https://www.science.org/content/article/bones-may-release-proteins-slow-aging-and-extend-life-span
156•EA-3167•11h ago•44 comments

Ask HN: Which TV do you recommend for privacy?

487•LecroJS•17h ago•611 comments

F/OSS Comics #13: BSD Unix, Part 3 – The Beginning of BSD Unix

https://fosscomics.com/posts/13.%20BSD%20Unix%20Part%203%20-%20The%20Beginning%20of%20BSD%20Unix/
160•joonehur•11h ago•19 comments

Show HN: HackerHack – HackerBooks but for Posts Posted on HN

https://news.ycombinator.com/
100•mw888•6h ago•17 comments

Mystery of 60-Second Fluctuations in Power Grids Solved

https://www.fz-juelich.de/en/news/archive/press-release/2026/mystery-of-60-second-fluctuations-in...
169•_Microft•2d ago•74 comments

Trigger.dev customer environment variables exposed

https://trigger.dev/blog/security-incident-nov-2026
116•anurag•12h ago•55 comments

Supermarket freezers across Europe hit by second suspected cyber-attack

https://www.theguardian.com/world/2026/nov/02/supermarket-freezers-across-europe-hit-by-second-su...
48•fergie•1h ago•48 comments

From Charlemagne to the Kitchen Boy: Reading the Hamburg Rathaus

https://alsterrunde.com/from-charlemagne-to-the-kitchen-boy-reading-the-hamburg-rathaus/
47•mertbio•6h ago•6 comments

Never Complain, Never Explain

https://en.wikipedia.org/wiki/Never_complain,_never_explain
18•gregsadetsky•1h ago•4 comments

The future in old computer magazines (1984–2004)

https://tomorrowasusual.substack.com/p/blast-from-the-past-the-future-in
30•tudell•2h ago•19 comments

Nibnib: Image compression with extreme decompression speed

https://github.com/raphlinus/nibnib
158•raphlinus•3d ago•30 comments

Private Jet plane crashes in Florida

https://www.cbc.ca/news/world/florida-plane-crash-9.7404996
20•hmokiguess•55m ago•25 comments

Tips for more effective fuzz testing with AFL++

https://nullprogram.com/blog/2025/02/05/
131•luu•5d ago•25 comments

China's First Frontier AI Export Controls: Mofcom Announcement No. 48

https://labs.cloudsecurityalliance.org/research/csa-research-note-china-ai-export-controls-announ...
82•jonnybgood•5h ago•50 comments

Copper – A minimal low-level programming language with OOP and generics

https://tibleiz.net/copper/
184•bogdanoff_2•2d ago•101 comments

Last night an AI agent performed brain surgery on a mouse

https://twitter.com/OcanaSantero/status/2115442964574908902
6•FacZap•30m ago•0 comments

Supermarket freezers in Belgium and Sweden hit by suspected cyber-attack

https://www.bbc.com/news/articles/cq1kd1nee80eo
60•xqcgrek2•1h ago•58 comments

The AI cost of JavaScript frameworks

https://nolanlawson.com/2026/10/28/the-ai-cost-of-javascript-frameworks/
399•luu•1d ago•305 comments

Show HN: OmniDiff – Opensource, super fast, content aware Git difftool, in Rust

https://github.com/ivankovic/omnidiff
271•FabCH•1d ago•79 comments

BioWare co-founder: game execs "have never made a game" and don't get it

https://www.pcgamer.com/gaming-industry/none-of-these-people-have-ever-made-a-game-bioware-co-fou...
31•entryleveljobsc•4h ago•10 comments

New 3D thermal invisibility cloak makes objects disappear from infrared cameras

https://www.sciencedaily.com/releases/2026/10/261025073051.htm
93•stevenalowe•3d ago•38 comments

OccupySaaS

https://occupysaas.com/
364•misswaterfairy•13h ago•219 comments

Show HN: Point your camera at a landscape to learn about its geology

https://outcrop.rocks/
223•headsupernova•3d ago•47 comments

Proving and improving the Platonic Representation Hypothesis with JEPAs

https://arxiv.org/abs/2610.39302
147•Anon84•23h ago•76 comments

One-minute frequency disturbances from synchronization in power systems

https://www.nature.com/articles/s41560-026-02144-0
167•croes•2d ago•54 comments