Read/Write/Memory Problems
Posted: Wed Jul 22, 2015 7:52 pm
Hello,
We use LabView to acquire data from multiple custom light-sheet microscopes, and we are having significant issues with both read/write speed and memory. I am not an expert in BioFormats, or computer programming in general, so please excuse my naivety.
Following data acquisition, LabView must reopen each individual image stack, read the temporary metadata, and write the cumulative OME metadata for the entire image sequence. Lately, the number of image planes that must be handled ranges from 50,000-300,000 image planes. This becomes prohibitively long to write the OME metadata, taking hours to days. Often times, we will cancel the OME rewrite process after it is complete with the first image so that we may continue with imaging. However, this is not a good solution.
Importantly, because we also have problems with the command line and matlab-based tools, I do not think that this is purely a LabView problem.
I have uploaded two representative files, 1_CAM01_000000.tif and 1_CAM01_000499.tif. The first file has the OME metadata, whereas the second does not. Each file is ~75 Mb. Because the second file does not have the OME metadata, it opens using the Matlab bfopen (~1.1 seconds). The first file, however, cannot open in Matlab despite increasing the java heap memory to the maximum amount. Below is the error that I receive.
...............................Reading IFDs
Populating metadata
Caught "std::exception" Exception message is:
Message Catalog MATLAB:services was not loaded from the file. Please check file location, format or contents
An error was encountered while saving the command history
java.io.FileNotFoundException: /Users/kdean/.matlab/R2014b/History.xml (Too many open files)
at java.io.RandomAccessFile.open(Native Method)
at java.io.RandomAccessFile.<init>(RandomAccessFile.java:241)
at com.mathworks.mde.cmdhist.AltHistoryCollection
Indeed, while keeping an eye on my memory in the Activity Monitor, bfopen is immensely memory-intensive. I am a bit lost why it takes so long to open the file, and I am beginning to believe that this may be a related issue as to why we cannot save the OME-TIFF information in the first place in a respectable amount of time.
Thank you, and I apologize if this is unclear.
Kevin
We use LabView to acquire data from multiple custom light-sheet microscopes, and we are having significant issues with both read/write speed and memory. I am not an expert in BioFormats, or computer programming in general, so please excuse my naivety.
Following data acquisition, LabView must reopen each individual image stack, read the temporary metadata, and write the cumulative OME metadata for the entire image sequence. Lately, the number of image planes that must be handled ranges from 50,000-300,000 image planes. This becomes prohibitively long to write the OME metadata, taking hours to days. Often times, we will cancel the OME rewrite process after it is complete with the first image so that we may continue with imaging. However, this is not a good solution.
Importantly, because we also have problems with the command line and matlab-based tools, I do not think that this is purely a LabView problem.
I have uploaded two representative files, 1_CAM01_000000.tif and 1_CAM01_000499.tif. The first file has the OME metadata, whereas the second does not. Each file is ~75 Mb. Because the second file does not have the OME metadata, it opens using the Matlab bfopen (~1.1 seconds). The first file, however, cannot open in Matlab despite increasing the java heap memory to the maximum amount. Below is the error that I receive.
...............................Reading IFDs
Populating metadata
Caught "std::exception" Exception message is:
Message Catalog MATLAB:services was not loaded from the file. Please check file location, format or contents
An error was encountered while saving the command history
java.io.FileNotFoundException: /Users/kdean/.matlab/R2014b/History.xml (Too many open files)
at java.io.RandomAccessFile.open(Native Method)
at java.io.RandomAccessFile.<init>(RandomAccessFile.java:241)
at com.mathworks.mde.cmdhist.AltHistoryCollection
Indeed, while keeping an eye on my memory in the Activity Monitor, bfopen is immensely memory-intensive. I am a bit lost why it takes so long to open the file, and I am beginning to believe that this may be a related issue as to why we cannot save the OME-TIFF information in the first place in a respectable amount of time.
Thank you, and I apologize if this is unclear.
Kevin