cuda 面试题整理(长期更新)

整理了校招面试时遇到的cuda 八股文
涉及岗位:异构计算/AI框架研发/高性能计算/模型部署/算法优化/算子研发

1.cpu与gpu的区别?
CPU的设计着重于处理单个线程的复杂计算和控制流程。
GPU 被设计用于高密度和并行计算,更多的晶体管投入到数据处理而不是数据缓存和流量控制
体现在GPU的ALU(算术逻辑运算单元)数量更多

2.cuda编程中的SM SP 是什么?
SP(streaming processor),计算核心,最基本处理单元
SM(Streaming multiprocessor),多个SP加上其他找资源组成一个SM

3.cuda编程的内存模型
全局内存
共享内存
寄存器

4.cuda编程的软件模型
Block,线程块
Grid,线程格
thread,线程

5.stream(cuda 流)概念的理解
主机发出的在一个设备中执行的CUDA操作(和CUDA有关的操作,包括主机-设备数据传输和kerenl执行)

6.使用共享内存时需要注意什么?
(1)线程同步
__syncthreads() 在利用共享内存进行线程块之间合作通信前,都要进行同步,以确保共享内存变量中的数据对线程块内的所有线程来说都准备就绪
(2)避免共享内存的 bank 冲突 
bank 冲突概念:同一线程束内的多个线程试图访问同一个 bank 中不同层的数据时,造成bank冲突
只要同一线程束内的多个线程不同时访问同一个 bank 中不同层的数据,该线程束对共享内存的访问就只需要一次内存事务

7.对一个cuda kernel的进行优化可以从哪些角度入手

8.GPU L1/L2缓存介绍
9.同步stream和异步stream的理解

手撕
矩阵乘
softmax规约
nchw转nhwc
长度为n的数组 统计每个元素出现的频率 元素大小为0-256 统计的频率放在另一个数组里面
将数组里面的奇数位置的数放在左边,偶数位置的数放在右边,原地操作
全部评论
大佬能分享一下高性能计算学习路线吗?
4 回复 分享
发布于 2023-09-06 21:41 江苏
你说的这些好基础一般面试官都会问我CUDA中某stream中kernel遇到数据依赖导致切换时保存的上下文是什么,还有计算强度,occupancy,内存墙这些
3 回复 分享
发布于 2023-09-18 21:07 安徽
码住了,之前实习做过cpu加速,但gpu的东西还不太会。
1 回复 分享
发布于 2023-08-21 13:19 浙江
大佬,请问手撕cuda的代码应该怎么准备
点赞 回复 分享
发布于 2024-02-19 16:17 北京
催更大佬!
点赞 回复 分享
发布于 2023-09-06 21:41 江苏
狠狠订阅!冲冲冲
点赞 回复 分享
发布于 2023-08-23 16:10 上海
佬,催更ing
点赞 回复 分享
发布于 2023-08-23 10:06 山东
AI Lab不能没有你
点赞 回复 分享
发布于 2023-08-21 13:17 北京

相关推荐

两年空窗期+水硕+三无人员,是不是无路可走了?兄弟们路过看看投个票吧!贴主26届授课硕,第一年上课,第二年实习作为毕业报告。课设是模拟ic多,但今年4月底决定自学转数字,选了个导师有合作的芯片解决方案初创小企业(设计、验证、dft、后端、ate),要求实习到毕业前(如果中途离开就要自己负责毕业实习时长足够),一天100元食宿自理。贴主担心名头不够、工作内容没确定而且可能会因为无法提前到岗实习而错过一些秋招岗位,现在还没决定去,想自己投简历看有没有其它选择。毕业实习时长有要求,招聘软件上都是以图片简历+“6个月以上全职实习”开聊。错过三四月份,现在基本刷不到什么实习岗位了,近半个多月只投出六十多家(实习、26届提前批),0面试0有效回复。这个简历会不堪入目么?手上没有项目,简历上数字的内容是自己看着教材、协议、ai写的,听过就是了解,看过就是熟悉,用过就是精通,虽然是烂大街,但找不到好的上手项目。模拟课设拉过来填空白的。目前已经想延毕了,导师那边不能拖太久不回复实习决定,暂时想到了几个可选的路:1. 这个简历大概率找不到,不用等回复了,直接去导的公司,边干边投,找到更适合的实习/秋招,说明理由离开;2. 继续自学,边学边投,找dft/后端项目;3. 继续自学,边学边投,找设计/验证项目;4. 以上三选一,主动延毕半年,积累实习,参加27年秋招;5. 换方向,换啥好呢?贴主自己做过python游戏脚本及硬件控制,涉及图像处理、简单寻路,再打包一些matlab建模经历,有搞头吗?
无实习如何秋招上岸
点赞 评论 收藏
分享
评论
31
322
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务