trailofbits / testing-handbook

Trail of Bits Testing Handbook
https://appsec.guide/
Creative Commons Attribution 4.0 International
36 stars 4 forks source link

Add discussions about VMs vs Docker #39

Open maxammann opened 2 months ago

maxammann commented 2 months ago

The discussion centers around the choice between using virtual machines (VMs) or Docker for fuzzing tasks, particularly concerning performance and scalability. One viewpoint suggests that VMs might slow down fuzzing speed and recommends Docker for smaller or less frequent fuzzing campaigns. However, another perspective highlights problems with Docker when scaling across many cores due to the limitation of a single shared kernel instance.

The consensus appears to be that the best approach depends on specific use cases. Docker might be more efficient for fuzzing activities on a single core without needing filesystem access. On the other hand, if the fuzzing requires scaling across many cores (more than 64), VMs might be preferable despite potential concerns about the efficiency of context switches and the benefit of having multiple kernel instances. Thus, the decision between VMs and Docker for fuzzing should be guided by the specific requirements and scale of the fuzzing task at hand.