太初元基面经
一面(7后天过):
1、自我介绍 2、介绍一下推理框架这个项目 3、说一下推理项目中的项目难点 4、说说maxpool、conv的算子定义 5、C++11/14/17的新特性 6、说说左值与右值 - 左值(lvalue): 1. 可寻址、有持久状态 2. 有名称的变量 3. 可出现在赋值左侧 - 右值(rvalue): 1. 临时对象或字面量 2. 即将销毁的对象 3. 只能出现在赋值右侧 - C++11扩展: 1. 右值引用(&&) 2. 移动语义(std::move) 3. 完美转发(std::forward) - 应用场景: 1. 移动构造函数 2. 避免不必要的拷贝 7、讲讲C++中封装、继承、多态 - 封装: 1. 数据与操作绑定 2. 访问控制(private/protected/public) 3. 隐藏实现细节 - 继承: 1. 代码复用机制 2. 类型:单继承/多继承 3. 继承方式:public/protected/private - 多态: 1. 同一接口不同实现 2. 实现方式: - 编译时:函数重载、模板 - 运行时:虚函数(virtual) 3. 虚函数表机制 8、C++中继承中析构函数、构造函数顺序 - 构造函数顺序: 1. 基类构造函数(从最顶层开始) 2. 成员对象构造函数(按声明顺序) 3. 派生类构造函数 - 析构函数顺序(完全相反): 1. 派生类析构函数 2. 成员对象析构函数(逆序) 3. 基类析构函数(从最底层开始) - 重要注意: 1. 基类析构函数应声明为virtual 2. 多继承时按继承列表顺序构造/逆序析构 9、TensorFLow深度学习介绍一下 - 基本概念: 1. Google开发的开源深度学习框架 2. 基于数据流图(Data Flow Graphs) 3. 节点为操作,边为张量(tensor) - 核心特性: 1. 跨平台支持(CPU/GPU/TPU) 2. 自动微分机制 3. 高级API(Keras/Estimator) - 主要组件: 1. TensorFlow Core 2. TensorFlow Lite(移动端) 3. TensorFlow.js(浏览器) 4. TFX(端到端平台) - 应用领域: 1. 计算机视觉 2. 自然语言处理 3. 语音识别 4. 推荐系统 10、gdb调试的一些基本命令 11、使用Cmake多一点还是makefile多一点 12、OpenMP与CUDA中多线程的区别 - OpenMP: 1. CPU多核并行 2. 共享内存模型 3. 指令式并行(#pragma) 4. 适合粗粒度任务 - CUDA: 1. GPU并行计算 2. 异构架构(CPU+GPU) 3. 显式内存管理 4. 适合细粒度数据并行 - 主要区别: 1. 硬件平台(CPU vs GPU) 2. 内存模型(共享 vs 分离) 3. 并行粒度(数十 vs 数千线程) 4. 编程复杂度(简单 vs 复杂) 13、讲讲gtest 14、线程与进程的区别 进程: 1. 资源分配单位 2. 独立地址空间 3. 创建/销毁开销大 4. 通信复杂(IPC) - 线程: 1. CPU调度单位 2. 共享进程资源 3. 创建/销毁开销小 4. 通信简单(共享变量) - 主要区别: 1. 资源占用(多 vs 少) 2. 切换开销(大 vs 小) 3. 安全性(高 vs 低) 4. 独立性(高 vs 低) 15、推理框架中如何使用cuda的构建算子的。 16、终端文件浏览器中如何使用ffmpeg进行图片解码的 17、知不知道github上有一个终端的框架。 18、知道gdb中调试时产生的cored文件。 - 是程序崩溃时生成的内存转储文件 - 包含了程序崩溃时的内存状态、寄存器值、堆栈信息等 - 文件名通常为core或core.<pid> 19、如何进行算子上的性能的测试的。 20、一些关于公司业务的问题,实习的位置、时间。 21、关于比赛的一些好处 22、C++中程序的内存的分布 - 五大内存分区: 1. 栈区:局部变量、函数参数(自动管理) 2. 堆区:动态分配内存(手动管理) 3. 全局/静态区:全局/静态变量 4. 常量区:字符串常量等(只读) 5. 代码区:程序指令(只读) - 内存布局特点: 1. 栈向低地址增长,堆向高地址增长 2. 全局/静态变量在程序启动时初始化 3. 常量区和代码区为只读区域 23、C++中可以将内联函数设置为虚函数吗 - 语法上可以,但实际不会内联 - 原因: 1. 虚函数需要运行时动态绑定 2. 内联需要在编译期确定具体实现 - 结果: 1. 编译器会忽略inline关键字 2. 仍通过虚函数表调用 - 建议: 1. 避免这种写法(没有优化效果) 2. 只有final类的虚函数可能被内联 24、Linux使用的是什么发行版 25、笔记本的显卡配置#面试问题记录##牛客创作赏金赛#