Wann Macro und wann eigene Funktion?



  • [quote="Xebov"]

    masm schrieb:

    Ich hab in beiden heute mal rumgelesen. Konnte aber zB das Zusammenfassen zu Blöcken oder das Nutzen von op reg, mem statt op reg, reg nirgendwo finden.

    1. zu op reg,mem:

    Intels otimazion manual: 3.4.2.1 Optimizing for Micro-fusion schrieb:

    Assembly/Compiler Coding Rule 18. (ML impact, M generality) For improving
    fetch/decode throughput, Give preference to memory flavor of an instruction over
    the register-only flavor of the same instruction, if such instruction can benefit from
    micro-fusion.

    The following examples are some of the types of micro-fusions that can be handled
    by all decoders:
    • All stores to memory, including store immediate. Stores execute internally as two
    separate μops: store-address and store-data.
    • All “read-modify” (load+op) instructions between register and memory, for
    example:
    ADDPS XMM9, OWORD PTR [RSP+40]
    FADD DOUBLE PTR [RDI+RSI*8]
    XOR RAX, QWORD PTR [RBP+32]
    [...]

    2. zu den 'Blöcken': kann ich jetzt grade auch nicht ausfindig machen. Wird verm. im Zusammenhang mit Parallelisierung durch out-of-order execution erwähnt.


Anmelden zum Antworten