8 ms·
Coding Neon Kernels for the Cortex-A53
- dmitrygr 1y agoA53 is not a great core, and seemingly no compiler targets it well. Back at el goog, ChromeOS team had an intern who used a cycle-accurate model of it to find that android's AOT compiler produced shit code for it when multiplies were involved. A small patch to the AOT compiler produced measurable perf improvement in most android workloads on A53, costing no perf on A57/A72. This patch was, of course, not shipped (politics).
- BoingBoomTschak 1y agoCould you expand on the "politics" part? I can't imagine the reason why. I mean, if you had said "suits thought this wasn't business relevant" or something, I'd have believed it.
- dmitrygr 1y agoThe intern was in the ChromeOS team, the fix would have needed to go into android. Those two teams were always in a bit of "stay in your lane, buddy" relationship.
- saagarjha 1y agoI continue to maintain that Google should adopt negative peer bonuses
- jjmarr 1y agoI thought the fabled monorepo was supposed to prevent this?
- nullpoint420 1y agoIIRC, both Android and Chrome(OS) upstream are not in the google3 monorepo.
- djmips 1y agoThe article also mentions how the llvm-mca is inaccurate for the A53. And furthermore LLVM compilers will do poorly "...any compiler that is using LLVM to optimize machine code (such as the Rust compiler or clang) will not do very well for the A53, since it’s essentially trying to optimize code using a wrong CPU model. "