jm + avx   2

Vectorized Emulation: Hardware accelerated taint tracking at 2 trillion instructions per second | Gamozo Labs Blog
The goal is to take standard applications and JIT them to their AVX-512 equivalent such that we can fuzz 16 VMs at a time per thread. The net result of this work allows for high performance fuzzing (approx 40 billion to 120 billion instructions per second [the 2 trillion clickbait number is theoretical maximum]) depending on the target, while gathering differential coverage on code, register, and memory state.

By gathering more than just code coverage we are able to track state of code deeper than just code coverage itself, allowing us to fuzz through things like memcmp() without any hooks or static analysis of the target at all.

Further since we’re running emulated code we are able to run a soft MMU implementation which has byte-level permissions. This gives us stronger-than-ASAN memory protections, making bugs fail faster and cleaner.
fuzzing  hardware  performance  programming  virtualization  avx-512  avx 
13 days ago by jm
Daniel Lemire's latest cool hack -- a SIMD library to parse gigabytes of JSON document per second
fast  json  parsing  speed  simd  avx  c++  algorithms  hacks  daniel-lemire 
february 2019 by jm

Copy this bookmark: