Just a little tip: libvirt 1.2.17 fixed the last bits necessary to run 32bit arm VMs on AArch64 hosts with KVM acceleration. We just needed to make sure that libvirt advertised the capability, all the lower level qemu and kernel bits were already in place.

Just select armv7l in virt-manager's UI when creating a new VM, or pass --arch armv7l to virt-install, if on an aarch64 host, and KVM will be used if it's available.

In my (very brief) testing the VM seems to be much faster than 32-on-32 KVM, but I don't think that's a surprise given the speed difference between the host machines.

Update: Marcin posted some virt-manager screenshots and performance info.