AI深度学习算法推理加速CUDA HPC类岗位-英伟达面经
前几天才面了下nvidia,面试官问了一堆底层问题,好多没答上来...
这次记录下,欢迎大家一起讨论...
哈哈标题党了,我其实不是学生,分享一下我作为一名面试官常问的AI推理加速HPC岗位的问题~仅分享通用知识部分,项目部分因人而异这里省略
C++部分
1、为什么我们做C++项目的时候,需要写头文件?
2、讲出static关键字的一种应用场景
3、单例模式如何实现?
4、讲讲四种类型转换
5、拷贝构造函数中浅拷贝和深拷贝的区别?
6、一个类要去访问另一个类的private数据成员,该如何操作?
量化quantization部分
1、说说你知道的那些针对LLM的量化技法?
2、smoothquant为什么可以解决int8 LLM的accuracy问题?
3、bfloat16和fp16(half float point)同样内存大小,那么它们可以节约的内存大小应该是一样的吗?他们的优缺点主要有哪些?
4、量化怎么平衡精度和速度?
CUDA部分
1、讲讲shared memory bank conflict的发生场景?以及你能想到哪些解决方案?
2、CUDA里面如何分配GPU显存?为什么里面的参数是二级指针?
3、优化CUDA程序的访存效率,你可以想到哪些?
4、优化CUDA程序的计算效率,你又可以想到哪些?
大模型部分
1、有哪些encoder-only、decoder-only、encoder-decoder的模型?
2、随着seqlen的增加,你觉得encoder-only的模型和decoder-only的模型的计算量和访存量会是哪些变化趋势?为什么?
3、说说你知道的大模型训练or推理的常用优化手段
4、一般会对哪些大模型里面的算子做算子融合,说说你知道的
5、flash attention的原理讲讲?你认为为什么flash attention极大提升了训练速度?
6、paged attention的原理讲讲?你认为为什么paged attention极大提升了推理速度?它和flash attention的区别是什么?
以上呢,起始都是非常经典的问题,足够看出大家对AI推理加速HPC岗位的基础。
本人知道最近大家忙着准备实习面试和几个月后的秋招面试 ,同时很多学弟学妹深陷AI算法和后端开发的泥沼,认为只存在这俩职位,本人当初作为应届生的时候也是这样,但其实不然,AI深度学习推理加速HPC类岗位随着nvidia的股价暴涨,需求也是越来越大的,我从去年开始就帮助了很多同学了解这方面、加入这方面、着手实践项目,很多去年都成功拿到了offer,因此欢迎大家ping我,祝大家龙年工作如意~附一些截图