OpenSWR verändert Pinning
OpenSWR ändert das Pinning selbstständig, wenn KNOB_MAX_WORKER_THREADS nicht gesetzt: https://github.com/mesa3d/mesa/blob/20.0/src/gallium/drivers/swr/rasterizer/core/threads.cpp#L367
Hintergrund: Im Fall, das man mehrere pvserver mit mpi pro Knoten starten möchte, macht es Sinn diese auf verschiedene Rechenkerne zu verteilen. Leider verändert der Software Renderer das Pinning dieser Prozesse sobald das erste mal OpenSWR zum Rendern genutzt wird zusätzliche Render Threads erzeugt werden. Hierbei erzeugt jeder mpi Prozess seine eigenen Render Threads, mit dem MPI Prozess als erstem Render Thread. Da der Software Renderer ein eigenes pinning verwendet, dass den x. Thread auf dem x. Rechenkern laufen lässt, landen daraufhin alle mpi Prozesse auf dem ersten Kern. Dort bleiben sie dann, auch wenn ParaView andere Aufgaben als rendern ausführt (z.B. einlesen einer Datei) und stören sich dann gegenseitig.