推荐几个不错的CUDA入门教程(非广告)

文 | godweiyang

最近因为项目需要,入坑了CUDA,又要开始写很久没碰的C++了。对于CUDA编程以及它所需要的GPU、计算机组成、操作系统等基础知识,我基本上都忘光了,因此也翻了不少教程。这里简单整理一下,给同样有入门需求的同学们参考一下。

官方文档及书籍

英文好、时间充裕的同学可以精读官方文档或者著作。

NVIDIA CUDA C++ Programming Guide

地址:
https://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html

这是英伟达官方的CUDA编程教程,但是我英文一般,简单过了一遍之后感觉很多细节没讲,有一定的跳跃性,所以我看完还是很朦胧。

CUDA C++ Best Practices Guide

地址:
https://docs.nvidia.com/cuda/cuda-c-best-practices-guide/index.html

这也是英伟达官方的CUDA编程教程,不过侧重点在实践方面,比如如何编程才能最大化利用GPU特性提升性能,建议基础打好之后再来看这个。

CUDA C编程权威指南

这么经典的书就不用我多说了,英文原版叫 《Professional CUDA C Programming》 ,pdf地址:
http://www.hds.bme.hu/~fhegedus/C++/Professional%20CUDA%20C%20Programming.pdf

个人博客

像我这种英文差、想快速入门的只能找找中文博客看看了,还是找到不少非常奈斯的教程的。

谭升的博客(强推!!!)

地址:
https://face2ai.com/program-blog/#GPU编程(CUDA)

这是我最近发现的又一个宝藏博主,看完他的GPU编程系列教程后感觉豁然开朗,很多底层的原理和细节都通彻了,强烈安利! 他在github还开源了教程对应的示例代码:
https://github.com/Tony-Tan/CUDA_Freshman

CUDA编程入门极简教程

地址:
https://zhuanlan.zhihu.com/p/34587739

速览即可,看完就会写最简单的CUDA代码了。

《CUDA C Programming Guide》(《CUDA C 编程指南》)导读

地址:
https://zhuanlan.zhihu.com/p/53773183

这是NVIDIA CUDA C++ Programming Guide和《CUDA C编程权威指南》两者的中文解读,加入了很多作者自己的理解,对于快速入门还是很有帮助的。但还是感觉细节欠缺了一点,建议不懂的地方还是去看原著。

CUDA编程入门系列

地址:
https://zhuanlan.zhihu.com/p/97044592

这位大佬写了六篇,主要是通过一个简单的加法的例子,一步步讲了CUDA优化的若干种方法,拿来上手实践一下还是很棒的。

CUDA编程系列

地址:
https://blog.csdn.net/sunmc1204953974/article/details/51000970

这个系列写的也是很全了,十几篇,建议快速通读一下。

开源代码

有很多的CUDA源码可以供我们慢慢学习,我这就简单给几个典型的Transformer系列的加速代码了。

LightSeq

地址:
https://github.com/bytedance/lightseq

这是字节跳动开源的生成模型推理加速引擎,BERT、GPT、VAE等等全都支持,速度也是目前业界最快的之一。

FasterTransformer

地址:
https://github.com/NVIDIA/DeepLearningExamples/tree/master/FasterTransformer

这是英伟达开源的Transformer推理加速引擎。

TurboTransformers

地址:
https://github.com/Tencent/TurboTransformers

这是腾讯开源的Transformer推理加速引擎。

DeepSpeed

地址:
https://github.com/microsoft/DeepSpeed

这是微软开源的深度学习分布式训练加速引擎。

我mentor说,不需要看这些,然后甩给了我20行代码,说看懂了就行了。结果我看懂了,门还是没开QAQ,所以建议还是看看底层一些的原理,加深自己的理解,特别是我强推的那篇博客。

后台回复关键词【入群

加入卖萌屋NLP/IR/Rec与求职讨论群

后台回复关键词【顶会

获取ACL、CIKM等各大顶会论文集!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/479143.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

logging.getLogger(logger)

https://www.cnblogs.com/bjdxy/archive/2012/12/03/2799322.html logging模块学习笔记:logger 对象、日志等级 logger:日志对象,logging模块中最基础的对象,用logging.getLogger(name)方法进行初始化,name可以不填。通…

美团DB数据同步到数据仓库的架构与实践

背景 在数据仓库建模中,未经任何加工处理的原始业务层数据,我们称之为ODS(Operational Data Store)数据。在互联网企业中,常见的ODS数据有业务日志数据(Log)和业务DB数据(DB)两类。对于业务DB数…

论文浅尝 | AAAI2020 - 基于生成对抗的知识图谱零样本关系学习

论文笔记整理:耿玉霞,浙江大学直博生。研究方向:知识图谱,零样本学习等。来源:AAAI2020论文链接:https://arxiv.org/pdf/2001.02332.pdf本文是发表在AAAI2020上的一篇基于生成对抗网络进行知识图谱零样本关…

LeetCode 1184. 公交站间的距离

1. 题目 环形公交路线上有 n 个站,按次序从 0 到 n - 1 进行编号。我们已知每一对相邻公交站之间的距离,distance[i] 表示编号为 i 的车站和编号为 (i 1) % n 的车站之间的距离。 环线上的公交车都可以按顺时针和逆时针的方向行驶。 返回乘客从出发点…

追剧计划第三弹!UC Berkeley出品,全栈深度学习!

关注卖萌屋比较早的小伙伴,大概还记得2020年初时我们组织的斯坦福大学CS224N自然语言处理公开课追剧计划,以及后来的斯坦福大学CS520知识图谱公开课追剧活动。尽管活动已经结束很长一段时间,但是仍然有小伙伴后台问“什么时候开始下一波追剧哇…

美团外卖iOS App冷启动治理

一、背景 冷启动时长是App性能的重要指标,作为用户体验的第一道“门”,直接决定着用户对App的第一印象。美团外卖iOS客户端从2013年11月开始,历经几十个版本的迭代开发,产品形态不断完善,业务功能日趋复杂;…

LeetCode 538. 把二叉搜索树转换为累加树(逆中序 根右左)

文章目录1. 题目2. 逆中序(根右左,降序循环遍历)1. 题目 给定一个二叉搜索树(Binary Search Tree),把它转换成为累加树(Greater Tree),使得每个节点的值是原来的节点值加上所有大于…

应用实践 | 电商应用——一种基于强化学习的特定规则学习模型

本文转载自公众号:浙大KG。作者:汪寒,浙江大学硕士,主要研究方向为知识图谱和自然语言处理。应用场景在电商实际应用中,每个商品都会被挂载到若干个场景,以图结构中的节点形式存在。商品由结构化信息表示&a…

20W奖金+实习机会:阿里巴巴达摩院最新时间序列赛事来了!

Datawhale赛事 赛事:2021“AI Earth”人工智能挑战赛2021“AI Earth”人工智能创新挑战赛,由阿里巴巴达摩院联合南京信息工程大学、国家气候中心、国家海洋环境预报中心、安徽省气象局共同创办。大赛以“AI助力精准气象和海洋预测”为主题,聚…

关于python中带下划线的变量和函数 的意义,class类带一个下划线和带两个下划线的定义

总结:变量:1. 前带_的变量: 标明是一个私有变量, 只用于标明, 外部类还是可以访问到这个变量2. 前带两个_ ,后带两个_ 的变量: 标明是内置变量,3. 大写加下划线的变量: 标明是 不会发生改变的全局变量函数:1. 前带_的变量: 标明是一个私有函数, 只用于标明,2. 前带两个_…

论文浅尝 | ICLR2020 - 基于组合的多关系图卷积网络

论文笔记整理:吴锐,东南大学计算机学院硕士。来源:ICLR 2020链接:https://arxiv.org/pdf/1911.03082.pdf动机目前针对于GCN的研究大多数都关注在学习无向图的结点表示上,然而我们在研究中更常见的通常是多关系图&#…

Hades:移动端静态分析框架

只有通过别人的眼睛,才能真正地了解自己 ——《云图》 背景 作为全球最大的互联网 生活服务平台,美团点评近年来在业务上取得了飞速的发展。为支持业务的快速发展,移动研发团队规模也逐渐从零星的小作坊式运营,演变为千人级研发军…

GitHub超级火!任意爬取,超全开源爬虫工具箱

文 | 程序员GitHub最近国内一位开发者在 GitHub 上开源了个集众多数据源于一身的爬虫工具箱——InfoSpider,一不小心就火了!!!有多火呢?开源没几天就登上GitHub周榜第四,标星1.3K,累计分支 172 …

LeetCode 413. 等差数列划分(DP)

1. 题目 一个数列的等差数列子数组有多少个。 A [1, 2, 3, 4]返回: 3, A 中有三个子等差数组: [1, 2, 3], [2, 3, 4] 以及自身 [1, 2, 3, 4]。2. 解题 状态公式 if(A[i]−A[i−1]A[i−1]−A[i−2]),thendp[i]dp[i−1]1,i>2if (A[i]-A[i-1] A[i-1]-A[i-2]) , \quad then \…

技术动态 | 针对复杂问题的知识图谱问答最新进展

本文转载自公众号:PaperWeekly。作者:付彬、唐呈光、李杨、余海洋、孙健单位:阿里巴巴达摩院小蜜Conversational AI团队背景介绍知识图谱问答(KBQA)利用图谱丰富的语义关联信息,能够深入理解用户问题并给出…

百度提出新冠高风险小区预警算法,AAAI21收录!

编:夕小瑶几个月前,小屋推送了一期上帝视角看新型冠状病毒(COVID-19)对公众出行影响的顶会论文解读——《这篇顶会paper,讲述了疫情期间憋疯的你和我》,这篇有趣的paper来自百度地图团队,发表在…

搜狗地图2016-Android-社招笔试题(包含Java基础部分)

下面是搜狗地图的社招笔试题,由于条件有限,全是手机拍的,请将就着看。另请忽略上面的答案,不一定准确。 大伙可在下方讨论答案,上方答案仅供参考,不一定准确。

机器学习常用的算法整理:线性回归、逻辑回归、贝叶斯分类、支持向量机、K-means聚类、决策树、随机森林以及常用的应用场景整理

什么是机器学习? 机器学习是计算机利用已有的数据(经验)得出了某种模型,并利用这些模型预测未来的一种方法。这个过程其实与人的学习过程极为相似,只不过机器是一个可以进行大维度数据分析而且可以不知疲倦地学习的“怪兽”而已。 具体的机器…

新一代数据库TiDB在美团的实践

1. 背景和现状 近几年,基于MySQL构建的传统关系型数据库服务,已经很难支撑美团业务的爆发式增长,这就促使我们去探索更合理的数据存储方案和实践新的运维方式。而随着分布式数据库大放异彩,美团DBA团队联合基础架构存储团队&#…

我在哥大读博的五年

文 | Mike Shou知乎(ID:Showthem)本文已获作者授权,禁止二次转载0. 写在前面「 开始写这边总结的时候是三月,纽约成了疫情震中,看着新闻报道里的中央公园,中国城,第五大道,往事浮现&…