我们在配置深度学习环境的时候,除了安装各种库和框架外,如果需要 GPU 加速,还需要配置 CUDA 。那 CUDA 是什么 ?它的作用是什么 ?
CUDA 编程介绍
什么是 CUDA?
CUDA (Compute Unified Device Architecture) 是通用的并行计算平台和编程模型,利用 Nvidia GPU 中的并行计算引擎能更有效地解决复杂的问题,如矩阵和线性代数等相关运算。
为什么需要 CUDA ?
-
GPU 是为高速并行计算而生的(我们常见的场景应该是游戏)
-
对于某些应用,通过 GPU 调用比 CPU 调用高 30-100 倍
-
GPU 拥有 ALU (算术逻辑单元), 允许更多的并行计算结合。例如计算屏幕上每个像素的颜色等
CUDA 充分发挥 GPU 的作用 ,使得开发者通过编程释放 GPU 的并行计算能力。
进入 CUDA 编程的所需条件
CUDA 支持不同的编程语言(如上图) C / C++ / Python 等,最常用还是通过 CUDA C 进行编写。 CUDA C 是标准 ANSI C 语言的扩展,支持异构编程。
实际上除了编程语言外,你或者更需要的是一块高性能显卡。当你缺少钞票的时候,公有云会是进入 CUDA 编程的最低成本选择。
Azure 机器学习让你零成本入坑 CUDA 编程
Azure 有非常强大的机器学习功能, 我一直喜欢使用 Azure 机器学习来构建我的机器学习或深度学习方案。对于个人开发者和学生党都可以免费申领 Azure 。
对于个人开发者,你只需要一张信用卡,通过以下地址,就可以申领 Azure 200 美金的免费额度
Create Your Azure Free Account Today | Microsoft Azure
对于学生党,你只需要有一个 edu 邮箱 ,通过以下地址,就可以申领 Azure 100 美金的免费额度