Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

That was a fun read - I'd hazard a guess that the load from memory is not cached and will get started, then the compare is speculatively executed, but then the conditional jump and whatever follows won't fit into the cpu pipeline and will cause it to wait for the fetch to complete.

One thing you might try is to add a superfluous fetch of the same memory location a few hundred instructions before to get it going before you hit the jump, so it's cached already by that time.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: