コンテンツにスキップ

SIMD

出典: フリー百科事典『ウィキペディア(Wikipedia)』
ベクトル演算から転送)
SIMDの概念図
PU = 処理装置 (processing unit)

single instruction, multiple dataSIMD[ 1][ 2]1[5] (vector operation) SIMDpacked data

[]




4X, Y, Z, W


3232132141281324SIMD11/4128使128264×2使432×4使816×8使168×16使124816



SIMD使ILLIAC IVCray-11120

1990CPU/GPU

SIMD使256SIMD2561128使2

SIMD32SIMD使ALU使SIMD使

[]

[]

[]


x86MMX3DNow!SIMD (SSE)

x64Advanced Vector Extensions (AVX), Advanced Matrix Extensions (AMX)

ARMAdvanced SIMD (NEON), Scalable Vector Extension (SVE)[6], Scalable Matrix Extension (SME)

RISC-VVector Extension[7]

PowerPCAltiVec (VMX)

SPARCVIS (en:Visual Instruction Set)

MIPSMIPS-3D (en:MIPS-3D)MDMX (en:MDMX)

PA-RISC MAX (en:Multimedia Acceleration eXtensions)

Emotion EngineCPU

[]


SIMD

Cell Broadband Engine#Synergistic Processor Element

GPU[]


GPUSIMDGPGPU1SIMDSIMT

GPUXYZW/RGBA321284-way SIMD1132 (FMA) SIMT22-way SIMD844-way SIMDGPUSIMDSIMT[8]

NVIDIA GeForceNVIDIA QuadroNVIDIA Tesla

NVIDIAGPU32Warp

AMD RadeonAMD FirePro

AMDGPU64Wavefront

PowerVR

PowerVR Series54-wayPowerVR Series616-way[9]

[]


3DSIMD

PhysX

[]


PCI ExpressSIMD

CSX600 - SIMD

SX-Aurora TSUBASA Vector Engine - NECSX-Aurora TSUBASA82.45TFLOPS[10]

[]


SIMD (intrinsics/intrinsic functions) C/C++使SIMDSIMD

SIMDSIMD使[11][12][13]Clang/LLVM

OpenMP 4.0SIMD[14]

JavaJava 16Vector API[15]

.NET.NET Framework 4.664 (RyuJIT) System.NumericsSIMD使SIMDJIT[16]

WebAssembly128SIMDChrome 91Firefox 89Safari 16.4[17]

[]


 (bitwise operation) SIMD

脚注[編集]

注釈[編集]

  1. ^ 英語では「シムディー」("sim-dee") のように読まれる[1]。日本では「シムド」と呼ぶことがある。
  2. ^ "single instruction stream, multiple data stream" とする資料もある[2][3][4]

出典[編集]



(一)^ SIMD - MDN Web Docs Glossary: Definitions of Web-related terms | MDN

(二)^ P.HAYES, JOHN (1978,1979). Computer Architecture and Organization. McGRAW-HILL INTERNATIONAL BOOK COMPANY. p. 211. ISBN 0-07-027363-4 

(三)^ 6 -  - 5 (II)  - 4  | 

(四)^ David A. Patterson and John L. Hennessy (2007). Computer Organization and Design: The Hardware/Software Interface. Morgan Kaufmann Publishers. p. 596. ISBN 978-0-12-370606-5 

(五)^ SIMDSingle Instruction/Multiple Data - IT e-Words

(六)^  (2021331). Arm10Armv9SVE. PC Watch. 20211230

(七)^ riscv-v-spec/v-spec.adoc at master · riscv/riscv-v-spec. 2024621

(八)^ WeeklyNVIDIASoCXavierDenverVolta - PC Watch

(九)^  (2014319). Weekly PowerVR Series6 Rogue. PC Watch. 20211229

(十)^ NEC SX-Aurora TSUBASA Vector Engine

(11)^ Auto-Vectorizer in Visual Studio 2012  Overview  Parallel Programming in Native Code

(12)^ ® C++  - Compiler_AutoVectorization_Guide.pdf

(13)^ Auto-Vectorization in LLVM  LLVM git documentation

(14)^ OpenMP 4.0 使 SIMD  | iSUS

(15)^ JEP 338: Vector API (Incubator). openjdk.org. 202461

(16)^ .NET  | Microsoft Docs

(17)^ Using SIMD with WebAssembly  Emscripten 3.1.61-git (dev) documentation. emscripten.org. 202461

関連項目[編集]