<div dir="ltr">Hello Roland, all,<div>could it be possible for you to have a quick look at the parameter file I am using (attached) to check if there is anything manifestly wrong/unsafe/unrecommended with checkpointing or with other I/O options? In case there are any issues, I can then take care of them and report back to the Frontera people.</div><div><br></div><div>Thank you very much in advance,</div><div>Lorenzo</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Il giorno gio 6 ott 2022 alle ore 15:29 Roland Haas &lt;<a href="mailto:rhaas@illinois.edu">rhaas@illinois.edu</a>&gt; ha scritto:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hello Lorenzo,<br>
<br>
TACC saved a bit of money on the IO system on Frontera :-) and thus<br>
they now need to fix bugs in documentation.<br>
<br>
Yours,<br>
Roland<br>
<br>
&gt; Hi Roland,<br>
&gt; thank you, your suggestions are very useful. I was running one process per<br>
&gt; core on more than 200 cores, so that may be part of the issue. Also, I will<br>
&gt; try the one_file_per_group or one_file_per_rank options to reduce the<br>
&gt; performance impact.<br>
&gt; <br>
&gt; The cluster I&#39;m running on is Frontera, and the guidelines to manage I/O<br>
&gt; operations properly on it are here<br>
&gt; &lt;<a href="https://urldefense.com/v3/__https://portal.tacc.utexas.edu/tutorials/managingio__;!!DZ3fjg!-IpspO3XOAP7Iq90ewHLXhCVTP8zRBTZV3k6XCsoyypUMszoctdY8pqhv7lN-OrMXRv5iGAFRSV1bmjKrd05VwT-aw$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://portal.tacc.utexas.edu/tutorials/managingio__;!!DZ3fjg!-IpspO3XOAP7Iq90ewHLXhCVTP8zRBTZV3k6XCsoyypUMszoctdY8pqhv7lN-OrMXRv5iGAFRSV1bmjKrd05VwT-aw$</a>  &gt; in case people are<br>
&gt; interested. I will follow them as closely as I can to avoid similar<br>
&gt; problems in the future.<br>
&gt; <br>
&gt; Thank you very much again,<br>
&gt; Lorenzo<br>
&gt; <br>
&gt; Il giorno gio 6 ott 2022 alle ore 12:52 Roland Haas &lt;<a href="mailto:rhaas@illinois.edu" target="_blank">rhaas@illinois.edu</a>&gt; ha<br>
&gt; scritto:<br>
&gt; <br>
&gt; &gt; Hello Lorenzo,<br>
&gt; &gt;<br>
&gt; &gt; Unfortunately, Carpet will always write one checkpoint file per MPI<br>
&gt; &gt; rank, there is no way to change that.<br>
&gt; &gt;<br>
&gt; &gt; As you learned the option out_proc_every only affects the out3D_vars<br>
&gt; &gt; output (and possible out_vars 3D output) but never checkpoints.<br>
&gt; &gt;<br>
&gt; &gt; In my opinion, you should be impossible to stress the file system, of a<br>
&gt; &gt; reasonably provisioned cluster, with the checkpoints. Even when running<br>
&gt; &gt; on 32k MPI ranks (and 4k nodes) on BW, checkpoint-recovery was very<br>
&gt; &gt; quick (1min or so) and barely made a blip on the system monitoring<br>
&gt; &gt; radar. Any cluster with sufficiently many nodes to run at scale at<br>
&gt; &gt; 1 file per rank (for a sane number of ranks ie some OpenMP threads)<br>
&gt; &gt; should have a file system capable of taking checkpoints. Of course 1<br>
&gt; &gt; rank per core is no longer &quot;sane&quot; once you go beyond a couple hundred<br>
&gt; &gt; cores.<br>
&gt; &gt;<br>
&gt; &gt; Now writing 1 file per output variable and per MPI rank may be a<br>
&gt; &gt; different thing....<br>
&gt; &gt; In that case out_proc_every should help with out3D_vars. I would also<br>
&gt; &gt; suggest one_file_per_group or even one_file_per_rank for this (see<br>
&gt; &gt; CarpetIOHDF5&#39;s param.ccl), which will have less of a performance (no<br>
&gt; &gt; communication) impact than out_proc_every != 1.<br>
&gt; &gt;<br>
&gt; &gt; If the issue is opening many files (again, only for out3D_vars regular<br>
&gt; &gt; output), then you may also see benefits from the different options in:<br>
&gt; &gt;<br>
&gt; &gt; <a href="https://urldefense.com/v3/__https://bitbucket.org/eschnett/carpet/pull-requests/34__;!!DZ3fjg!-IpspO3XOAP7Iq90ewHLXhCVTP8zRBTZV3k6XCsoyypUMszoctdY8pqhv7lN-OrMXRv5iGAFRSV1bmjKrd1fZiBWGw$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://bitbucket.org/eschnett/carpet/pull-requests/34__;!!DZ3fjg!-IpspO3XOAP7Iq90ewHLXhCVTP8zRBTZV3k6XCsoyypUMszoctdY8pqhv7lN-OrMXRv5iGAFRSV1bmjKrd1fZiBWGw$</a>  <br>
&gt; &gt;<br>
&gt; &gt; <a href="https://urldefense.com/v3/__https://bitbucket.org/einsteintoolkit/tickets/issues/2364__;!!DZ3fjg!-IpspO3XOAP7Iq90ewHLXhCVTP8zRBTZV3k6XCsoyypUMszoctdY8pqhv7lN-OrMXRv5iGAFRSV1bmjKrd0HNoNnvA$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__https://bitbucket.org/einsteintoolkit/tickets/issues/2364__;!!DZ3fjg!-IpspO3XOAP7Iq90ewHLXhCVTP8zRBTZV3k6XCsoyypUMszoctdY8pqhv7lN-OrMXRv5iGAFRSV1bmjKrd0HNoNnvA$</a>  <br>
&gt; &gt;<br>
&gt; &gt; Yours,<br>
&gt; &gt; Roland<br>
&gt; &gt;  <br>
&gt; &gt; &gt; Hello,<br>
&gt; &gt; &gt; In order to avoid stressing the filesystem on the cluster I&#39;m running  <br>
&gt; &gt; on, I  <br>
&gt; &gt; &gt; was suggested to avoid writing one output/checkpoint file per MPI process<br>
&gt; &gt; &gt; and instead collecting data from multiple processes before<br>
&gt; &gt; &gt; outputting/checkpointing happens. I found the combination of parameters<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; IO::out_mode       = &quot;np&quot;<br>
&gt; &gt; &gt; IO::out_proc_every = 8<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; does the job for output files, but I still have one checkpoint file per<br>
&gt; &gt; &gt; process. Is there a similar parameter, or combination of parameters,  <br>
&gt; &gt; which  <br>
&gt; &gt; &gt; can be used for checkpoint files?<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; Thank you very much,<br>
&gt; &gt; &gt; Lorenzo Ennoggi  <br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; --<br>
&gt; &gt; My email is as private as my paper mail. I therefore support encrypting<br>
&gt; &gt; and signing email messages. Get my PGP key from <a href="https://urldefense.com/v3/__http://keys.gnupg.net__;!!DZ3fjg!-IpspO3XOAP7Iq90ewHLXhCVTP8zRBTZV3k6XCsoyypUMszoctdY8pqhv7lN-OrMXRv5iGAFRSV1bmjKrd1xKACaIQ$" rel="noreferrer" target="_blank">https://urldefense.com/v3/__http://keys.gnupg.net__;!!DZ3fjg!-IpspO3XOAP7Iq90ewHLXhCVTP8zRBTZV3k6XCsoyypUMszoctdY8pqhv7lN-OrMXRv5iGAFRSV1bmjKrd1xKACaIQ$</a>  .<br>
&gt; &gt;  <br>
<br>
<br>
<br>
-- <br>
My email is as private as my paper mail. I therefore support encrypting<br>
and signing email messages. Get my PGP key from <a href="http://keys.gnupg.net" rel="noreferrer" target="_blank">http://keys.gnupg.net</a>.<br>
</blockquote></div>