Most of what the CPUs at Google are doing is just copying fields from one protobuffer to another.
Most of them are doing nothing more than copying data from the database into an http stream.
(sung to this tune https://www.youtube.com/watch?v=iENQXIQ8wH0 )
Side note: It really is incredible what happened in the early days of computing when memory and computation were limited. How much care was taken in the precise layout of memory or even the timing of a calculation was insane.
Webapps are dumb middleware that pipes data from the database into an http stream - but it needs to determine which database calls to invoke and sanitize all the incoming junk.
we still need to do semantic validation, but w/ arrow, now we do that in bulk and on gpus :)
It isn't really the majority these days, is it?
That being said, the fact that that particular tradeoff was considered to be good for Google doesn't mean it actually is, or that it's applicable to one's application.