什麼是SIMT(單指令多執行緒)

單一指令、多個執行緒的方式。程式是以每個執行緒為單位撰寫,但硬體會以 warp(NVIDIA 為 32 個)為單位將執行緒綁在一起,以相同指令執行。

日文名稱: SIMT

「SIMT(單指令多執行緒)」出現在1領域的2道練習題中(GPU程式設計等)。

這個名詞所屬的領域: GPU程式設計

練習SIMT(單指令多執行緒)的題目

關於GPU的SIMT(單一指令、多執行緒)方式與CPU的SIMD指令之差異,下列何者正確?

  1. ASIMT對一筆資料同時執行多個指令,SIMD則對一筆資料執行一個指令
  2. BSIMT與SIMD完全相同,只是名稱不同
  3. CSIMT可將各執行緒寫成獨立的程式,分支也由硬體處理,而SIMD則需由程式設計師或編譯器明確使用寬度固定的向量指令
查看答案與解析

正確答案:C. SIMT可將各執行緒寫成獨立的程式,分支也由硬體處理,而SIMD則需由程式設計師或編譯器明確使用寬度固定的向量指令

CPU的SIMD是對集結了4個或8個資料的向量暫存器施加一個指令,因此撰寫程式時必須留意向量的寬度。GPU的SIMT則是程式設計師照一般方式撰寫一個執行緒的處理,再由硬體每32個一組,以相同指令運作。各執行緒也可以分支,硬體會依序執行分歧出的路徑,但此時效率會下降。

解析中的「SIMT(單指令多執行緒)」

出現「SIMT(單指令多執行緒)」的題目(2題)

  1. 關於GPU的SIMT(單一指令、多執行緒)方式與CPU的SIMD指令之差異,下列何者正確?
  2. 在NVIDIA的GPU中,將32個執行緒組成一束並同時執行相同指令的單位稱為什麼?

相關名詞

GPU SIMD 平行歸約(Parallel reduction) 共享記憶體(GPU shared memory) 串流多處理器(Streaming multiprocessor) 佔用率(GPU occupancy) 固定記憶體(Pinned memory) 延遲隱藏(Latency hiding) 前綴和(Prefix sum) 記憶體合併存取(Memory coalescing)

前往名詞解釋列表