We will be presenting a new paper entitled “Production I/O Characterization on the Cray XE6” at this year’s CUG meeting, May 6-9, in Napa CA. This presentation will include our experiences in evaluating and deploying Darshan on the Hopper system at NERSC. We will also use data collected on Hopper to highlight example metrics to identify applications that can benefit from additional tuning.
Darshan version 2.2.5 has been released. The highlights of this release include multiple bug fixes and improvements to block size detection. We would also like to thank Yushu Yao for contributing support for Cray xt-asyncpe 5.12 (and higher) environments.
- Fix bug in mount point identification when –enable-stat-at-open option is not used. In Darshan 2.2.4, some file entries were recorded as using the “/” file system regardless of their location.
- Update patches and documentation for Cray xt-asyncpe environment 5.12 or higher; contributed by Yushu Yao.
- Update documentation to no longer recommend –enable-stat-at-open option on any systems
- Fix unresolved symbols error when linking non-MPI programs with Cray compiler. Reported by Yushu Yao.
- Use fstat() in place of stat() for detecting file information when –enable-stat-at-open option is used
- Use statfs() at startup to detect default block size for supported file systems
- Added –enable-group-readable-logs configure option, which will cause Darshan to to generate log files with the group read permission bit set. This option is useful in conjunction with deployments that set the setgid bit on log directories.
We have posted a new technical report entitled “Performance Analysis of Darshan 2.2.3 on the Cray XE6 Platform” to the Darshan publications page. This report includes experimental results from the Beagle system at the University of Chicago Computation Institute.
Previous publications already investigated Darshan overhead on the IBM Blue Gene platform. However, beginning with Darshan version 2.2.3 we fully support the Cray XE6 platform as well. We used this opportunity to revisit the Darshan efficiency measurements and confirm that Darshan still operates with minimal impact to production applications.
Darshan 2.2.4 is now available on the download page.
If you are upgrading Darshan on a Cray platform, please re-patch your compiler scripts. If you are upgrading Darshan on a Blue Gene platform (P or Q), please check the BG/P recipe in the installation documentation and note that the –enable-stat-at-open option is now recommended on those platforms.
- Disable extra stat() of newly opened files by default. This improves performance on shared files for some platforms. Reported by Yushu Yao.
- prevents Darshan from reporting SIZE_AT_OPEN, FILE_ALIGNENT, and DARSHAN_FILE_NOT_ALIGNED values
- features can still be enabled via –enable-stat-at-open option
- Fix missing -lz in post ld flags reported by Yushu Yao. Fixes a link-time error for some corner-case applications.
- Fix bug in Cray compiler script patches that was setting compiler flags incorrectly. Reported by Yushu Yao.
- WARNING: if you are using a previous Darshan release (2.2.3 through 2.2.4-pre4) on a Cray platform, please re-patch your compiler scripts.
- Update darshan-gen-* scripts to support the potential for additonal LDFLAGS or CFLAGS that appear before the object or source file in the compile or link commands. This fixes compatibility with some mvapich2 installations, reported by Dragos Constantin.
Darshan 2.2.3 is now available on the download page. This release features official support for the Cray XE6 and IBM BG/Q platforms. Special thanks to Yushu Yao and Katie Antypas of NERSC for their contributions in Cray integration and testing.
- improved Cray XE6 support
- support for GNU, PGI, Cray, Pathscale, and Intel compilers
- patch adding Darshan capability to system compiler scripts
- software module, including testing and features contributed by Yushu Yao and Katie Antypas of The National Energy Research Scientific Computing Center (NERSC)
- improved documentation
- minor bug fixes:
- properly detect cxx library name when generating BG/Q compiler wrappers
- improve timing mechanism for cp-shutdown-bench benchmark
- improve hashing to avoid log file name collisions
Darshan 2.2.2 is now available on the download page. Change log:
- bug fixes:
- remove debugging message that was inadvertently included in MPI_File_sync() wrapper
- fix potential hang if the –with-log-path-by-env argument was used at configure time but the environment variable was not set at run time
- significant improvements to how counters are handled in multi-threaded applications
- initial (rough) documentation for using Darshan in Cray programming environments with static linking
- bug fixes:
- escape special characters in mount point paths in darshan-job-summary.pl (reported by Mouhamed Gueye)
- workarounds for various runtime problems with cuserid() and stat() in Cray environments
- build problems with darshan-utils on some versions of OSX
- accurate shared file statistics for libraries that use deferred opens
Darshan 2.2.0 is now available for download. The biggest change is that this release splits the code into separate components for instrumentation and analysis. There are also several improvements in documentation, portability, and an assortment of bug fixes.
- split darshan into separate packages:
- darshan-runtime: for runtime instrumentation
- darshan-utils: for processing darshan log files
- changed default output file name for darshan-job-summary.pl to be based on input file name rather than summary.pdf
- reorganized init and finalize routines so that can be linked separately (to allow for easier integration with other instrumentation tools)
- add -cc, -cxx, -f77, -f90, and -fc support to compiler scripts generated by the darshan-gen-*.pl scripts
- bug fixes:
- potential MAX_BYTE overflow on 32 bit systems
- incorrect pread and pwrite offset tracking
- corrections to darshan-job-summary variance table
- better runtime error handling if bzip or gnuplot tools are insufficient
- improvements to time range in darshan-job-summary graphs
- improved documentation for both the darshan-runtime and darshan-util portions of Darshan can be found in the respective doc/ subdirectory for each
The latest Darshan documentation can be found at the documentation link above. We’ve made several improvements to the documentation, including “recipes” to help get started on various systems including Blue Gene, Cray, and Linux clusters using MPICH, OpenMPI, or Intel MPI.
We have recently updated the Darshan publications list to include a few more recent studies. Please let us know if you have used Darshan in your research and would like to have your publication added to the list!
Darshan 2.1.2 is a minor bug fix release to improve error handling in cases where Darshan is unable to write a log file.
- improved error handling when writing log files. If a write fails on any process then the log file will be deleted and a warning will be printed to stderr.