News for hackers. Stuff that matters.
Re:Let’s build a high-performance fuzzer with GPUs by jcims on Thursday October 22, 2020 @04:50PM (#24863147)
Is the fuzzing use case burying the lede here? The ability to translate an aarch64 binary so it can run on a GPU seems like it might be interesting in its own right? Maybe the fact that I'm not coming up with obvious reasons is a clue that there aren't but it's just remarkable to me that it's possible.

Great job folks! Very cool.

Re:Let’s build a high-performance fuzzer with GPUs by moyix on Thursday October 22, 2020 @06:28PM (#24863955)
The main thing isthat it doesn't support system calls, so the vast majority of code won't run. The ability to translate from one architecture to another is super cool though, and if you're curious about it you should check out McSema/Remill:

https://github.com/lifting-bits/mcsema

https://github.com/lifting-bits/remill

https://blog.trailofbits.com/2018/01/23/heavy-lifting-with-m...

Re:Let’s build a high-performance fuzzer with GPUs by ksml on Thursday October 22, 2020 @06:38PM (#24864030)
Thanks so much for checking this out!

Like tyoma said in the previous comment, if you had a use case where you needed to run lots of things in parallel, then this would be useful. Latency is much higher on GPUs (clock speeds are lower and memory access latencies are higher), and system call support will make this even worse, so this probably wouldn't fare well unless you had a use case that could utilize that high a degree of parallelism.

Re:Let’s build a high-performance fuzzer with GPUs by jcims on Thursday October 22, 2020 @07:36PM (#24864517)
Seems like it would be good for anything you would put in a stream e.g. encryption/decryption, encode/decode, compress/decompress, parsing, filtering, routing, etc.
Re:Let’s build a high-performance fuzzer with GPUs by tyoma on Thursday October 22, 2020 @05:09PM (#24863332)
It would only be beneficial to do the translation if the underlying aarch64 (or x86 or other) could be run in parallel on multiple data elements to begin with. Fuzzing naturally has that property, but certainly there are other uses.