nocache
nocache - minimize caching effects in lustre filesystems
General Information
The nocache tool tries to minimize the effect an application has on the Linux file system cache. This is done by intercepting the open and close system calls and calling posix_fadvise with the POSIX_FADV_DONTNEED parameter. Because the library remembers which pages (ie., 4K-blocks of the file) were already in file system cache when the file was opened, these will not be marked as “don’t need”, because other applications might need that, although they are not actively used (think: hot standby).
Use case: backup processes that should not interfere with the present state of the cache.
Use case: staging of large amount of data in a lustre file system before a parallel job
Read more on github
| Version | Compiler | Build date | Installation Path | modulefile |
|---|---|---|---|---|
| 1.1 | 19-aug-2019 | /sw/tools/nocache/1.1 | nocache/1.1 | gcc |
or some more information consult the man-page.
Usage at HLRN
nocache is found to resolve the lustre issue, where temporarly invalid files are produced by staging huge amount of data before a parallel job step.
Load the modulefile
$ module load nocache
This provides access to the script nocache and the binaries cachedel and cachestats. The corresponding man - pages become available.
Prepend nocache before file copy operations
$ nocache cp <source> <target>
Building nocache
Installation includes
- download from github
- run make and make install - see run_make in the installation path.