[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"article-cuda-architecture-sms-cores-memory-zh":3,"article-related-cuda-architecture-sms-cores-memory-zh":28,"series-tools-f9efd9e5-c8e9-4cb1-9f30-443cbdb4d845":86},{"id":4,"slug":5,"title":6,"content":7,"summary":8,"source":9,"source_url":10,"author":11,"image_url":12,"cover_image":12,"category":13,"language":14,"translated_content":11,"related_article_id":15,"keywords":16,"key_takeaways":11,"views":25,"created_at":26,"published_at":27,"topic_cluster_id":11},"f9efd9e5-c8e9-4cb1-9f30-443cbdb4d845","cuda-architecture-sms-cores-memory-zh","CUDA 架構怎麼跑：SM、核心、記憶體","\u003Cp>一張現代 GPU，常常塞進上千個 CUDA core。CPU 呢？主流桌機多半只有 8 到 16 顆強力核心。這個差距，直接決定了 CUDA 在平行工作上的表現。\u003C\u002Fp>\u003Cp>講白了，CPU 像少數幾位大廚。GPU 像超大中央廚房。大家同時做同一個步驟，速度就拉開了。這也是 CUDA 讓人又愛又怕的地方。\u003C\u002Fp>\u003Cp>你如果做矩陣運算、影像濾鏡、粒子模擬，或大型 AI 推論，GPU 很容易跑得很滿。你如果做很多分支判斷、流程依賴很重的工作，CPU 反而常常更順。重點不是誰比較猛，是工作型態有沒有對上硬體。\u003C\u002Fp>\u003Ch2>CUDA 硬體到底在幹嘛\u003C\u002Fh2>\u003Cp>\u003Ca href=\"https:\u002F\u002Fdeveloper.nvidia.com\u002Fcuda-zone\" target=\"_blank\" rel=\"noopener\">CUDA\u003C\u002Fa> 是 NVIDIA 的平行運算平台。它讓你把一般程式丟到 GPU 上跑。這套東西的核心，不是單執行緒低延遲，而是吞吐量。\u003C\u002Fp>\n\u003Cfigure class=\"my-6\">\u003Cimg src=\"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1775197313894-6e3x.png\" alt=\"CUDA 架構怎麼跑：SM、核心、記憶體\" class=\"rounded-xl w-full\" loading=\"lazy\" \u002F>\u003C\u002Ffigure>\n\u003Cp>這個差異很重要。CPU 很會處理複雜控制流程。GPU 則很會處理大量重複算術。你可以把它想成兩種完全不同的工廠。前者精細，後者量大。\u003C\u002Fp>\u003Cp>所以，CUDA 不是拿來亂加速的。它適合的是能切成很多小任務的工作。像是向量加總、影像卷積、深度學習 forward pass，這些都很吃平行度。\u003C\u002Fp>\u003Cp>反過來說，如果你的程式有很多 if\u002Felse，而且每條路都不一樣，GPU 可能會閒著。那時候你會看到一個很尷尬的畫面：硬體很貴，卻沒吃飽。\u003C\u002Fp>\u003Cul>\u003Cli>CPU 核心少，但單核能力強。\u003C\u002Fli>\u003Cli>GPU 核心多，擅長重複算術。\u003C\u002Fli>\u003Cli>CUDA 的速度來自平行，不是單執行緒。\u003C\u002Fli>\u003Cli>記憶體存取常比算力更影響結果。\u003C\u002Fli>\u003C\u002Ful>\u003Ch2>SM 才是真正的排程單位\u003C\u002Fh2>\u003Cp>GPU 裡最重要的單位，不是你想像中的「核心數」。而是 \u003Ca href=\"https:\u002F\u002Fdeveloper.nvidia.com\u002Fblog\u002Finside-cuda-architecture\u002F\" target=\"_blank\" rel=\"noopener\">Streaming Multiprocessor\u003C\u002Fa>，也就是 SM。SM 負責排程、分派工作，也包住一組執行資源。\u003C\u002Fp>\u003Cp>每個 SM 都有\u003Ca href=\"\u002Fnews\u002Fopenclaw-build-train-personal-ai-agent-zh\">自己\u003C\u002Fa>的排程器和局部資源。這代表 GPU 可以把很多 block 分散到不同 SM 上跑。外面看起來像一顆晶片，裡面其實像一群分工很細的工班。\u003C\u002Fp>\u003Cp>這裡有個常被新手誤解的點。你不是真的在「直接控制每顆 core」。你是把 thread block 丟給 GPU，然後由 SM 去接手分配。這也是 CUDA 程式設計跟 CPU 程式設計差很多的原因。\u003C\u002Fp>\u003Cblockquote>“GPUs consist of many simple processing cores organized into streaming multiprocessors (SMs) or compute units, enabling massive parallelism.”\u003C\u002Fblockquote>\u003Cp>這句話來自電腦架構課程的說明。說得很白。SM 是讓大量平行工作變成可管理的基本單位。\u003C\u002Fp>\u003Cp>如果你寫 kernel 時只想著「每個 thread 做一點事」，通常還不夠。你還得想 block 怎麼切、SM 會不會塞滿、occupancy 夠不夠高。這些才是 CUDA 的真功夫。\u003C\u002Fp>\u003Ch2>CUDA core 為什麼看起來很多\u003C\u002Fh2>\u003Cp>SM 裡面有很多 CUDA core。它們負責做實際算術。這些 core 不是縮小版 CPU。它們更像大量簡化版算術單元，專門跑重複操作。\u003C\u002Fp>\n\u003Cfigure class=\"my-6\">\u003Cimg src=\"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1775197318885-f99t.png\" alt=\"CUDA 架構怎麼跑：SM、核心、記憶體\" class=\"rounded-xl w-full\" loading=\"lazy\" \u002F>\u003C\u002Ffigure>\n\u003Cp>所以你才會看到 GPU 核心數很誇張。高階 CPU 可能是 8 或 16 核。資料中心 GPU 卻能有數千個 CUDA core。這不是誰比較高級，而是設計目標不同。\u003C\u002Fp>\u003Cp>CPU 核心追求的是單一工作快完成。GPU 核心追求的是很多工作一起完成。這也解釋了為什麼有些 AI 推論在 GPU 上快很多。因為它本來就是大量矩陣乘法。\u003C\u002Fp>\u003Cp>但別把 core 數量當成全部。GPU core 多，不代表任何程式都會快。你如果資料切得很爛，thread 之間又互相卡住，core 再多也只是看起來很熱鬧。\u003C\u002Fp>\u003Cul>\u003Cli>CPU 核心適合低延遲、複雜控制流程。\u003C\u002Fli>\u003Cli>CUDA core 適合高吞吐量、簡單重複運算。\u003C\u002Fli>\u003Cli>分支太多，GPU 效率會掉。\u003C\u002Fli>\u003Cli>資料形狀對了，GPU 才會真的發揮。\u003C\u002Fli>\u003C\u002Ful>\u003Ch2>記憶體階層，才是 CUDA 的地雷區\u003C\u002Fh2>\u003Cp>很多人以為 CUDA 比的是算力。其實不然。很多時候，真正決定快慢的是記憶體\u003Ca href=\"\u002Fnews\u002Fsam-altman-exit-openai-board-analysis-zh\">怎麼走\u003C\u002Fa>。你如果一直去慢的地方拿資料，再多核心都會等到發呆。\u003C\u002Fp>\u003Cp>\u003Ca href=\"https:\u002F\u002Fdeveloper.nvidia.com\u002Fblog\u002Funderstanding-the-cuda-memory-hierarchy\u002F\" target=\"_blank\" rel=\"noopener\">NVIDIA 的記憶體階層說明\u003C\u002Fa>把 GPU 記憶體分成 registers、shared memory、global memory。Registers 最快，但每個 thread 能用很少。Shared memory 很快，而且同一個 SM 內可以共用。Global memory 容量大，但延遲也高。\u003C\u002Fp>\u003Cp>這就是 CUDA 最麻煩的地方。你不只是在寫演算法。你還在管理資料流。很多 kernel 慢，不是因為算錯，而是因為資料一直在 global memory 來回跑。\u003C\u002Fp>\u003Cp>所以實戰上有個很土但很有用的規則。暫存值放 registers。附近 threads 會重用的資料放 shared memory。大資料集才放 global memory。這種分層思維，會直接影響你的效能。\u003C\u002Fp>\u003Cul>\u003Cli>Registers 最快，但容量很小。\u003C\u002Fli>\u003Cli>Shared memory 適合同一個 SM 內協作。\u003C\u002Fli>\u003Cli>Global memory 最大，但也最慢。\u003C\u002Fli>\u003Cli>少碰 global memory，通常就少踩雷。\u003C\u002Fli>\u003C\u002Ful>\u003Cp>你如果做影像處理，常會看到 \u003Ca href=\"\u002Fnews\u002Factionparty-multi-subject-action-binding-zh\">ti\u003C\u002Fa>le-based 的寫法。原因很簡單。先把一小塊資料搬進 shared memory，再讓很多 thread 重用。這比每個 thread 都去抓 global memory 好太多。\u003C\u002Fp>\u003Ch2>為什麼 GPU 能贏 CPU\u003C\u002Fh2>\u003Cp>CUDA 不是萬能。它只在特定情況下很強。條件通常有三個。第一，工作能切平行。第二，運算步驟很重複。第三，資料存取夠規律。\u003C\u002Fp>\u003Cp>這也是為什麼 AI 訓練、科學模擬、影片編碼，常常愛用 GPU。這些工作有大量可重複的數學運算。CPU 當然也能做，但它更像是在用精密工具處理少量複雜任務。\u003C\u002Fp>\u003Cp>你可以把差異看成兩種硬體哲學。CPU 重視每個核心的靈活度。GPU 重視大量核心一起動。前者像少數高手。後者像整隊工人。當工作量夠大時，後者會很有感。\u003C\u002Fp>\u003Cul>\u003Cli>CPU：8 到 16 顆強核心很常見。\u003C\u002Fli>\u003Cli>GPU：數千個 CUDA core 很常見。\u003C\u002Fli>\u003Cli>CPU：適合分支多、流程複雜的程式。\u003C\u002Fli>\u003Cli>GPU：適合大批量、同質化的資料運算。\u003C\u002Fli>\u003C\u002Ful>\u003Cp>如果你想看更完整的程式模型，可以接著看 \u003Ca href=\"https:\u002F\u002Fdeveloper.nvidia.com\u002Fcuda-zone\" target=\"_blank\" rel=\"noopener\">CUDA 官方文件\u003C\u002Fa>。你一旦理解 thread、block、grid，很多硬體圖就不會再像天書。\u003C\u002Fp>\u003Cp>也可以順手看一下競品。\u003Ca href=\"https:\u002F\u002Fwww.amd.com\u002Fen\u002Fproducts\u002Fsoftware\u002Frocm.html\" target=\"_blank\" rel=\"noopener\">AMD ROCm\u003C\u002Fa> 走的是 AMD 路線。\u003Ca href=\"https:\u002F\u002Fwww.intel.com\u002Fcontent\u002Fwww\u002Fus\u002Fen\u002Fdeveloper\u002Ftools\u002Foneapi\u002Foverview.html\" target=\"_blank\" rel=\"noopener\">Intel oneAPI\u003C\u002Fa> 則想把 CPU、GPU、加速器一起管。只是老實說，CUDA 的工具鏈還是最成熟。\u003C\u002Fp>\u003Ch2>背景脈絡：CUDA 為什麼一直重要\u003C\u002Fh2>\u003Cp>CUDA 不是今天才冒出來。NVIDIA 很早就把 GPU 從圖形處理器，推向通用運算平台。這件事後來剛好接上深度學習的浪潮，結果大家現在幾乎都離不開 GPU。\u003C\u002Fp>\u003Cp>尤其在 LLM 時代，訓練和推論都很吃矩陣運算。模型參數一大，CPU 就很容易卡住。GPU 的大量平行設計，剛好對上這種工作型態。說真的，這就是硬體和演算法剛好對味。\u003C\u002Fp>\u003Cp>另一個現實是，NVIDIA 在軟體生態做得很深。從 \u003Ca href=\"https:\u002F\u002Fdeveloper.nvidia.com\u002Fcudnn\" target=\"_blank\" rel=\"noopener\">cuDNN\u003C\u002Fa> 到各種 profiler、compiler、library，整套工具讓開發者比較容易把 GPU 用滿。這也是它在 AI 領域站得很穩的原因。\u003C\u002Fp>\u003Cp>但這不代表別人沒機會。AMD 和 Intel 都在補工具鏈。雲端服務商也在做自己的加速方案。只是就現階段來看，CUDA 還是很多團隊的第一選擇。\u003C\u002Fp>\u003Ch2>結尾：先看資料流，再看算力\u003C\u002Fh2>\u003Cp>如果你要把 CUDA 用好，我的建議很直接。先看你的資料怎麼流，再看你的算力夠不夠。很多人一開始只看 GPU 有幾個 core，結果寫出來的 kernel 還是慢。\u003C\u002Fp>\u003Cp>接下來最值得問的問題不是「GPU 有多快」。而是「我的演算法能不能切成很多一樣的工作」。如果答案是可以，那 CUDA 很值得投入。反之，就別硬上，CPU 可能更省事。\u003C\u002Fp>\u003Cp>我自己的判斷是，接下來幾年，懂 memory hierarchy 的人會更吃香。因為真正拉開差距的，常常不是 FLOPS，而是資料有沒有被你餵對地方。這點很現實，也很殘酷。\u003C\u002Fp>","CUDA GPU 把工作拆給 SM、數千個核心和分層記憶體。這篇用台灣開發者看得懂的方式，拆開它為何特別適合平行運算。","oboe.com","https:\u002F\u002Foboe.com\u002Flearn\u002Fintroduction-to-cuda-programming-1c8n5wz\u002Fcuda-architecture-introduction-to-cuda-programming-1",null,"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1775197313894-6e3x.png","tools","zh","9f973836-4d14-4435-b3b7-fb180e57b5fc",[17,18,19,20,21,22,23,24],"CUDA","GPU","SM","CUDA core","記憶體階層","平行運算","NVIDIA","LLM",5,"2026-04-03T06:21:37.918394+00:00","2026-04-03T06:21:37.791+00:00",{"tags":29,"relatedLang":45,"relatedPosts":49},[30,31,33,36,38,40,42,43],{"name":21,"slug":21},{"name":19,"slug":32},"sm",{"name":34,"slug":35},"Nvidia","nvidia",{"name":18,"slug":37},"gpu",{"name":17,"slug":39},"cuda",{"name":24,"slug":41},"llm",{"name":22,"slug":22},{"name":20,"slug":44},"cuda-core",{"id":15,"slug":46,"title":47,"language":48},"cuda-architecture-sms-cores-memory-en","CUDA Architecture Explained: SMs, Cores, Memory","en",[50,56,62,68,74,80],{"id":51,"slug":52,"title":53,"cover_image":54,"image_url":54,"created_at":55,"category":13},"1a92ac0a-75ea-4877-874d-4a309cd0085b","nvidia-research-gpu-template-zh","NVIDIA 研究頁把 GPU 資源變模板","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1780567412863-e8oq.png","2026-06-04T10:02:58.043845+00:00",{"id":57,"slug":58,"title":59,"cover_image":60,"image_url":60,"created_at":61,"category":13},"3ead09ec-5656-4165-9bb0-f602add3c409","qdrant-filter-first-rag-design-decoded-zh","Qdrant 讓 RAG 先過濾再找相似","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1780566519640-bdds.png","2026-06-04T09:47:59.450347+00:00",{"id":63,"slug":64,"title":65,"cover_image":66,"image_url":66,"created_at":67,"category":13},"7b5e6965-307e-4492-bf65-d922cd7818ad","anthropic-code-review-tool-ai-generated-code-zh","Anthropic 讓 AI 程式變可審","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1780563813320-5wc7.png","2026-06-04T09:02:56.999212+00:00",{"id":69,"slug":70,"title":71,"cover_image":72,"image_url":72,"created_at":73,"category":13},"bef47dbc-b0b4-439e-bae9-abe9473a321c","wei-shen-me-tether-ba-ben-di-ai-ji-yi-tui-jin-ri-chang-zhuan-zh","為什麼 Tether 把本地 AI 記憶推進日常裝置是對的","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1780542170805-opi6.png","2026-06-04T03:02:19.599329+00:00",{"id":75,"slug":76,"title":77,"cover_image":78,"image_url":78,"created_at":79,"category":13},"d3ec03a8-a805-4a21-9826-72a74a72b625","databricks-model-serving-llm-deploy-guide-zh","Databricks Model Serving 讓 LLM 部署變簡單","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1780525998117-7ur8.png","2026-06-03T22:32:51.005996+00:00",{"id":81,"slug":82,"title":83,"cover_image":84,"image_url":84,"created_at":85,"category":13},"4dd225a8-bf6c-4768-a486-a27956c7033d","opencode-digitalocean-model-freedom-zh","OpenCode+DigitalOcean 讓你切換模型","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1780525116428-1q7g.png","2026-06-03T22:18:06.969758+00:00",[87,92,97,102,107,112,117,122,127,132],{"id":88,"slug":89,"title":90,"created_at":91},"855cd52f-6fab-46cc-a7c1-42195e8a0de4","surepath-real-time-mcp-policy-controls-zh","SurePath 推出即時 MCP 政策控管","2026-03-26T07:57:40.77233+00:00",{"id":93,"slug":94,"title":95,"created_at":96},"9b19ab54-edef-4dbd-9ce4-a51e4bae4ebb","mcp-in-2026-the-ai-tool-layer-teams-use-zh","2026 年 MCP：團隊真的在用的 AI 工具層","2026-03-26T08:01:46.589694+00:00",{"id":98,"slug":99,"title":100,"created_at":101},"af9c46c3-7a28-410b-9f04-32b3de30a68c","prompting-in-2026-what-actually-works-zh","2026 提示工程，真正有用的是什麼","2026-03-26T08:08:12.453028+00:00",{"id":103,"slug":104,"title":105,"created_at":106},"05553086-6ed0-4758-81fd-6cab24b575e0","garry-tan-open-sources-claude-code-toolkit-zh","Garry Tan 開源 Claude Code 工具包","2026-03-26T08:26:20.068737+00:00",{"id":108,"slug":109,"title":110,"created_at":111},"042a73a2-18a2-433d-9e8f-9802b9559aac","github-ai-projects-to-watch-in-2026-zh","2026 必看 20 個 GitHub AI 專案","2026-03-26T08:28:09.619964+00:00",{"id":113,"slug":114,"title":115,"created_at":116},"a5f94120-ac0d-4483-9a8b-63590071ac6a","claude-code-vs-cursor-2026-zh","Claude Code 與 Cursor 深度對比：202…","2026-03-26T13:27:14.279193+00:00",{"id":118,"slug":119,"title":120,"created_at":121},"0975afa1-e0c7-4130-a20d-d890eaed995e","practical-github-guide-learning-ml-2026-zh","2026 機器學習入門 GitHub 實用指南","2026-03-27T01:16:49.712576+00:00",{"id":123,"slug":124,"title":125,"created_at":126},"bfdb467a-290f-4a80-b3a9-6f081afb6dff","aiml-2026-student-ai-ml-lab-repo-review-zh","AIML-2026：像課綱的學生實驗 Repo","2026-03-27T01:21:51.467798+00:00",{"id":128,"slug":129,"title":130,"created_at":131},"80cabc3e-09fc-4ff5-8f07-b8d68f5ae545","ai-trending-github-repos-and-research-feeds-zh","AI Trending：把 AI 資源收成一張表","2026-03-27T01:31:35.262183+00:00",{"id":133,"slug":134,"title":135,"created_at":136},"3ce6e6e2-bac5-463e-9f8d-45caabcc61f7","awesome-ai-for-science-research-tools-map-zh","AI 科研工具清單，開始像地圖了","2026-03-27T01:46:50.521945+00:00"]