<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 14 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:Tahoma;
panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0cm;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:purple;
text-decoration:underline;}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
{mso-style-priority:99;
mso-style-link:"Balloon Text Char";
margin:0cm;
margin-bottom:.0001pt;
font-size:8.0pt;
font-family:"Tahoma","sans-serif";}
span.gmail-
{mso-style-name:gmail-;}
span.EmailStyle18
{mso-style-type:personal-reply;
font-family:"Arial","sans-serif";
color:#1F497D;}
span.BalloonTextChar
{mso-style-name:"Balloon Text Char";
mso-style-priority:99;
mso-style-link:"Balloon Text";
font-family:"Tahoma","sans-serif";
mso-fareast-language:DE-CH;}
.MsoChpDefault
{mso-style-type:export-only;
font-family:"Calibri","sans-serif";
mso-fareast-language:EN-US;}
@page WordSection1
{size:612.0pt 792.0pt;
margin:70.85pt 70.85pt 2.0cm 70.85pt;}
div.WordSection1
{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=DE-CH link=blue vlink=purple><div class=WordSection1><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#1F497D'>Hi Chuck,<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#1F497D'>Thank you very much for your reply. It is very interesting and I will try my best to get ParaView compiled following your recommendations.<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#1F497D'>Unfortunately, others duties are holding me off this week from concentrating on this but I will share my test results comparing ParaView on GPU, with mesa-llvm and mesa-swr-avx2.<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#1F497D'>Talk to you soon.<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#1F497D'>Best regards,<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#1F497D'>Frank.<o:p></o:p></span></p><p class=MsoNormal><b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> Chuck Atkins [mailto:chuck.atkins@kitware.com] <br><b>Sent:</b> Mittwoch, 28. September 2016 21:18<br><b>To:</b> Ben Boeckel<br><b>Cc:</b> Albina, Frank; David E DeMarle; Del Citto, Francesco; paraview@paraview.org<br><b>Subject:</b> Re: [Paraview] Building ParaView v5.1.2 on Linux from source with support for GPU and SWR.<o:p></o:p></span></p><p class=MsoNormal><o:p> </o:p></p><div><div><div><blockquote style='border:none;border-left:solid #CCCCCC 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-right:0cm'><p class=MsoNormal><span class=gmail->> My intention is to compile paraview without GUI to run it in batch on</span><br><span class=gmail->> our cluster. This is the main reason why I am using a specific test</span><br><span class=gmail->> suite to check the performance of mesa-llvm vs. mesa-swr vs. GPU. At</span><br><span class=gmail->> the moment, on CPUs supporting AVX2 instruction set, mesa-swr shows a</span><br><span class=gmail->> very decent performance. Hence, my interest also to try out the latest</span><br><span class=gmail->> mesa 12.0.3 version, which I have downloaded today and started</span><br><span class=gmail->> compiling. In this regard, do you have any configuration options you</span><br><span class=gmail->> can share for use in offscreen mode? If this is handled already by the</span><br><span class=gmail->> latest superbuild version, then please disregard the questions above.</span><br><br>Chuck (Cc'd) does this quite a bit. There are scripts he has committed<br>which are used to build for specific platforms which you may be able to<br>start using, but he's the best source of instructions for those.<o:p></o:p></p></blockquote><div><p class=MsoNormal> <o:p></o:p></p></div></div><p class=MsoNormal style='margin-bottom:12.0pt'>Hi Frank,<br><br>The updated superbuild uses a common shared set of packages that we use for several different projects and then the top level project which is ParaView specific. To use this, you'll want to check out the current master branch in the paraview-superbuild, run "git submodule init", and then "git submodule update". This will put you at the current state of things.<br><br>You can browse the build script I have committed in Scripts/sites for linux clusters and Cray systems at Los Alamos National Labs and the DoD HPC network. They but they're a bit complicated though as I use them in a very generic fashion with lots of options for a lot of different build configurations. The gist of it though is to encode all of the options you would need to turn on in a pre-configured CMake cache script. Note that this is actually a CMake script that sets the initial cache values and not and not just a list of variables like in CMakeCache.txt . See cmake/sites for a few examples. Doing this simplifies your build to just:<o:p></o:p></p></div><div><p class=MsoNormal><span style='font-family:"Courier New"'>cd /path/to/build/location</span><o:p></o:p></p></div><div><p class=MsoNormal><span style='font-family:"Courier New"'>cmake -C /path/to/MySystem-Cache.cmake /path/to/superbuild/source</span><o:p></o:p></p></div><div><p class=MsoNormal><br><span style='font-family:"Courier New"'># no -j here but don't worry, the subprojects will build in parallel<br>make</span><o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal><span style='font-family:"Courier New"'># Make the resulting ParaView package</span><o:p></o:p></p></div><div><p class=MsoNormal><span style='font-family:"Courier New"'>ctest -R cpack-paraview-TGZ</span><o:p></o:p></p></div><div><p class=MsoNormal style='margin-bottom:12.0pt'><o:p> </o:p></p></div><div><p class=MsoNormal>The end result is ParaView-5.1.2-OpenGL2-MPI-Linux-64bit.tar.gz that you can extract anywhere to install. Using ctest to drive the packaging is a bit weird, I know, but trust me that there were various reasons for that which could warrant it's own separate thread.<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal style='margin-bottom:12.0pt'>This allows you to keep MySystem-Cache.cmake under source control to maintain a consistent build. For your configuration, the specific options of interest to run on are ENABLE_osmesa and ENABLE_ospray. Our default configuration of osmesa will enable SWR. What you'll end up with is a pvserver / pvbatch that uses OSMesa for off-screen CPU based rendering without X but with both llvmpipe and swr drivers built. You can switch between the by setting the GALLIUM_DRIVER env var to either llvmpipe or swr. <o:p></o:p></p></div><div><p class=MsoNormal>Hope that gives you a good place to get started.<o:p></o:p></p></div></div></div></body></html>