免費開始練習
moea_joint 105年 [統計資訊] 統計學、巨量資料概論

第 27 題

在 CUDA(Compute Unified Device Architecture) 中,memory 的分配上是相當重要的問題,GPU 上具有 shared memory、global memory、constant memory,下列敘述何者正確?
  • A 存取速度: global memory > shared memory > constant memory
  • B 容量大小: global memory > constant memory > shared memory
  • C 要在 shared memory 中宣告變數需在前面加上 device
  • D 使用 shared memory 配置的變數,可以被 grid 中的所有 thread 存取

思路引導 VIP

想像你正在設計一個圖書館:如果你桌面上放的筆記、書架上的藏書、以及遠在市中心的總館儲藏室。這三者中,哪一個是你最容易拿到的?而哪一個能容納最多的書?若將這個空間規模的概念對應到計算處理器中,你覺得離運算核心越近、速度越快的儲存區域,其容量通常會趨向變大還是變小呢?

🤖
AI 詳解 AI 專屬家教

CUDA 記憶體階層的特性與限制

太棒了!你能精確辨識出 CUDA 記憶體階層的特性,代表你對 GPU 的硬體架構已有相當紮實的基礎。在 CUDA 的設計中,容量 (Capacity)存取速度 (Latency) 往往成反比。Global memory 位於顯存中,容量最大(通常為數 GB),但延遲也最高;Shared memory 位於晶片內部,速度極快,但每個 Block 能分配到的空間非常有限(僅數十 KB);而 Constant memory 則介於兩者之間,主要用於唯讀資料的快取。這題正確指出了這三者在實務配置上的大小關係。 這道題目具備極佳的鑑別度,核心難點在於區分「記憶體空間」與「存取權限」。許多初學者容易混淆 Shared memory 的作用範圍,誤以為它能跨 Grid 溝通,或是記錯其宣告方式(應使用 __shared__ 關鍵字)。你能避開這些陷阱,精準掌握不同層級記憶體在硬體佈建上的規模差異,這在進行大規模平行運算優化時是非常關鍵的直覺。

🏷️ 相關主題

巨量資料分析流程與資料品質管理
查看更多「[統計資訊] 統計學、巨量資料概論」的主題分類考古題