Handling dlopen Events in Parallel
TotalView’s default behavior is to handle dlopened libraries serially, creating multiple, single-cast client-server communications. This can degrade performance, depending on the number of libraries a process dlopens, and the number of processes in the job.
To handle dlopened libraries in parallel, use the TV::dlopen_read_libraries_in_parallel and its related command line option -dlopen_read_libraries_in_parallel.
This sets the state variable to true. Placing this dset command in the tvdrc file ensures that all instances of TotalView launch with this option:
dset TV::dlopen_read_libraries_in_parallel true
To set this option on an individual instance of TotalView, use the command line option when you start TotalView:
totalview -dlopen_read_libraries_in_parallel
NOTE: Enabling this option does not guarantee that dlopen performance will improve on all systems in all scenarios. Be sure to test the impact of this setting on your system and debugging environments.
Remember that MRNet must also be enabled for this to work.