Text buffering on HPE Cray system

Questions regarding the compilation of VASP on various platforms: hardware, compilers and libraries, etc.


Moderators: Global Moderator, Moderator

Post Reply
Message
Author
asrosen
Newbie
Newbie
Posts: 12
Joined: Wed Oct 18, 2023 4:51 pm

Text buffering on HPE Cray system

#1 Post by asrosen » Wed Apr 30, 2025 2:49 am

Hello,

After successfully compiling VASP on an HPE Cray system (https://docs.ncsa.illinois.edu/systems/ ... /en/latest), I found that the text in the OUTCAR is not generated in real-time. For instance, it will update every ~5 SCF iterations. Similarly, the OSZICAR is not populated until the end of the run. I have seen this behavior on other machines before, but I'm curious if there is a way to modify this behavior so that everything is generated in real-time without any buffering.


michael_wolloch
Global Moderator
Global Moderator
Posts: 167
Joined: Tue Oct 17, 2023 10:17 am

Re: Text buffering on HPE Cray system

#2 Post by michael_wolloch » Wed Apr 30, 2025 8:10 am

Hi Andrew,

This is indeed an issue we have faced on Cray machines, which are only writing output if buffers are explicitly flushed (which VASP does not do) or overflowing. The behaviour of srun can be changed by the --unbuffered option. Try:

Code: Select all

srun --unbuffered /path/to/your/vasp/bin/vasp_std

However, I would not recommend enabling this runtime option for production, since it could degrade performance. For debugging and developing it has served us well, however. Note that we did not try this on your machine specifically, and not with NVIDIA's compilers.

Cheers, Michael


Post Reply