出典: 積和演算 『フリー百科事典 ウィキペディア日本語版(Wikipedia)』 最終更新 2019年5月12日 (日) 17:17 UTC、URL: https://ja.wikipedia.org/ 積和演算 (せきわえんざん) は、演算のひとつで、積の和を求める、つまり乗算の結果を順次加算する演算である。乗累算 (じょうるいざん) とも言う。MAD/MADD (multiply-add) もしくは MAC/MACC (multiply-accumulate) と呼ばれることもある。 ・・・ [融合積和演算] 積和の演算式において、途中の積算の演算結果を浮動小数点数の値としていったん丸めてしまうと、最終演算結果に大きな誤差が発生する。途中の積算を丸めず、積和演算を1命令で行なってしまうことで、最終演算結果の誤差を小さくするのが融合積和演算 (fused multiply-add, FMA/FMAD) である。FMAはIEEE 754規格の2008年改訂版 (IEEE 754-2008) で標準化されている。CPUでは、インテルx86系プロセッサの拡張命令であるIntel AVX2命令セット、ARMの拡張命令であるVFPv4やNEONv2で、このFMA命令が実装されている。CPUやDSPに限らず、GPU(NVIDIA製やAMD製やインテル製など)でもFMA命令がサポートされている。・・・ |
出典: 積和演算 [外語] MAC: Multiply and ACcumulation 『通信用語の基礎知識』 更新年月日 2014/11/27,URL: https://www.wdic.org/ 積の和を求める演算。つまり、二つの値の積を累算中の値に加算する演算 [概要] DSPの得意とする処理であり、かつ信号処理では必須の処理となる。積和演算は、式で書くと、次のようになる。 a ← b + (c × d) このままだと4項演算だが、aとbを同じにして3項演算とし、累算に特化した実装も多い。 a ← a + (b × c) 極めて単純明快な演算ではあるが、この演算速度が信号処理における最大の律速要因になり、信号処理速度そのものを決めてしまうので侮れない(あなどれない)。 この積和演算速度を表わすために、MMACS(メガ積和演算/秒)やGMACS(ギガ積和演算/秒)といった単位も存在するほどである。 従って、全てのDSPには汎用のMPUにはない高速乗算器とともに積和演算器が搭載され、積和演算命令(MAC命令)が用意されている。これにより、ほぼ全てのDSPはこの演算を1命令サイクルで実行するのである。 [特徴] 呼称 一般的には、Multiply and ACcumulationからMACという。 Intelは、Fused Multiply addからFMAと呼んでいる。 DSPの場合 DSPでも様々な実装があり、それぞれに特徴がある。一般的には、ニーモニックで次のように書くことが多いようではある。 MAC A,B,SUM AとBが二つの値で、SUMが累算する積和演算レジスターである。 積和演算レジスターが一つしかないようなDSPの場合は、これは省略されることになるだろう。 SuperHの場合 SuperHなど汎用のプロセッサーでも、積和演算器が組み込まれた製品がある。こういったプロセッサーでは汎用レジスターよりも大きな値を扱う必要があるため、積和演算レジスターとして、専用にレジスターを持っていることが多い。 SuperHの場合は2つの汎用レジスターで16または32ビットの値二つのポインターを示して使う。積和演算レジスターは一つしかないので指定する必要が無い。例えば次のようになる。 MAC.L @R0+,@R1+ 演算終了後、レジスターは自動で増分される。このため、メモリー上に連続してデータを用意しておけば、連続して命令を実行することができる。 SuperHの場合は汎用レジスターが32ビット、積和演算レジスターは64ビットなので、積和演算レジスターの上位・下位32ビットごとに分けて、汎用レジスターやメモリーに複写する命令が存在する。 ARMの場合 ARMも汎用のプロセッサーだが、組み込みを想定していることから、積和演算回路を搭載している。しかもARMの場合、4項演算が可能など、非常に贅沢な作りとなっている。 MLA{ UMLAL{ SMLAL{ MLAは、32ビットで演算し、結果を32ビットで返す命令である。UMLALとSMLALは、32ビット× 32ビットを実行し64ビットの整数に加算した結果を返す命令で、うちUは無符号、Sは符号付きを意味する。Sは、Rm, Rs, Rdの3値全てが符号ありとして扱われる。 ちなみにARMv6T2以降には、MLSという積差演算の命令が搭載された。 |
出典: ストリーミングSIMD拡張命令 『フリー百科事典 ウィキペディア日本語版(Wikipedia)』 最終更新 2020年3月28日 (土) 18:11 UTC、URL: https://ja.wikipedia.org/ ストリーミングSIMD拡張命令(英: Streaming SIMD Extensions、略称:SSE)は、インテルが開発したCPUのSIMD拡張命令セット、およびその拡張版の総称である。 [概要] SSEは、x86アーキテクチャに8本の128ビットレジスタを新設し、浮動小数点演算のSIMD処理を実現したものである。AMDのK6-2に実装されたSIMD拡張命令3DNow!に対抗する形でPentium IIIから実装された。4個の32ビット単精度浮動小数点データを一本のレジスタに格納し、同一の命令を一括処理することが出来る。拡張命令であるため、その機能を使用するためにはSSEに対応したソースコードを作成し、プログラムをコンパイルする必要がある。 [Intel AVX2] インテルはHaswellマイクロアーキテクチャから搭載。従来のSIMD整数演算命令が128ビットから256ビットに拡張されるのが主な変更点であるが、要素ごとに独立したシフト量を設定できるシフト命令、非連続なデータを並べ替えながらロードが可能なギャザー命令等の新たな命令も実装される。AMDはExcavatorアーキテクチャからAVX2を実装している。 ・・・ |
出典: 積和演算 『フリー百科事典 ウィキペディア日本語版(Wikipedia)』 最終更新 2017年9月24日 (日) 16:08 UTC、URL: https://ja.wikipedia.org/ 積和演算 (せきわえんざん)は、演算のひとつで、積の和を求める、つまり乗算の結果を順次加算する演算である。乗累算 (じょうるいざん) とも言う。MAD/MADD (multiply-add) もしくは MAC/MACC (multiply-accumulate) と呼ばれることもある。デジタル信号処理において非常に多く使用される演算で、デジタルシグナルプロセッサでは積和算命令を1クロックで実行できる専用の演算回路を持つ。また、1秒間にこの積和演算を何回実行できるか、がプロセッサの性能指標として使われることもある。 [融合積和演算] 積和の演算式において、途中の積算 {\displaystyle b\times c} b\times cの演算結果を浮動小数点数の値としていったん丸めてしまうと、最終演算結果に大きな誤差が発生する。途中の積算を丸めず、積和演算を1命令で行なってしまうことで、最終演算結果の誤差を小さくするのが融合積和演算 (fused multiply-add, FMA/FMAD) である。FMAはIEEE 754規格の2008年改訂版 (IEEE 754-2008) で標準化されている。 ・・・ |
同義語・類義語 | 関連語・その他 |
---|---|
AVX2 | MMX |
éi ví: éks túː | SSE |
エイ ヴィー エックス トゥー | AVX |
エ́イ ヴィ́ー エッ́クス トゥ́ー | ・ |
エー ブイ エックス ツー | FMA |
エ́ー ブ́イ エッ́クス ツ́ー | Fused Multiply Add |
Advanced Vector eXtensions 2 | fjuːzd mʌ́ltəplài ǽd |
ədvǽnst véktə iksténʃənz túː | フィユーズトゥ モァルゥトゥプラゥイ アェッドゥ |
アェドゥヴァェンストゥ ヴェクタゥー イェキステンシュンズ トゥー | フィユーズトゥ・モァルゥトゥプラゥイ・アェッドゥ |
アェドゥヴァェンストゥ・ヴェクタゥー・イェキステンシュンズ・トゥー | フィユーズトゥ・モァ́ルゥトゥプラゥ̀イ・アェッ́ドゥ |
アェドゥヴァェ́ンストゥ・ヴェ́クタゥー・イェキステ́ンシュンズ・トゥ́ー | フューズド マルチプライ アッド |
アドバーンスト ベクター エクステンションズ ツー | フューズド・マルチプライ・アッド |
アドバーンスト・ベクター・エクステンションズ・ツー | フューズド・マ́ルチプラ̀イ・アッ́ド |
アドバ́ーンスド・ベ́クター・エクステ́ンションズ・ツ́ー | 融合積和算 |
Intel AVX2 | 融合積和演算 |
íntel éi ví: éks túː | ・ |
インテルゥ エイ ヴィー エックス トゥー | Intel AVX2命令セット |
インテルゥ・エイ ヴィー エックス トゥー | 加算 |
イェ́ンテルゥ・エ́イ ヴィ́ー エッ́クス トゥ́ー | 乗算 |
インテル エー ブイ エックス ツー | ・ |
インテル・エー ブイ エックス ツー | advanced |
イ́ンテル・エー ブイ エックス ツー | ədvǽnst |
アェドゥヴァェンストゥ | |
アェドゥヴァェ́ンストゥ | |
アドバーンスト | |
アドバ́ーンスド | |
アドバンスト | |
[形容詞] | |
高度な | |
先進的な | |
上級の | |
高機能の | |
高等の | |
・ | |
Haswellマイクロアーキテクチャ | |
更新日:2023年12月15日 |
同義語・類義語 | 関連語・その他 |
---|---|
FMA | fused |
éf ém éi | fjuːzd |
エゥフ エィム エイ | フィユーズトゥ |
エゥ́フ エィ́ム エ́イ | フューズド |
エフ エム エイ | [形容詞] |
エ́フ エ́ム エ́イ | 溶かした |
FMAD | 溶融した |
Fused Multiply Add | 融解した |
fused multiply-add | 融合した |
fjuːzd mʌ́ltəplài ǽd | ヒューズが付いた |
フィユーズトゥ モァルゥトゥプラゥイ アェッドゥ | ・ |
フィユーズトゥ・モァルゥトゥプラゥイ・アェッドゥ | multiply |
フィユーズトゥ・モァ́ルゥトゥプラゥ̀イ・アェッ́ドゥ | mʌ́ltəplài |
フューズド マルチプライ アッド | モァルゥトゥプラゥイ |
フューズド・マルチプライ・アッド | モァ́ルゥトゥプラゥ̀イ |
フューズド・マ́ルチプラ̀イ・アッ́ド | マルチプライ |
融合積和演算 | マ́ルチプラ̀イ |
ゆうごうせきわえんざん | [他動詞] |
融合積和算 | ~を掛ける |
ゆうごうせきわさん | ~を拡大させる |
・ | [自動詞] |
IEEE 754-2008 | 掛ける |
・ | 掛け算をする |
・ | |
add | |
ǽd | |
アェッドゥ | |
アェッ́ドゥ | |
アッド | |
アッ́ド | |
[他動詞] | |
【 以下関連語 】 | ~を足す |
積和演算 | ~を加える |
せきわえんざん | [自動詞] |
AVX命令 | 付け足す |
Intel Advanced Vector eXtensions | 加算する |
Intel AVX | 付加する |
SIMD拡張命令 | 加える |
融合積和算命令 | |
・ | |
更新日:2024年 4月12日 |
同義語・類義語 | 関連語・その他 |
---|---|
MAC | マ́ルチプラ̀イ |
Multiply and Accumulation | [他動詞] |
mʌ́ltəplài ənd əkjùːmjuléiʃən | ~を掛ける |
モァルゥトゥプラゥイ エァンドゥ アキュムレゥイシュン | ~を拡大させる |
モァルゥトゥプラゥイ・エァンドゥ・アキュムレゥイシュン | [自動詞] |
モァ́ルゥトゥプラゥ̀イ・エァンドゥ・アキュ̀ムレゥ́イシュン | 掛ける |
マルチプライ アンド アキュミュレーション | かける |
マルチプライ・アンド・アキュミュレーション | 掛け算をする |
マ́ルチプラ̀イ・アンド・アキュ̀ミュレーション | ・ |
MACC | accumulate |
multiply-accumulate | əkjúːmjulèit |
マルチプライ・アキュミュレート | アキュミュレゥイツ |
エム エイ シー | アキュ́ミュレゥ̀イツ |
エム エー シー | アキュミュレート |
積和演算 | アキュ́ミュレ̀ート |
せきわえんざん | [他動詞] |
乗累算 | 累算する |
じょうるいざん | るいさんする |
MAD | 積み重ねる |
MADD | 累積する |
multiply-add | 集積する |
mʌ́ltəplài ǽd | [自動詞] |
モァルゥトゥプラゥイ・アェッドゥ | 堆積する |
マルチプライ・アッド | 積もる |
・ | ・ |
Accumulation | |
əkjùːmjuléiʃən | |
【 以下関連語 】 | アキュムレゥイシュン |
FMA | アキュ̀ムレゥ́イシュン |
fjuːzd mʌ́ltəplài ǽd | アキュミュレーション |
フィユーズトゥ・モァルゥトゥプラゥイ・アェッドゥ | アキュ̀ミュレーション |
フューズド・マルチプライ・アッド | [名詞] |
融合積和演算 | 累積 |
ゆうごうせきわえんざん | るいせき |
・ | 蓄積 |
Multiply | ちくせき |
mʌ́ltəplài | |
モァルゥトゥプラゥイ | |
モァ́ルゥトゥプラゥ̀イ | |
マルチプライ | |
更新日:2024年 4月 1日 |