frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

High-performance C++ hash table using grouped SIMD metadata scanning

https://github.com/Cranot/grouped-simd-hashtable
36•rurban•5d ago

Comments

dana321•1h ago
Should it be possible in rust?
almostgotcaught•1h ago
Is there like a list of canned responses that low-effort commenters just rotate through? Here lemme try:

This would've been 39,000X better if written in mojo.

anematode•1h ago
Does this work in WebAssembly?
publicdebates•1h ago
Nice to see people focusing on efficiency instead of web/electron bloat.
conradludgate•1h ago
As far as I understand, hashbrown already does this. Hashbrown is based on Google's SwissTable, and this project references that SwissTable already does this optimisation.
conradludgate•1h ago
To elaborate, hashbrown uses quadratic-ish probing over groups, each group can store 16 slots on sse2.

https://github.com/rust-lang/hashbrown/blob/master/src/contr...

https://github.com/rust-lang/hashbrown/blob/6efda58a30fe712a...

jeffbee•1h ago
Static size, no deleting. Everyone already knew that you can make faster hash tables when they never need to be resized, but nobody bothers doing that because it is pretty useless or at best niche.
dragontamer•1h ago
Well, not to be completely dismissive here... It's clearly a prototype project to try and make quadratic probing a thing.

I'm not convinced this methology is better than linear probing (which then can be optimized easily into RobinHood hashes).

The only line I see about linear hashes is:

> Linear jumps (h, h+16, h+32...) caused 42% insert failure rate due to probe sequence overlap. Quadratic jumps spread groups across the table, ensuring all slots are reachable.

Which just seems entirely erroneous to me. How can linear probing fail? Just keep jumping until you find an open spot. As long as there is at least one open spot, you'll find it in O(n) time because you're just scanning the whole table.

Linear probing has a clustering problem. But IIRC modern CPUs have these things called L1 Cache/locality, meaning scanning all those clusters is stupidly fast in practice.

jeffbee•1h ago
The comments don't make sense to you because you know what you are talking about, claude does not, and this code was all written by claude.
dragontamer•1h ago
Hmmm. That makes me sad but it does explain the uneasy feeling I got when reading the GitHub page
hinkley•24m ago
Linear probing could get pretty nasty corner cases in a concurrent system. Particularly one where the table is “warmed up” at start so that 80% of the eventual size shows up in the first minute of use. If that table is big enough then pressure to increase the load factor will be high, leading to more probing.

If you have ten threads all probing at the same time then you could get priority inversion and have the first writer take the longest to insert. If they hit more than a couple collisions then writers who would collide with them end up taking their slots before they can scan them.

hinkley•28m ago
Cliff Click designed a hash table that does concurrent draining of the old table when resizing to a new one. I don’t think he did rate limiting on puts but there are other real time systems that amortize cleanup across all write allocations, which then spreads the cost in a way compatible with deadlines.
zX41ZdbW•43m ago
The test does not look realistic: https://github.com/Cranot/grouped-simd-hashtable/blob/master...

Better to use a few distributions of keys from production-like datasets, e.g., from ClickBench. Most of them will be Zipfian and also have different temporal locality.

Google is dead. Where do we go now?

https://www.circusscientist.com/2025/12/29/google-is-dead-where-do-we-go-now/
292•tomjuggler•2h ago•230 comments

ManusAI Joins Meta

https://manus.im/blog/manus-joins-meta-for-next-era-of-innovation
19•gniting•18m ago•8 comments

USPS announces changes to the postmark date system

https://nstp.org/article/usps-announces-changes-postmark-date-system
42•rbanffy•56m ago•55 comments

Static Allocation with Zig

https://nickmonad.blog/2025/static-allocation-with-zig-kv/
141•todsacerdoti•6h ago•74 comments

Flame Graphs vs Tree Maps vs Sunburst (2017)

https://www.brendangregg.com/blog/2017-02-06/flamegraphs-vs-treemaps-vs-sunburst.html
70•gudzpoz•2d ago•17 comments

List of domains censored by German ISPs

https://cuiiliste.de/domains
221•elcapitan•4h ago•85 comments

Left Behind: Futurist Fetishists, Prepping and the Abandonment of Earth (2019)

https://www.boundary2.org/2019/08/sarah-t-roberts-and-mel-hogan-left-behind-futurist-fetishists-p...
22•naves•3h ago•12 comments

Which Humans? (2023)

https://osf.io/preprints/psyarxiv/5b26t_v1
24•surprisetalk•2h ago•12 comments

A production bug that made me care about undefined behavior

https://gaultier.github.io/blog/the_production_bug_that_made_me_care_about_undefined_behavior.html
75•birdculture•4h ago•50 comments

When someone says they hate your product

https://www.getflack.com/p/responding-to-negative-feedback
46•jger15•3h ago•51 comments

All Delisted Steam Games

https://delistedgames.com/all-delisted-steam-games/
131•Bondi_Blue•3h ago•49 comments

Show HN: Aroma: Every TCP Proxy Is Detectable with RTT Fingerprinting

https://github.com/Sakura-sx/Aroma
46•Sakura-sx•4d ago•24 comments

Show HN: Superset – Terminal to run 10 parallel coding agents

https://superset.sh/
49•avipeltz•6d ago•42 comments

GOG is getting acquired by its original co-founder

https://www.gog.com/blog/gog-is-getting-acquired-by-its-original-co-founder-what-it-means-for-you/
466•haunter•5h ago•262 comments

AI is forcing us to write good code

https://bits.logic.inc/p/ai-is-forcing-us-to-write-good-code
32•sgk284•3h ago•15 comments

Obelisk 0.32: Cancellation, WebAPI, Postgres

https://obeli.sk/blog/announcing-obelisk-0-32/
8•tomasol•2h ago•1 comments

Libgodc: Write Go Programs for Sega Dreamcast

https://github.com/drpaneas/libgodc
183•drpaneas•8h ago•44 comments

Pandas with Rows (2022)

https://datapythonista.me/blog/pandas-with-hundreds-of-millions-of-rows
6•fud101•3d ago•0 comments

Linux DAW: Help Linux musicians to quickly and easily find the tools they need

https://linuxdaw.org/
156•prmoustache•10h ago•76 comments

Kidnapped by Deutsche Bahn

https://www.theocharis.dev/blog/kidnapped-by-deutsche-bahn/
865•JeremyTheo•10h ago•801 comments

High-performance C++ hash table using grouped SIMD metadata scanning

https://github.com/Cranot/grouped-simd-hashtable
36•rurban•5d ago•13 comments

Static Allocation for Compilers

https://matklad.github.io/2025/12/23/static-allocation-compilers.html
16•enz•5d ago•4 comments

Nvidia takes $5B stake in Intel under September agreement

https://www.reuters.com/legal/transactional/nvidia-takes-5-billion-stake-intel-under-september-ag...
161•taubek•5h ago•61 comments

Show HN: Evidex – AI Clinical Search (RAG over PubMed/OpenAlex and SOAP Notes)

https://www.getevidex.com
27•amber_raza•5h ago•13 comments

You can't design software you don't work on

https://www.seangoedecke.com/you-cant-design-software-you-dont-work-on/
210•saikatsg•14h ago•72 comments

Binance's Trust Wallet extension hacked; users lose $7M

https://www.web3isgoinggreat.com/?id=trust-wallet-hack
61•ilamont•2h ago•6 comments

Karpathy on Programming: "I've never felt this much behind"

https://twitter.com/karpathy/status/2004607146781278521
211•rishabhaiover•3d ago•175 comments

Meta's ads tools started switching out top-performing ads with AI-generated ones

https://www.businessinsider.com/meta-ai-generating-bizarre-ads-advantage-plus-2025-10
101•zdw•2h ago•59 comments

Why is calling my asm function from Rust slower than calling it from C?

https://ohadravid.github.io/posts/2025-12-rav1d-faster-asm/
88•gavide•2d ago•29 comments

What an unprocessed photo looks like

https://maurycyz.com/misc/raw_photo/
2273•zdw•1d ago•365 comments