phasar icon indicating copy to clipboard operation
phasar copied to clipboard

Parallelize LLVMPointsToSet

Open blipper opened this issue 4 years ago • 3 comments

Is your feature request related to a problem? Please describe. For programs with large numbers of variables and functions O(thouands) LLVMPointsToSet takes O(minutes) even with CDLSheen.

Describe the solution you'd like Parallelize this using the cores on the machine! It seems like it is somewhat possible even if only to call AA.alias() in parallel - which takes most of the time?

Describe alternatives you've considered Dunno?

blipper avatar Apr 15 '21 06:04 blipper

Metrics for the output

00:00:13.734705 - [INFO] Preprocess module: /tmp/aes_ctr_boringssl_test.bc 00:00:13.735430 - [INFO] Running ValueAnnotationPass 00:00:21.333130 - [INFO] Running GeneralStatisticsAnalysis 00:00:22.906208 - [INFO] GeneralStatisticsAnalysis summary for module: '/tmp/aes_ctr_boringssl_test.bc' 00:00:22.906314 - [INFO] Instructions : 2142062 00:00:22.906344 - [INFO] Allocated Types : 1012 00:00:22.906393 - [INFO] Allocation Sites : 21274 00:00:22.906425 - [INFO] Basic Blocks : 212656 00:00:22.906451 - [INFO] Calls Sites : 1039358 00:00:22.906493 - [INFO] Functions : 16581 00:00:22.906518 - [INFO] Globals : 20123 00:00:22.906541 - [INFO] Global Pointer : 20123 00:00:22.906564 - [INFO] Memory Intrinsics : 10438 00:00:22.906588 - [INFO] Store Instructions : 80218

blipper avatar Apr 15 '21 14:04 blipper

Adding draft implementation in #309 and #310

blipper avatar Apr 15 '21 21:04 blipper

This will likely be dependent on #319

blipper avatar Apr 17 '21 18:04 blipper