Emilio G. Cota <c...@braap.org> writes: > This patchset is derived from my ongoing work on MTTCG, but does > not depend on it and brings improvements that we can already > benefit from. It applies cleanly on the current master and > is checkpatch-clean. > > The key goal is to make the TB hash table faster, and while at it, > scalable. Tested on two different host machines, the execution time > improvement before and after this series, when booting a debian > jessie arm image[*] with arm-softmmu, is: > > - Intel Xeon E5-2690: 21.2% less time > - Intel i7-4790K: 23.5% less time > > This workload is particularly sensitive to TB hash performance. > Other workloads not as sensitive might see a slight performance > degradation with this patchset, since the hashing + lookup > functions take now more instructions. In any case, no significant > slowdowns should occur. > > The commit logs are sometimes long because I have lots of numbers > to share. > > The only bits I'm not too comfortable with in this series are patches > 2 and 5; I don't develop on Windows so I'm shooting in the dark there. > > Please take a look and if possible, test on workloads you care about!
Excellent stuff, will have a look this week. > > Thanks, > > Emilio > > [*] taskset -c 0 arm-softmmu/qemu-system-arm -machine type=virt -nographic \ > -smp 1 -m 4096 -netdev user,id=unet,hostfwd=tcp::2222-:22 \ > -device virtio-net-device,netdev=unet \ > -drive file=jessie-arm32.qcow2,id=myblock,index=0,if=none \ > -device virtio-blk-device,drive=myblock \ > -kernel aarch32-current-linux-kernel-only.img \ > -append 'console=ttyAMA0 root=/dev/vda1' \ > -name arm,debug-threads=on -smp 1 -tb-size 1024 > The image is taken from: > http://people.linaro.org/~alex.bennee/images/jessie-arm32.qcow2 > The image was modified to call `shutdown -h now` right after boot. > The kernel is taken from: > > http://people.linaro.org/~alex.bennee/images/aarch32-current-linux-kernel-only.img -- Alex Bennée