Issues with large files

Data expansion issues

NMRPipe is currently a 32-bit program and, as such, there are limitations to the size of the file it can read, write, and access in memory. For example, a Bruker 4D NUS ser file that is expanded to a final size of 2048 \(\times\) 96 \(\times\) 128 \(\times\) 96 (t4, t3, t2, t1) will produce a file that is approximately 9.7 GB. Converting this file to NMRPipe format with bruk2pipe is problematic for many 32-bit versions of NMRPipe [*].

The file size limit as well as the indication that an expansion has failed may vary with system. Besides the existence of a large data set, one indication of a problem is that the bruk2pipe (and presumably also var2pipe) command simply stops during conversion producing an error message similar to this:

DATAIO File Read Error 0.
Request: 786432 Actual: 524287.
Bruk2Pipe Error Reading Input.
XY Plane 2731 of 6528

Other programs

The file size limit also can cause issues with Sparky where 32-bit versions of pipe2ucsf are unable to convert NMRPipe data to the format used by Sparky. In our experience, these issues are solved by switching to a 64-bit version of the program. For Linux, such a version is available from the Sparky website. For Mac OS X, a 64-bit version is available from the NMRFAM website or it can be compiled using the MacPorts package manager.

We have not encountered issues with the 32-bit version of NMRPipe beyond the initial conversion problems described above.

Footnotes

[*]Based on in-house benchmarks, it seems the problem is specifically with the 32-bit Linux version of NMRPipe, not the Mac version. This finding has not been extensively tested, though.