T0 大厂 百度
百度 AI Infra (2)
百度 AI Infra 面试真题,涵盖算子优化等方向
算子优化
一面
基础知识
- 描述 GPU 的内存层次结构及各级存储的共享关系。
- OpenMP 中如何声明并行区域?给出基本用法。
- 在并行环境下执行
for(int i=0;i<100;i++){sum++;}与串行执行的结果是否相同?如何确保并行结果的正确性? - Cache 映射分为哪几类?各有什么特点?
- 阐述 C++ 智能指针的种类及其应用场景。
- C++ 多态的概念是什么?有哪些实现方式?
- 动态链接和动态绑定分别是什么?二者有何区别?
项目经历
- 介绍简历中的项目与论文,并就相关技术细节展开讨论。
- 高性能计算方向主要研究了哪些内容?是否有大规模计算系统的使用经验?
二面
基础知识
- C++ STL 中 map 的底层数据结构是什么?其基本原理是怎样的?
- AVL 树和红黑树在平衡策略上有何差异?各自的性能特点是什么?
- unordered_map 的底层实现原理是什么?
- 哈希冲突的常见解决方案有哪些?
- 介绍计算机的存储层次结构。
- CPU 中应用程序员可见的寄存器分为哪几类?程序计数器(PC)的作用是什么?
- 列举日常使用频率较高的操作系统命令。
项目经历
- 介绍简历中的项目经历及研究工作。
三面
基础知识
- 如何在 main 函数执行之前运行一个自定义函数?
- 调试程序时如何设置条件断点?
- 如何进行堆栈监视?
- 程序在内存中的分段布局是怎样的?
- STL 中 deque 的内部实现机制是什么?
- 寄存器与 Cache 哪个访问速度更快?Cache 和主存分别采用什么技术实现?二者有何异同?
- CUDA 中的内存分类有哪些?
- 什么是 CUDA Kernel 函数?
__global__关键字的作用是什么? - 如何获取 GPU 支持的最大线程数量?
- 对比贪心算法和动态规划的思想与适用场景。
- 常见的图搜索算法有哪些?