I am writing this message from the original GitHub Issue I posted for #6956 as I was redirected here:
Hi Dr. Memory Maintainers and Team!
I have been using Dr. Memory as a tool to check for nondeterministic behaviors in dynamic code analysis tools. Using the tool, I saw that out of our sample of 52 repositories, we found 20 repositories with nondeterministic reports across each of the ten runs we've conducted.
To Reproduce
1. Run on GitHub Actions utilizing a runner with Ubuntu 22.04 and Dr. Memory 2.6.0 installed
2. Make sure you have ten runs of this GitHub Action with your desired executable (in our case, we've used the project kcp on GitHub and compiled as an executable)
3. Obtain 10 of the Dr. Memory global logs for the kcp executable
Expected behavior
Consistent number of errors reported, the total/unique count of errors, consistency in the duplicate error count sections, and the fields such as the byte counts for "still-reachable allocations."
Screenshots or Pasted Text
The attached screenshot is a file difference of the project kcp's executable, where Run 1 is in the left column and Run 2 is in the right column (attached below this message):
Observed results
In Run 1, I noticed the following:
- There are only four errors reported (two possible memory leaks and two memory leaks)
- Errors found show two unique and 85 errors for possible memory leaks + the size of possible memory leak bytes & actual memory leak bytes
- Errors ignored show eight unique and 8 total errors for "still-reachable allocations" + byte sizes.
In Run 2, I noticed the following:
- There is an additional error reported (two possible memory leaks and three memory leaks)
- Error found shows three unique and three total errors for possible memory leaks + the size of possible memory leak bytes & actual memory leak bytes
- Errors ignored shows 9 unique and 15 total errors for "still-reachable allocations" + byte sizes
- We are using Dr. Memory 2.6.0, which is the official latest version from the Dr. Memory webpage
- We are using Ubuntu 22.04
- kcp should be a 64-bit ELF binary application
Would only the Dr. Memory maintainers and team look into this insight and offer remedies or reasons for this behavior? Thank you so much!!