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

Register moves do not really play a factor in performance, unless its to move to/from vector registers.




H+P says register allocation is one of the most important—if not the most important—optimizations.

In cpu uarch design, sure, but that's outside the context of the discussion. There's nothing you can do to that C++ library you are optimizing that will impact performance due to register allocation/renaming.

This is not always true. Compilers are quite good at register allocation but sometimes they get it wrong and sometimes you can make small changes to code that improve register allocation and thus performance.

Usually the problem is an unfortunately placed spill, so the operation is actually l1d$ traffic, but still.


> l1d$

I don't know how to interpret this.


Level 1 data cache



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

Search: