aboutsummaryrefslogtreecommitdiff
path: root/flang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorArseny Kapoulkine <arseny.kapoulkine@gmail.com>2023-09-07 16:51:05 -0700
committerGitHub <noreply@github.com>2023-09-07 16:51:05 -0700
commitbede46f57eec7e9b4665a2b0f1df59a2fb1cc74d (patch)
tree9c67c00a591b072c4779b6763b5e1a8193c9e706 /flang/lib/Frontend/CompilerInvocation.cpp
parentc525b8ede682ffc22c7273bcb5aa02f9940bbbda (diff)
downloadllvm-bede46f57eec7e9b4665a2b0f1df59a2fb1cc74d.zip
llvm-bede46f57eec7e9b4665a2b0f1df59a2fb1cc74d.tar.gz
llvm-bede46f57eec7e9b4665a2b0f1df59a2fb1cc74d.tar.bz2
[Fuzzer] Optimize UpdateFeatureFrequency (#65288)
Instead of a linear scan, use a bitset to track rarity of features. This improves fuzzer throughput rather dramatically (close to 2x) in early exploratory phases; in steady state this seems to improve fuzzing throughput by ~15% according to perf. The benchmarks are done on an executable with ~100k features, so the results may change based on the executable that's being fuzzed. kFeatureSetSize is 2M so the bitset is adding 256 KB to sizeof(InputCorpus), but this should be fine since there's already three arrays indexed by feature index for a total of 200 MB.
Diffstat (limited to 'flang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions