Darshan 2.2.8 release

Darshan 2.2.8 is now available for download on the Darshan web site. This release contains a number of bug fixes for problems recently reported on the mailing list. It also includes a few new tools for splitting up Darshan logs based on files opened by the application. The full change log is listed below:
darshan-2.2.8

  • WARNING: please note that the Darshan module file for Cray environments has been updated, especially in the DARSHAN_POST_LINK_OPTS variable. Please update your module file accordingly when upgrading from 2.2.7 or earlier on Cray platforms.
  • Improved ability to analyze I/O activity related to particular files opened by an application
    • darshan-summary-per-file.sh script to generate a separate pdf summary for each file opened by an application. Developed by Rob Latham.
    • Added –file-list and –file-list-detailed options to darshan-parser to list files opened by an application along with brief statistics
    • Added –file option to darshan-convert to filter out activity for a specific file from a Darshan log
  • Add wrappers for POSIX AIO operations (fixes tracking of underlying POSIX operations resulting from nonblocking MPI-IO operations. Bug reported by David Shrader.)
  • Fix compile-time errors when Darshan is configured for use with MPICH 3.x installations with const correct MPI function prototypes. Also affects MPICH 1.5+ installations with optional const support. Reported by Yushu Yao.
  • Fix segmentation fault when using LD_PRELOAD instrumentation on programs that use MPI_Init_thread() rather than MPI_Init(). Reported by Myriam Botalla.

Darshan 2.2.7 release

Darshan 2.2.7 is now available for download.
Changelog:
darshan-2.2.7

  • Updated Cray installation documentation for cleaner integration in Cray environments
  • Fix bug that recorded incorrect device ID (and therefore incorrect mount point mapping) if stat() was called before open() on a file
  • Store version number of the Darshan runtime library in the log file metadata (see lib_ver in darshan-parser output)

Cray users in particular should take note of the revised Darshan installation recipe, which is available both on the documentation section of the Darshan web site and in the darshan-runtime/doc/ directory in the source. The installation procedure for Cray systems has been simplified significantly from previous releases.

Darshan 2.2.6 release

Darshan 2.2.6 has been released.  This release includes performance enhancements as well as various minor bug fixes and compatibility improvements.
Changelog:
darshan-2.2.6

  • Bug fixes:
    • make sure to honor user-specified hints passed in at runtime via the DARSHAN_LOGHINTS env variable.
    • include fread and fwrite in darshan-job-summary.pl read and write counts
    • fix segmentation fault on invalid arguments to darshan-parser
  • Performance enhancements:
    • collect mount point information at rank 0 and broadcast to all
    • processes to avoid excess file system traffic on startup
    • change default MPI-IO hints for writing log file to romio_no_indep_rw=true and cb_nodes=4 to improve log creation performance
  • Install libdarshan-util and headers during installation process for darshan-util; patch contributed by Matthieu Dorier
  • Detect PMPI support at link time when using compiler scripts produced by the darshan-gen-* utilities. This avoids link problems when Darshan compiler wrappers are used with the ADIOS dummy MPI library; reported by Jingqing Mu
  • Support MPICH_{CC/CXX/F77} environment variables in compiler scripts produced by the darshan-gen-* utilities
  • Add instrumentation of startup time, enabled via DARSHAN_INTERNAL_TIMING environment variable
  • Rename cp-shutdown-bench test utility to darshan-shutdown-bench and enable benchmarking hooks in library by default so that darshan-shutdown-bench can be used with any Darshan installation
  • Remove deprecated –enable-st-dev-workaround configure option
  • Misc. documentation updates

Darshan-Ruby

Matthieu Dorier of ENS Cachan Brittany has developed and released Darshan-Ruby, an object-oriented extension to simplify Darshan log analysis in Ruby.  Darshan-Ruby uses the Darshan logutils API to efficiently access Darshan data without intermediate conversion into text format.
Please visit the Darshan-Ruby web site for more information.

"Production I/O Characterization on the Cray XE6" to be presented at CUG 2013

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 2.2.5 release

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.
Changelog:
Darshan 2.2.5

  • 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.

Technical report: Darshan performance on the Cray platform

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 release

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.
Change log:
darshan-2.2.4

  • 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 release

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.
Change log:

darshan-2.2.3
  • 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