We have experienced a problem when collecting code coverage data on top of a a batch of tests.
We need to have code coverage data associated with each single test in the batch, not just the overall the code coverage data of the whole batch of tests, so before performing each test in the batch we delete all old dyn files, and after each test in the batch we group together all dyn files using the profmerge command.
The application we are testing is a process that is loaded before the batch of tests is executed and would normally stay up after the batch of tests completes.
Unfortunately we have noticed that some profiling files (*.dyn), generated at run time, are not created until the application process ends.
This causes us to report wrong results, as at the time of grouping *.dyn files associated with a given test we have some functions indeed performed by the test but reported as not covered, or could result in associating the wrong test with certain coverage data.
Is there a way to force flushing pending data to disk, in order to ensure all *.dyn files written to disk at the time of profmerge between each test?
Some details of my environment are:
Intel suite v13.
SUSE Enterprise Server 10 operating system.
Compiler option used is -prof-gen.