Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Parallelize LLVMPointsToSet #305

Open
blipper opened this issue Apr 15, 2021 · 3 comments
Open

Parallelize LLVMPointsToSet #305

blipper opened this issue Apr 15, 2021 · 3 comments
Labels
blocked A prerequisite for this ticket prevents it from being worked on external contribution appreciated A good issue for contribution outside of the SSE group

Comments

@blipper
Copy link
Contributor

blipper commented Apr 15, 2021

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
Copy link
Contributor Author

blipper commented Apr 15, 2021

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
Copy link
Contributor Author

blipper commented Apr 15, 2021

Adding draft implementation in #309 and #310

@blipper
Copy link
Contributor Author

blipper commented Apr 17, 2021

This will likely be dependent on #319

@MMory MMory added blocked A prerequisite for this ticket prevents it from being worked on external contribution appreciated A good issue for contribution outside of the SSE group labels Dec 1, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
blocked A prerequisite for this ticket prevents it from being worked on external contribution appreciated A good issue for contribution outside of the SSE group
Projects
None yet
Development

No branches or pull requests

2 participants