I have access to a cluster that uses SLURM. I am not very knowledgeable about using clusters, so figuring out how to submit Mathematica jobs was a challenge but eventually something was worked out. Now, I am using my code to do multiple simulations, and depending on parameters, it can take ~3 hours to a day to generate the data. The problem is, plotting this data takes a long time when I do it on my computer (I use Graphics instead of ListPlot, as well, to try to speed it up some), and I would greatly prefer if I could generator the plot and export it to png/pdf like how I generate the data and export it to a .txt file for later usage.
Now, to test submit Mathematica jobs, I just made a really quick script that was focused on what I was hoping to do with my code/jobs:
data = Table[i, {i, 10}];
dPlot = ListPlot@data;
Export["try.txt", data, "CSV"];
Export["try.png", dPlot];
Now, when I comment out the .png export, the code runs fine, and a text file prints out. However, when I include the Export["try.png", dPlot]; line, in the .err file, I find the text:
Qt issued a fatal error: QXcbConnection: Could not connect to display localhost:12.0
Qt tried to load plugins from:
/c1/apps/mathematica/11.3.0/SystemFiles/Libraries/Linux-x86-64/Qt-Plugins
/c1/apps/mathematica/11.3.0/SystemFiles/FrontEnd/Binaries/Linux-x86-64
Mathematica was installed in /c1/apps/mathematica/11.3.0
/c1/apps/mathematica/11.3.0/Executables/Mathematica: line 130: 19063 Aborted (core dumped) "${MathematicaFE}" -topDirectory "${TopDirectory}" "$@"
I cannot make heads nor tails of this error message, though it appears, in the .out file, that the plot was generated:
Out[]: - Graphics -
My question is this: in this sort of environment, is it not possible to export plots, even though it appears that the plot is being generated?
I tried to look up "hpc", but most of the posts seem concerned with parallelization, and only 6 results popped up when I searched "SLURM". Any advice would be appreciated.
uname -a
? If you havegnuplot
, try to generate png with it. I don't think, WM graphics can benifit from multi CPU/GPU (unless you want to generate several plots and then merge them). Also, try specialized tools, likeparaview
. $\endgroup$paraview
before, so I'll look into it. Thanks for the comment! $\endgroup$