> [We] identify common building blocks in the lower levels of the software stack.
> This “datacenter tax” can comprise nearly 30% of cycles
> across jobs running in the fleet, which makes its constituents
> prime candidates for hardware specialization in future server
> systems-on-chips.
Some of the components they identify are memmove() (definitely a loop), protocol buffers (proto parsing is a loop), and compression/decompression (a loop).
This paper from 2015 finds that a large amount of CPU in Google data centers is spent in a relatively small number of core components, known as the "datacenter tax": https://static.googleusercontent.com/media/research.google.c...
Some of the components they identify are memmove() (definitely a loop), protocol buffers (proto parsing is a loop), and compression/decompression (a loop).