Freigeben über


Zwischenspeichern von Unterstützung für Streaming SIMD-Erweiterungen 2 ganzzahlige Vorgänge

[Diese Dokumentation ist nur eine Vorschau und wird in späteren Versionen ggf. geändert. Blank topics are included as placeholders.]

Microsoft-spezifisch

Eine Erläuterung der Syntax, die in den Codebeispielen in diesem Thema verwendet wird, finden Sie unter Float systeminterne Funktionen mit Streaming SIMD-Erweiterungen.

Systeminterne Funktionen verwenden, __m128SSE2-Anweisungen __m128iund __m128d Datentypen, die nicht von Prozessoren der Itanium-Prozessorfamilie (IPF) unterstützt werden. Es werden keine systeminterne Funktionen SSE2-Anweisungen, die den __m64 Datentyp verwenden, werden nicht auf x64 Prozessoren unterstützt.

Die emmintrin.h-Headerdatei enthält die Deklarationen für die systeminternen Funktionen der Anweisungen SSE2-Anweisungen.

void _mm_stream_si128(__m128i *p, __m128i a)

MOVNTDQ

Speichert die Daten in a auf die Adresse p , ohne den Cache zu verunreinigen. Wenn die Vorlage Cache p Adresse, die die Zeile enthält bereits im Cache vorhanden ist, wird der Cache aktualisiert. Adresse p muss das 16-Byte ausgerichtet sein.

*p := a

void _mm_stream_si32(int *p, int a)

MOVNTI

Speichert die Daten in a auf die Adresse p , ohne den Cache zu verunreinigen. Wenn die Vorlage Cache p Adresse, die die Zeile enthält bereits im Cache vorhanden ist, wird der Cache aktualisiert.

*p := a

void _mm_clflush(void const*p)

CLFLUSH

Die Zeile, die p Cache wird von allen Caches geleert und in der Anwendungsdomäne Kohärenz ungültig.

void _mm_lfence(void)

LFENCE

Stellt sicher, dass jede Ladeanweisung in der Reihenfolge Programm, der Auslastung zaun Statement vorausgeht, bevor alle Ladeanweisung global sichtbar ist, die dem Zaun Programm in der Reihenfolge entspricht.

void _mm_mfence(void)

MFENCE

Stellt sicher, dass jeder Speicherzugriff, der in der Reihenfolge Programm Arbeitsspeicherumgrenzung Statement vorausgeht, bevor alle Speicher Anweisung global sichtbar ist, die dem Zaun Programm in der Reihenfolge entspricht.

void _mm_pause(void)

PAUSE

Die Ausführung der folgenden Anweisung wird eine Implementierung spezifisch dauer verzögert. Die Anweisung ändert nicht den Zustand der Architektur. Dies bietet systeminterne besonders erhebliche Leistungssteigerung.

Siehe auch

Referenz

Streaming SIMD-Erweiterungen 2 Anweisungen