Neggia - a plugin for XDS

NEGGIA is a plugin for XDS that facilitates the parallel reading of images from EIGER HDF5 data. This accelerates processing over conversion to CBF.

Like XDS, NEGGIA runs on macOS and Linux (CentOS 6, CentOS 7 and Mint 17 have been tested).

Please note that a recent version of XDS (Version June 1, 2017, or later) is required when working with NEGGIA.

Download

The source of NEGGIA can be downloaded from github. Precompiled binaries exist for Linux only, but can be easily compiled for MacOS as well.

Linux

NEGGIA is supported on Red Hat Enterprise Linux and its derivatives (RHEL, CentOS, SL, in versions 6.x and 7.x, in 64 bit). Other Linux distributions may also work but are not supported.

NEGGIA-centos6.so.gz
TAR.GZ 117.8 KB
NEGGIA-centos7.so.gz
TAR.GZ 86.6 KB

Use of Neggia

Download the correct file for your operating system, unpack (gunzip dectris-neggia-*.so.gz) and copy somewhere central.

  • ✓ /usr/local/lib64 is good, but anywhere is ok.
  • ✓ Use LIB input parameter in XDS.INP (e.g. LIB= /usr/local/lib64/dectris-neggia.so).
  • ✓ Keep DETECTOR= EIGER parameter.

Use XDS as before (but faster).

Words of Caution

NEGGIA is the result of an attempt to understand the HDF5 library and create something simpler that can read in a fully parallel way. NEGGIA does not rely on the HDF5 library and thus does not support all of the HDF5 specifications. Problems might occur if

  • ✓ EIGER data were manipulated after collection (e.g. by compressing the master file),
  • ✓ EIGER data were written (from the Stream) with HDF5 library version 1.10 or
  • ✓ EIGER data are very old (i.e. written with firmware 1.3 or older).

Please let us know if you encounter problems with the library. In particular, if your favorite beamline produces data that NEGGIA can't read, we'd like to know so we can collaborate on a solution.

Alternative

Takanori Nakane has written a plugin for XDS based on the official HDF library. It is nearly as fast as Neggia.

If neither plugin works for you, download H5ToXds (Linux only), put it in your path and use XDS without the LIB input parameter. Data processing will be somewhat slower.