<div dir="ltr"><div dir="auto"><div>Hi Michel,<br></div><div dir="auto"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="m_1225222632635260662quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div id="m_1225222632635260662m_-8459776175989070851divtagdefaultwrapper" style="font-size:12pt;color:#000000;font-family:Calibri,Arial,Helvetica,sans-serif" dir="ltr"><p><span style="font-size:12pt">Setting </span><span style="font-size:12pt">KNOB_MAX_WORKER_<wbr>THREADS
to 1 fixed the <span>oversubscription of threads and</span> the memory consumption </span><span style="font-size:12pt">issue
</span><span style="font-size:12pt">when the </span><span style="font-size:12pt">number of mpi processes is </span><span style="font-size:12pt">equal to the number of cores requested.</span></p></div></div></blockquote></div></div></div><div dir="auto">Great!</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="m_1225222632635260662quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div id="m_1225222632635260662m_-8459776175989070851divtagdefaultwrapper" style="font-size:12pt;color:#000000;font-family:Calibri,Arial,Helvetica,sans-serif" dir="ltr"><p><span style="font-size:12pt">If I do not allow threading of swr by setting KNOB_MAX_WORKER_THREAD<wbr>S to 1 (basically serial swr vs serial llvmpipe), do you know which performance gain I could still expect by relying only on a potential
better usage of the AVX instructions?</span></p></div></div></blockquote></div></div></div><div dir="auto">Short answer: swr is marginally faster because of instruction set optimizations but way faster because of better thread scaling.<br><br>Long answer: With Mesa 11.x and 12.x, our experimental data showed similar single threaded performance between the two, however, swr in 13.x (currently deployed with 5.2) saw a significant performance increase between 20% - 100% depending on the workload. Multithreaded performance, however, is quite another story. Swr scales nearly linearly on Haswell CPUs for both geometry and pixel operations while llvmpipe scales well up to 16c for pixel operations and is entirely single-threaded for geometry shaders. Coincidentally, most actions in paraview are geometry based (volume rendering being the exception). So, in general, swr will perform better than llvmpipe by a fair amount and if using it in multi-threading mode then by a drastic amount.<br></div><div><br></div><div>- Chuck<br></div><div dir="auto"></div></div>
</div>