Suchergebnisse für Anfrage "x86"

2 die antwort

Verwendet die x86_64-CPU dieselben Cache-Zeilen für die Kommunikation zwischen zwei Prozessen über den gemeinsamen Speicher?

Wie bekannt sind alle Ebenen des Cache L1 / L2 / L3 auf modernen x86_64 virtuell indiziert, physisch markiert [http://www.realworldtech.com/sandy-bridge/7/]. Und alle Kerne kommunizieren über den Last Level Cache - Cache-L3 unter Verwendung des ...

4 die antwort

Packing BCD to DPD: Wie kann diese amd64-Assembler-Routine verbessert werden?

Ich schreibe eine Routine zum Konvertieren zwischen BCD [https://en.wikipedia.org/wiki/Binary-coded_decimal] (4 Bits pro Dezimalstelle) undDicht gepackte Dezimalzahl (DPD) [https://en.wikipedia.org/wiki/Densely_packed_decimal] (10 Bits pro ...

2 die antwort

Inhalt eines Speicherorts referenzieren. (x86-Adressierungsmodi)

Ich habe einen Speicherort, der ein Zeichen enthält, das ich mit einem anderen Zeichen vergleichen möchte (und es befindet sich nicht oben auf dem Stapel, daher kann ich nicht einfachpop it). Wie verweise ich auf den Inhalt eines Speicherorts, ...

TOP-Veröffentlichungen

6 die antwort

Wie führe ich eine Uint32 / Float-Konvertierung mit SSE durch?

n SSE gibt es eine Funktion_mm_cvtepi32_ps(__m128i input), der einen Eingabevektor mit 32 Bit breiten Ganzzahlen mit Vorzeichen verwendet int32_t) und konvertiert sie infloat s. Now, ich möchte Eingabe-Ganzzahlen als nicht signiert ...

2 die antwort

Zweite Phase des Bootloaders druckt den Müll mit Int 0x10 / ah = 0x0e

Ich versuche, Assembly zu lernen und einen Bootloader zu schreiben. Der folgende Code lädt den Inhalt eines Diskettenlaufwerks in den Speicher und springt dorthin (beginnt mit dem Laden bei Adresse 0x1000). Dieser Code soll "X" auf dem ...

4 die antwort

Erhebliche FMA-Leistungsanomalie im Intel Broadwell-Prozessor

Code1: vzeroall mov rcx, 1000000 startLabel1: vfmadd231ps ymm0, ymm0, ymm0 vfmadd231ps ymm1, ymm1, ymm1 vfmadd231ps ymm2, ymm2, ymm2 vfmadd231ps ymm3, ymm3, ymm3 vfmadd231ps ymm4, ymm4, ymm4 vfmadd231ps ymm5, ymm5, ymm5 vfmadd231ps ymm6, ymm6, ...

14 die antwort

Verwendet double schneller als float?

Doppelwerte speichern eine höhere Genauigkeit und sind doppelt so groß wie ein Float. Sind Intel-CPUs jedoch für Floats optimiert? Das heißt, sind Doppeloperationen genauso schnell oder schneller als Gleitkommaoperationen für +, -, * und /? ...

4 die antwort

Automatisches Generieren von FMA-Anweisungen in MSVC

MSVC unterstützt seit Jahren AVX / AVX2-Anweisungen und entsprichtdieser msdn-Blogbeitrag [http://blogs.msdn.com/b/vcblog/archive/2014/02/28/avx2-support-in-visual-studio-c-compiler.aspx] , es kann automatisch @ erzeug fused-multiply-add ...

2 die antwort

Welche 2-Komplement-Integer-Operationen können verwendet werden, ohne hohe Bits in den Eingängen auf Null zu setzen, wenn nur der niedrige Teil des Ergebnisses gewünscht wird?

Bei der Assembly-Programmierung ist es üblich, aus den niedrigen Bits eines Registers etwas zu berechnen, bei dem nicht garantiert ist, dass die anderen Bits auf Null gesetzt sind. In höheren Sprachen wie C werden die Eingaben einfach auf die ...

4 die antwort

Verwenden des Basiszeigerregisters in C ++ inline asm

Ich möchte das Basiszeigerregister verwenden können %rbp) innerhalb von inline asm. Ein Spielzeugbeispiel dafür ist wie folgt: void Foo(int &x) { asm volatile ("pushq %%rbp;" // 'prologue' "movq %%rsp, %%rbp;" // 'prologue' "subq $12, %%rsp;" // ...