False sharing ist die Bedingung, bei der in parallelen Programmen Speicher-Cache-Zeilen von zwei oder mehr Threads gemeinsam genutzt werden und Schreiben auf einer Cache-Zeile andere in derselben Zeile arbeitende Cores dazu zwingt, ihren Cache erneut zu validieren. Dies ist ein Nebenläufigkeits-Antimuster.
Gibt es Tools, die False Sharing für in C oder C ++ geschriebene Anwendungen erkennen und melden?
16.08.2011, 14:36
Ich habe die folgende Aufgabe, um falsches Teilen zu demonstrieren und schrieb ein einfaches Programm:
%Vor%
Ich war sehr überrascht, als ich die Ergebnisse sah (ich lief es auf meinem i5-430M Prozessor).
Bei falschem Teilen waren es 102...
30.11.2011, 18:51