-
Notifications
You must be signed in to change notification settings - Fork 95
Memory Leak in Dataset Creation #218
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
Comments
This is with the most recent hdf5? I was hoping we had fixed this with #139 |
It was with the current release (1.12.2) built from the source available on the website. I haven't tried with 1.13.2 from the git repository |
I just wanted to add that I think I am also experiencing this issue with
Happy to help debug if that would be at all useful. |
I have managed to track the leak down to #include <H5public.h>
#include <H5Ppublic.h>
#include <assert.h>
#include <stdio.h>
#define ITERATIONS 4000000
int main() {
herr_t status;
status = H5open();
assert(!status);
hid_t dataset_access = H5Pcreate(H5P_DATASET_ACCESS);
assert(dataset_access > 0);
for (int i=0; i<ITERATIONS; i++) {
status = H5Pget_class(dataset_access);
// printf("%d\n", status);
assert(status > 0);
}
printf("Finished\n");
while(true);
status = H5Pclose(dataset_access);
assert(!status);
status = H5close();
assert(!status);
return 0;
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
The following code will leak about 120 MB. Changing
GROUPS
to400000
leaks 1.2 GB.heaptrack
suggests the problem lies in creating the plists for the dataset. I've tried calling the underlying hdf5 close functions on the file, group, dataset and plist without solving it, as well as trying to call the underlying hdf5 garbage collection function.The text was updated successfully, but these errors were encountered: