2017-12-20 20 views
1

Nach http://people.eecs.berkeley.edu/~rcs/research/interactive_latency.htmlWarum die Mutex Lock-Latenz kleiner ist als die Hauptspeicherreferenz in JEFF DEANs Latenzzahlen, die jeder Programmierer kennen sollte?

der Mutex-Sperre über 17ns im Jahr 2017 ist, kleiner als die Hauptspeicherreferenzen, wie kann das sein?

Soweit ich weiß, die Umsetzung mindestens einer Atom Flag enthält, Änderung dieser Fahne selbst ist ein Hauptspeicher Referenzbetrieb, wie das Schloss 17ns sein kann, in meinem Test der pthread_mutex_lock Funktion auch viele Speicheroperationen enthält ohne Streit.

Kann mir jemand dabei helfen?

Antwort

1

Sie scheinen zu denken, dass atomare Operationen den Zugriff auf den Hauptspeicher und nicht auf den Cache erfordern. Das ist nicht der Fall.

+0

das klingt wie ein atomarer Vergleich und Austausch von Hardware dauert 17ns, kein Mutex-Sperre –

+0

ein CAS ist wahrscheinlich der teuerste Teil der Erwerb eines unüberlegten Mutex, ja. – janneb

+0

ok, das klingt viel vernünftiger, danke –

Verwandte Themen