frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

OBBB signed: Reinstates immediate expensing for U.S.-based R&D

https://www.kbkg.com/feature/house-passes-tax-bill-sending-to-president-for-signature
273•tareqak•6h ago•141 comments

Baba Is Eval

https://fi-le.net/baba/
108•fi-le•1d ago•11 comments

Why AO3 Was Down

https://www.reddit.com/r/AO3/s/67nQid89MW
66•danso•4h ago•10 comments

Being too ambitious is a clever form of self-sabotage

https://maalvika.substack.com/p/being-too-ambitious-is-a-clever-form
233•alihm•9h ago•61 comments

Learn to love the moat of low status

https://usefulfictions.substack.com/p/learn-to-love-the-moat-of-low-status
90•jger15•2d ago•38 comments

Mini NASes marry NVMe to Intel's efficient chip

https://www.jeffgeerling.com/blog/2025/mini-nases-marry-nvme-intels-efficient-chip
333•ingve•15h ago•170 comments

The History of Electronic Music in 476 Tracks (1937–2001)

https://www.openculture.com/2025/06/the-history-of-electronic-music-in-476-tracks.html
21•bookofjoe•2d ago•4 comments

How to Incapacitate Google Tag Manager and Why You Should (2022)

https://backlit.neocities.org/incapacitate-google-tag-manager
147•fsflover•12h ago•102 comments

EverQuest

https://www.filfre.net/2025/07/everquest/
204•dmazin•14h ago•96 comments

Why I left my tech job to work on chronic pain

https://sailhealth.substack.com/p/why-i-left-my-tech-job-to-work-on
305•glasscannon•17h ago•182 comments

Nvidia is full of shit

https://blog.sebin-nyshkim.net/posts/nvidia-is-full-of-shit/
555•todsacerdoti•8h ago•279 comments

Sleeping beauty Bitcoin wallets wake up after 14 years to the tune of $2B

https://www.marketwatch.com/story/sleeping-beauty-bitcoin-wallets-wake-up-after-14-years-to-the-tune-of-2-billion-79f1f11f
119•aorloff•12h ago•242 comments

Amiga Linux (1993)

https://groups.google.com/g/comp.sys.amiga.emulations/c/xUgrpylQOXk
11•marcodiego•3h ago•3 comments

Clarifying Our Pricing

https://cursor.com/en/blog/june-2025-pricing
8•twapi•1h ago•1 comments

Larry (cat)

https://en.wikipedia.org/wiki/Larry_(cat)
287•dcminter•20h ago•66 comments

The ITTAGE indirect branch predictor

https://blog.nelhage.com/post/ittage-branch-predictor/
37•Bogdanp•6h ago•10 comments

Vortex (Véhicule Orbital Réutilisable de Transport Et D'Exploration)

https://www.dassault-aviation.com/en/space/aerospace-vehicles/vortex-vehicule-orbital-reutilisable-de-transport-et-dexploration/
12•ggm-at-algebras•2d ago•3 comments

In a milestone for Manhattan, a pair of coyotes has made Central Park their home

https://www.smithsonianmag.com/science-nature/in-a-milestone-for-manhattan-a-pair-of-coyotes-has-made-central-park-their-home-180986892/
117•sohkamyung•3d ago•116 comments

The story behind Caesar salad

https://www.nationalgeographic.com/travel/article/story-behind-caesar-salad
90•Bluestein•10h ago•48 comments

The Amiga 3000 Unix and Sun Microsystems: Deal or No Deal?

https://www.datagubbe.se/amix/
44•wicket•9h ago•5 comments

Robots move Shanghai city block [video]

https://www.youtube.com/watch?v=7ZccC9BnT8k
87•surprisetalk•1d ago•33 comments

Continue (YC S23) is hiring software engineers in San Francisco

https://www.ycombinator.com/companies/continue/jobs
1•sestinj•9h ago

Show HN: I AI-coded a tower defense game and documented the whole process

https://github.com/maciej-trebacz/tower-of-time-game
236•M4v3R•18h ago•125 comments

Writing a Game Boy Emulator in OCaml

https://linoscope.github.io/writing-a-game-boy-emulator-in-ocaml/
228•ibobev•21h ago•41 comments

I convinced my K8s team to go AWS serverless. Spoiler, they didn't

https://medium.com/@dnsearching/how-i-convinced-my-k8s-team-to-go-aws-serverless-5104e880e7a4
3•gpi•2d ago•10 comments

Wind Knitting Factory

https://www.merelkarhof.nl/work/wind-knitting-factory
237•bschne•1d ago•60 comments

Show HN: AirBending – Hand gesture based macOS app MIDI controller

https://www.nanassound.com/products/software/airbending
61•bepitulaz•11h ago•16 comments

Bcachefs may be headed out of the kernel

https://lwn.net/Articles/1027289/
115•ksec•17h ago•162 comments

ADXL345 Die Analysis

https://www.tinytransistors.net/2024/08/25/adxl345/
24•picture•4h ago•0 comments

Kepler.gl

https://kepler.gl/
144•9woc•16h ago•19 comments
Open in hackernews

The ITTAGE indirect branch predictor

https://blog.nelhage.com/post/ittage-branch-predictor/
37•Bogdanp•6h ago

Comments

nynx•6h ago
I must be missing something here. How would this help predict interpreter dispatch? Those won’t be a function of previous branch history or pc, which may very well be independent of the next opcode. They’d be a function of state in memory or registers.
achierius•5h ago
"very well may be" but oftentimes isn't. Branch history does in practice do a very good job of predicting what target you're going to take for an indirect branch.
nynx•5h ago
Sure. I can easily see that often being the case for arbitrary code but not interpreter dispatch loops.
brigade•5h ago
In a hot loop, the next opcode can be predicted quite well from the history of previous opcodes executed, especially once have a couple iterations available in your history. And the opcodes executed in an interpreter are generally equivalent to the dispatch branch target.
saagarjha•4h ago
Interpreters are just like normal programs, but splatted out a bit. In particular, they have branches and loops just like normal programs. The challenge for processors is that these high level constructs are far apart and dispatched through an interpreter loop, which obfuscates them. Being able to reach further back in history lets you recover this kind of information "through" the intervening bits.
dzaima•4h ago
If your interpreter is interpreting a program with unpredictable branches, of course no predictor will magically make your interpreter get branches better predicted than an equivalent compiled program will.

The question here is about all other branching the interpreter will do. i.e. even if you have a unpredictable `if (a+b < 0)`, there's still the dispatching to the "load-variable" and "add" and "load-constant" and "less-than" and "do-branch" opcodes, that still will benefit from being predicted, and they could very well if you have it repeated in a loop (despite still having a single unpredictable branch), or potentially even if you just have a common pattern in the language (e.g. comparison opcodes being followed by a branch opcode).

saagarjha•4h ago
If the author is around, the final link points to http://localhost:1313/post/cpython-tail-call/#further-weirdn....
jonstewart•4h ago
I learned about computed goto a dozen years ago, tried it out in my interpreter, and got worse performance in that Haswell era than with a trusty switch statement. Branch predictors have made computed goto less compelling for a good long time.

Tail call is a different matter…

burnt-resistor•4h ago
Some architectures have/had branch hint instructions.

https://arcb.csc.ncsu.edu/~mueller/cluster/ps3/SDK3.0/docs/a...

The impact of a branch miss is a particular pipeline stalls to flush the incorrect prediction. If there were resources available for the other branch to be speculatively executed concurrently and in parallel it might take less wall time.

pbsd•3h ago
The Pentium 4 had branch hints in the form of taken/not taken prefixes. They were not found to be useful and basically ignored in every subsequent Intel microarchitecture, until Redwood Cove brought back the branch taken prefix in 2023.