about summary refs log tree commit diff
path: root/docs/FAQ.md
diff options
context:
space:
mode:
authorvan Hauser <vh@thc.org>2020-07-29 12:58:02 +0200
committervan Hauser <vh@thc.org>2020-07-29 12:58:02 +0200
commit22921c493fbf48b317354bb50f1af4a678fcfb55 (patch)
treea381f9458a1f73713c220085ab7afef17d571984 /docs/FAQ.md
parentf32811922ec8f363bdf46a019d984058dbeb06bf (diff)
downloadafl++-22921c493fbf48b317354bb50f1af4a678fcfb55.tar.gz
improve docs, enable laf compare if float is set
Diffstat (limited to 'docs/FAQ.md')
-rw-r--r--docs/FAQ.md17
1 files changed, 14 insertions, 3 deletions
diff --git a/docs/FAQ.md b/docs/FAQ.md
index d848e08a..e09385a8 100644
--- a/docs/FAQ.md
+++ b/docs/FAQ.md
@@ -2,13 +2,24 @@
 
 ## Contents
 
-  1. [What is an edge?](#what-is-an-edge)
-  2. [Why is my stability below 100%?](#why-is-my-stability-below-100)
-  3. [How can I improve the stability value](#how-can-i-improve-the-stability-value)
+  1. [How to improve the fuzzing speed?](#how-to-improve-the-fuzzing-speed)
+  2. [What is an edge?](#what-is-an-edge)
+  3. [Why is my stability below 100%?](#why-is-my-stability-below-100)
+  4. [How can I improve the stability value](#how-can-i-improve-the-stability-value)
 
 If you find an interesting or important question missing, submit it via
 [https://github.com/AFLplusplus/AFLplusplus/issues](https://github.com/AFLplusplus/AFLplusplus/issues)
 
+## How to improve the fuzzing speed
+
+  1. use [llvm_mode](docs/llvm_mode/README.md): afl-clang-lto (llvm >= 11) or afl-clang-fast (llvm >= 9 recommended)
+  2. Use [persistent mode](llvm_mode/README.persistent_mode.md) (x2-x20 speed increase)
+  3. Use the [afl++ snapshot module](https://github.com/AFLplusplus/AFL-Snapshot-LKM) (x2 speed increase)
+  4. If you do not use shmem persistent mode, use `AFL_TMPDIR` to point the input file on a tempfs location, see [docs/env_variables.md](docs/env_variables.md)
+  5. Improve kernel performance: modify `/etc/default/grub`, set `GRUB_CMDLINE_LINUX_DEFAULT="ibpb=off ibrs=off kpti=off l1tf=off mds=off mitigations=off no_stf_barrier noibpb noibrs nopcid nopti nospec_store_bypass_disable nospectre_v1 nospectre_v2 pcid=off pti=off spec_store_bypass_disable=off spectre_v2=off stf_barrier=off"`; then `update-grub` and `reboot` (warning: makes the system more insecure)
+  6. Running on an `ext2` filesystem with `noatime` mount option will be a bit faster than on any other journaling filesystem
+  7. Use your cores! [README.md:3.b) Using multiple cores/threads](../README.md#b-using-multiple-coresthreads)
+
 ## What is an "edge"
 
 A program contains `functions`, `functions` contain the compiled machine code.