Hi, all!
Im doing some proof of concepts with areaDetector cloned directly from master (commit 78fae55898b9028e756eb080367cd6aad8913b54) and the plugins together with EPICS_BASE 7.
When using the HDF5 plugin and saving with the capture mode, documentation (
https://areadetector.github.io/master/ADCore/NDPluginFile.html?highlight=allocate)
tells me a buffer will be allocated in memory before saving occurs. Consequently, when allocated buffer is bigger than available memory, application freezes my machine.
The thing is: after the saving occurs, the buffer doesnt seem to be de-allocated. I say that because htop shows memory usage growing continuously when acquire is happening with capture mode on, but memory usage does not decrease once saving is done. I tried
using the <PREFIX>FlushNow PV but i only get this error:
epics> dbpf 13SIM2:HDF1:FlushNow 1
DBF_STRING: "Flush"
epics> 2023/05/03 20:35:02.845 NDFileHDF5:writeInt32: ERROR status=3, function=168, value=1 old=0
2023/05/03 20:35:02.845 13SIM2:HDF1:FlushNow devBusyAsyn::processCallbackOutput process error
epics>
epics>
epics>
epics> dbpf 13SIM2:HDF1:FlushNow 1
DBF_STRING: "Flush"
epics> 2023/05/03 20:35:34.577 NDFileHDF5:writeInt32: ERROR status=3, function=168, value=1 old=0
2023/05/03 20:35:34.577 13SIM2:HDF1:FlushNow devBusyAsyn::processCallbackOutput process error
Is this the correct usage of the PV? I also tried using <PREFIX>NumFramesFlush, but got no result.
Is there any recommended way i can de-allocate this buffer whenever i want? Until now, i need to restart the application every time i want my memory back.
Thanks in advance for any help,
Marco