You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
After compiling and linking a module with over 300 cpp files, the pattern detection phase takes too long to run, ultimately resulting in insufficient memory resources and the process being forcefully terminated.
The text was updated successfully, but these errors were encountered:
The generated Data.xml file is approximately 83.5 MB in size.
In addition, there are multiple deeply nested loops in the PEGraphX.py file. Could this be the reason for the performance bottleneck?
Hello @J1372628520,
Yes, unfortunately the deeply nested loops are a known performance bottleneck. Sadly, we could not yet find the time to resolve it due to other priorities. Nevertheless, as it is becoming a problem for as as well, we will tackle it rather sooner than later.
Something you might try in the mean time is restricting the set of considered source files to a smaller sub set.
For this:
clear the contents of the .discopopdirectory
create the FileMapping.txt manually by execution the script build/scripts/dp-fmap in the projects root folder
restrict the entries in the created FileMapping.txt to source files that might contain computationally expensive kernels
move the modifed FileMapping.txt to the now empty .discopop folder
restart discopop.
Since a FileMapping.txt has been supplied, it will not be created dynamically and thus only the specified set of files will be considered during static and dynamic analysis. However, as the data for the pattern analysis might become incomplete, please treat the generated parallelization suggestions with extra caution.
After compiling and linking a module with over 300 cpp files, the pattern detection phase takes too long to run, ultimately resulting in insufficient memory resources and the process being forcefully terminated.
The text was updated successfully, but these errors were encountered: