3 ms·
These are super interesting and I would love if you submit to HN a cool video, slide deck, blog post or paper about systems that optimize a large task across ma
by wolf550e 9y ago
These are super interesting and I would love if you submit to HN a cool video, slide deck, blog post or paper about systems that optimize a large task across machine boundaries!
But normal people consider the output of a compiler to be a single binary (or bytecode meant to run in a single possibly-forking process) and the optimizations the compiler is allowed to perform in the "as-if" principle do not change the output of strace of the resulting binary.
I would be very surprised if a compiler ever changed the externally-visible IO operations my program performed, even if for the better. What I call a compiler cannot change the file format or the serialization format or the indexing or the way data is written to a socket or things like that. It can only change computations and memory accesses between syscalls as long as the same syscalls are performed.
For systems where the task is defined at such high level that choosing the file format is up to the "compiler", I would want to use a different name than "compiler".