Multiply-accumulate
Multiply-accumulate (z angl. násob-shrň) je matematická operace, která spočítá výsledek násobení a přičte jej do akumulátoru (typicky speciální registr procesoru).
Tato operace je pro celá čísla přesná (obvykle se počítá jako modulo s nějakou mocninou čísla 2).
V FPU (jednotka pro výpočty s pohyblivou řádovou čárkou) mikroprocesorů (CPU, DSP, GPU) je nejčastěji dvakrát rychlejší, než kdyby se násobení a sčítání počítalo zvlášť, ale je k tomu třeba upravená násobička. Operaci podporuje i standard IEEE 754-2008.[1]
V dřívější době to byla typická operace DSP, ale okolo roku 2022 je již implementována ve většině mikroprocesorů, včetně x86-64[2][3], ARM[4], POWER[5] a RISC-V[6]. Používá se zejména v maticových a vektorových algoritmech, například při konvoluci.
Odkazy
[editovat | editovat zdroj]Reference
[editovat | editovat zdroj]- ↑ LUTZ, David R. Fused Multiply-Add Microarchitecture Comprising Separate Early-Normalizing Multiply and Add Pipelines. In: 2011 IEEE 20th Symposium on Computer Arithmetic. [s.l.]: [s.n.], 2011-07. ISSN 1063-6889. Dostupné online. DOI 10.1109/ARITH.2011.25. S. 123–128.
- ↑ Software Optimization Guide for AMD Family 15h Processors. AMD [online]. [cit. 2022-05-18]. Dostupné online. (anglicky)
- ↑ Intrinsics for FP Fused Multiply-Add (FMA) Operations. Intel [online]. [cit. 2022-05-18]. Dostupné online. (anglicky)
- ↑ Documentation – Arm Developer. developer.arm.com [online]. [cit. 2022-05-18]. Dostupné online.
- ↑ Earth Signal. www.ibm.com [online]. [cit. 2022-05-18]. Dostupné online. (anglicky)
- ↑ The RISC-V Instruction Set Manual. www.RISCV.org [online]. [cit. 2022-05-18]. Dostupné online. (anglicky)