A bit off topic: my impression is that currently there is really only the cpu backend; is this correct?

We have an OpenCL backend that is also under development, but it hasn’t had a ton of work done recently. We additionally have the Habana backend, but that is only useful if you have a Habana accelerator . Lastly we have the Interpreter backend, but it’s intended as a reference implementation and not super performant.

In that case, does Glow perform optimizations like taking advantage of CPU SIMD architecture? In particular quantization would make the network amenable to that sort of optimization it seems. If so, can we verify those optimizations by dumping low level IR or even LLVM asm output (the latter would probably be more appropriate in this case).

Yes, the CPU backend supports vectorized implementations for most of our op kernels. This is not visible in Glow’s low-level IR, but it is visible in LLVM IR and asm. There are two useful command-line options to use here: -dump-llvm-ir and -dump-llvm-asm.