{ "cuda": { "node_id": "cuda-a39f9a57edfe4dd48fce8d68e950db24", "keywords": [], "children": [ { "CUDA入门初阶": { "node_id": "cuda-0f5c808b1251449fb296063ff1d324d1", "keywords": [], "children": [ { "GPU架构及异构计算": { "node_id": "cuda-8cc14ba50dbb4b00ba62a8070d2b599c", "keywords": [], "children": [ { "介绍GPU架构以及异构计算的基本原理": { "node_id": "cuda-bdd8df6c59d0460bbf30d3a4a6203b06", "keywords": [], "children": [], "keywords_must": [ [ "GPU", "架构" ], [ "GPU", "异步计算" ] ], "keywords_forbid": [], "group": 0 } }, { "介绍GPU硬件平台": { "node_id": "cuda-8acef8aa3f7b479d90b7eaf77ff752eb", "keywords": [], "children": [], "keywords_must": [ [ "GPU", "硬件平台" ] ], "keywords_forbid": [], "group": 0 } }, { "环境安装配置": { "node_id": "cuda-f15df586747c4e648b6c6824c6b9b3e1", "keywords": [], "children": [], "keywords_must": [ [ "GPU", "环境安装" ], [ "GPU", "环境配置" ] ], "keywords_forbid": [], "group": 0 } } ], "keywords_must": [], "keywords_forbid": [], "group": 0 } }, { "初识CUDA": { "node_id": "cuda-8b007eb550f842058b4bc0b2bc457c7e", "keywords": [], "children": [ { "CUDA程序的编译": { "node_id": "cuda-25c9eacb75e64d00bff3d14ffdec7ea7", "keywords": [], "children": [], "keywords_must": [ [ "CUDA", "程序", "编译" ] ], "keywords_forbid": [], "group": 0 } }, { "GPU线程的调用": { "node_id": "cuda-4756f243773643fd8064aa5b4ffdb789", "keywords": [], "children": [], "keywords_must": [ [ "GPU", "线程", "调用" ] ], "keywords_forbid": [], "group": 0 } }, { "GPU和CPU的通讯": { "node_id": "cuda-bf38379916ce44978c6bfa3ef3487c71", "keywords": [], "children": [], "keywords_must": [ [ "GPU", "CPU", "通讯" ] ], "keywords_forbid": [], "group": 0 } }, { "使用多个线程的核函数": { "node_id": "cuda-8c79c6a5e3ca441a9cee430f312407bf", "keywords": [], "children": [], "keywords_must": [ [ "CUDA", "线程", "核函数" ] ], "keywords_forbid": [], "group": 0 } }, { "使用线程索引": { "node_id": "cuda-b7fb5b2b91234dd89968918460ae506f", "keywords": [], "children": [], "keywords_must": [ [ "CUDA", "线程索引" ] ], "keywords_forbid": [], "group": 0 } }, { "多维网络": { "node_id": "cuda-ec664e92f8e2410b88226408d9bb9a9f", "keywords": [], "children": [], "keywords_must": [ [ "cuda", "多维网络" ] ], "keywords_forbid": [], "group": 0 } }, { "网格与线程块": { "node_id": "cuda-70b301e021ef435f92c0f07b22adaa09", "keywords": [], "children": [], "keywords_must": [ [ "cuda", "网格" ], [ "cuda", "线程块" ] ], "keywords_forbid": [], "group": 0 } } ], "keywords_must": [], "keywords_forbid": [], "group": 0 } }, { "CUDA存储单元的使用": { "node_id": "cuda-d7adf776b61b4829aea19181b8bd188b", "keywords": [], "children": [ { "设备初始化": { "node_id": "cuda-5f99fc5469cf4907ba3ebe615287a6e9", "keywords": [], "children": [], "keywords_must": [ [ "cuda", "初始化" ] ], "keywords_forbid": [], "group": 0 } }, { "GPU的存储单元": { "node_id": "cuda-f336472c4c244a68b4a2ee80dac8fdd0", "keywords": [], "children": [], "keywords_must": [ [ "GPU", "存储" ] ], "keywords_forbid": [], "group": 0 } }, { "GPU存储单元的分配与释放": { "node_id": "cuda-3443edc2ea5140b0a39f690382bf91e2", "keywords": [], "children": [], "keywords_must": [ [ "GPU", "分配" ], [ "GPU", "释放" ] ], "keywords_forbid": [], "group": 0 } }, { "数据的传输": { "node_id": "cuda-2244dd4b61cc478094ba7013770f1f29", "keywords": [], "children": [], "keywords_must": [ [ "cuda", "数据传输" ] ], "keywords_forbid": [], "group": 0 } }, { "数据与线程之间的对应关系": { "node_id": "cuda-3fa4ca2a53d74b9d92a11ba6a7f23306", "keywords": [], "children": [], "keywords_must": [ [ "cuda", "数据", "线程" ] ], "keywords_forbid": [], "group": 0 } } ], "keywords_must": [], "keywords_forbid": [], "group": 0 } }, { "多种CUDA存储单元详解": { "node_id": "cuda-95a89e2e13dc4c5c94c41eeb648107a5", "keywords": [], "children": [ { "CUDA中的存储单元种类": { "node_id": "cuda-73f87372510e4546a282aea26e371e53", "keywords": [], "children": [], "keywords_must": [ [ "cuda", "存储", "种类" ] ], "keywords_forbid": [], "group": 0 } }, { "CUDA中的各种存储单元的使用方法": { "node_id": "cuda-3347d61cb34745a4adbe216f6eca305c", "keywords": [], "children": [], "keywords_must": [ [ "cuda", "存储", "使用" ] ], "keywords_forbid": [], "group": 0 } }, { "CUDA中的各种存储单元的适用条件": { "node_id": "cuda-73179a76ecd34f5dbf8e53b3a1e84228", "keywords": [], "children": [], "keywords_must": [ [ "cuda", "存储", "适用条件" ] ], "keywords_forbid": [], "group": 0 } } ], "keywords_must": [], "keywords_forbid": [], "group": 0 } }, { "利用共享存储单元优化应用": { "node_id": "cuda-288bccf96d9645e294723329219375eb", "keywords": [], "children": [ { "共享存储单元详解": { "node_id": "cuda-8965afc1396c4aad8fa3eaa203b6e3ac", "keywords": [], "children": [], "keywords_must": [ [ "cuda", "共享" ] ], "keywords_forbid": [], "group": 0 } }, { "共享内存的Bank conflict": { "node_id": "cuda-3c183e532dcd44d88311a778f6958916", "keywords": [], "children": [], "keywords_must": [ [ "cuda", "Bank", "conflict" ] ], "keywords_forbid": [], "group": 0 } }, { "利用共享存储单元进行矩阵转置和矩阵乘积": { "node_id": "cuda-6560fcc5a5c9465b84aa0f15b9576b79", "keywords": [], "children": [], "keywords_must": [ [ "cuda", "共享", "矩阵" ] ], "keywords_forbid": [], "group": 0 } } ], "keywords_must": [], "keywords_forbid": [], "group": 0 } }, { "统一内存": { "node_id": "cuda-545f2bfb1f8b4102ad4b50dd376ebc23", "keywords": [], "children": [ { "统一内存的基本概念和使用": { "node_id": "cuda-e2ec9573577d42fdbed66392ffc835d3", "keywords": [], "children": [], "keywords_must": [ [ "cuda", "统一内存" ] ], "keywords_forbid": [], "group": 0 } } ], "keywords_must": [], "keywords_forbid": [], "group": 0 } } ], "keywords_must": [], "keywords_forbid": [], "group": 0 } }, { "CUDA入门中阶": { "node_id": "cuda-c77a77ca93f546dda09ec621380b04f1", "keywords": [], "children": [ { "CUA错误检测与事件": { "node_id": "cuda-346e5f64d0904f63baccd001ef8b676b", "keywords": [], "children": [ { "CUDA应用程序运行时的错误检测": { "node_id": "cuda-634b3d9492044bafb7a089431c878879", "keywords": [], "children": [], "keywords_must": [ [ "cuda", "错误检测" ] ], "keywords_forbid": [], "group": 0 } }, { "CUDA中的事件": { "node_id": "cuda-5a542af3254b49a8ab5266364d421e47", "keywords": [], "children": [], "keywords_must": [ [ "cuda", "事件" ] ], "keywords_forbid": [], "group": 0 } } ], "keywords_must": [], "keywords_forbid": [], "group": 0 } }, { "原子操作": { "node_id": "cuda-6f61fc7ce2ef413886354ac2dfab2b27", "keywords": [], "children": [ { "CUDA中的原子操作": { "node_id": "cuda-10a7cead25f14eeaaf0730ff2468cb90", "keywords": [], "children": [], "keywords_must": [ [ "cuda", "原子操作" ], [ "cuda", "atomic" ] ], "keywords_forbid": [], "group": 0 } }, { "原子操作的适用场景": { "node_id": "cuda-9e74b1fb163e46bb8cc2e72b3c9990a9", "keywords": [], "children": [], "keywords_must": [ [ "cuda", "原子操作", "适用" ], [ "cuda", "atomic", "适用" ] ], "keywords_forbid": [], "group": 0 } } ], "keywords_must": [], "keywords_forbid": [], "group": 0 } }, { "CUDA stream": { "node_id": "cuda-5d11b746f9f34965a77bb8e6777c3ba9", "keywords": [], "children": [ { "CUDA流的基本概念": { "node_id": "cuda-a95b22ce131e42979daabc1f2ec82886", "keywords": [], "children": [], "keywords_must": [ [ "cuda", "stream", "概述" ], [ "cuda", "stream", "介绍" ] ], "keywords_forbid": [], "group": 0 } }, { "默认流与非默认流": { "node_id": "cuda-93c84af94c154430b93094befb70f5c8", "keywords": [], "children": [], "keywords_must": [ [ "cuda", "默认流" ] ], "keywords_forbid": [], "group": 0 } }, { "利用CUDA流重叠计算和数据传输": { "node_id": "cuda-24b5313252644192b40894d9d677a40f", "keywords": [], "children": [], "keywords_must": [ [ "cuda", "流", "重叠", "计算" ], [ "cuda", "流", "数据传输" ] ], "keywords_forbid": [], "group": 0 } } ], "keywords_must": [], "keywords_forbid": [], "group": 0 } } ], "keywords_must": [], "keywords_forbid": [], "group": 0 } }, { "CUDA入门高阶": { "node_id": "cuda-ade73748ee304a6997e6a24cbc0d69ac", "keywords": [], "children": [ { "CUDA 调试分析": { "node_id": "cuda-60427e3bc2ea4308a250e2716efe4ed8", "keywords": [], "children": [ { "利用Nsight等分析工具对程序性能进行分析": { "node_id": "cuda-1698eb54bf894cf48d27b11baaf03916", "keywords": [], "children": [], "keywords_must": [], "keywords_forbid": [], "group": 0 } }, { "根据实际硬件调整程序": { "node_id": "cuda-e1ca07a17c9443b5af7c0d22b4bff705", "keywords": [], "children": [], "keywords_must": [], "keywords_forbid": [], "group": 0 } } ], "keywords_must": [], "keywords_forbid": [], "group": 0 } }, { "CUDA 优化": { "node_id": "cuda-fb7d53daa17e4db09234d87558508e81", "keywords": [], "children": [ { "存储优化": { "node_id": "cuda-5f1d7d26ebff499abb0ee0aeb66da328", "keywords": [], "children": [], "keywords_must": [], "keywords_forbid": [], "group": 0 } }, { "执行设置优化": { "node_id": "cuda-8e9c726f99b84fa685d6e5cce061fd9d", "keywords": [], "children": [], "keywords_must": [], "keywords_forbid": [], "group": 0 } }, { "指令级优化": { "node_id": "cuda-d1a8d39fbc4247f394c9979f1cf2cac7", "keywords": [], "children": [], "keywords_must": [], "keywords_forbid": [], "group": 0 } }, { "控制流优化": { "node_id": "cuda-18f6a05677194f78bf61c456dddf0905", "keywords": [], "children": [], "keywords_must": [], "keywords_forbid": [], "group": 0 } } ], "keywords_must": [], "keywords_forbid": [], "group": 0 } }, { "CUDA 加速库": { "node_id": "cuda-923b4ee7f3134962933344a5d7b8ff4c", "keywords": [], "children": [ { "cuBLAS": { "node_id": "cuda-19170998ef3c4b9a9ab808a989ed29f3", "keywords": [], "children": [], "keywords_must": [], "keywords_forbid": [], "group": 0 } }, { "cuFFT": { "node_id": "cuda-9c80239f362c4b28aa40bf55a5f2de81", "keywords": [], "children": [], "keywords_must": [], "keywords_forbid": [], "group": 0 } }, { "cuRAND": { "node_id": "cuda-e1f4431b5a10485985345315c55762bc", "keywords": [], "children": [], "keywords_must": [], "keywords_forbid": [], "group": 0 } }, { "cuSPARSE": { "node_id": "cuda-88eb3bc83d4c425583fea7bf547483a6", "keywords": [], "children": [], "keywords_must": [], "keywords_forbid": [], "group": 0 } }, { "cuDNN": { "node_id": "cuda-083766b88b3647679d2067ec60ccfcdd", "keywords": [], "children": [], "keywords_must": [], "keywords_forbid": [], "group": 0 } } ], "keywords_must": [], "keywords_forbid": [], "group": 0 } } ], "keywords_must": [], "keywords_forbid": [], "group": 0 } } ], "keywords_must": [], "keywords_forbid": [], "group": 0 } }