影石嵌入式面经

最近影石的秋招真是让我心潮起伏,虽然之前已经决定放弃,但影石的抬价让我又重新燃起了希望。所以,我决定分享一下我的面试经历,希望能帮到同样在准备秋招的小伙伴们。

一面面经: 💪

一面的面试官真是技术大咖,问题一个接一个,完全没有停下来的意思。以下是我被问到的一些问题:

  • 为什么选择MNN推理框架?有没有调研过其他的?
  • 模型从训练到端侧用MNN作推理的流程是什么?
  • 实习任务中,int8和半精度的性能提升明显吗?
  • MNN的具体实现和优化策略是什么?
  • 双线性插值的4个点的权重如何分配?
  • 仿射变换用了什么NEON指令集,做了什么运算?
  • ax+b用矢量去做加速,会用哪条指令?
  • HWC和CHW以及NC4HW4的区别是什么?
  • 如果通道数是4,HWC与NC4HW4是否一致?
  • 卷积的计算过程,如果是多通道的,输出也是多个通道的吗?
  • 剪枝做了什么工作,有其他的剪枝手段吗?比如稀疏化?
  • NPU的算力有多少?
  • 常用的C++特性有哪些?
  • share_ptr和最常用的裸指针有什么优点?
  • share_ptr和unique_ptr的区别是什么?
  • 函数内部创建了一个unique_ptr,指向了一个对象,通过函数返回值返回这个unique_ptr可以吗?
  • 如果将同一个对象从unique_ptrA转移到unique_ptrB该如何做?
  • vector的扩容原理是什么?
  • 如果不期望动态内存,该如何预分配空间?
  • 虚函数、纯虚函数是什么?
  • 如果父类的析构函数没有写virtual,用父类指针指向派生类的对象,会有什么问题?
  • CPU上的三级缓存有什么特点?
  • 什么是cache miss和cache hit?
  • 为什么caffe4的格式能减少cache miss?
  • 缓存从主存加载数据时,是以什么单位取加载数据的?
  • 多个进程并发,在CPU上有哪些调度方法?
  • 平台算力的峰值是怎么估算出来的(主频)?
  • 指令周期是什么?
  • 流水线是什么?
  • 引用传参有什么好处?
  • 传参如何兼顾效率和不修改代码?

二面面经:深入项目的拷打 🔍

二面的面试官开始进入项目拷打模式,虽然具体项目细节我不方便透露,但以下是一些八股问题:

  • native层对java对象的引用有哪些类型(jni相关知识)?
  • 对lambda表达式的理解是什么?
  • 引用的本质是什么(和指针的区别)?
  • set和unordered_map的区别是什么?
  • 红黑树和完全平衡二叉树的区别是什么?
  • new和malloc的区别是什么?
  • 海量数据中如何找到最大的100个元素,想出三种排序算法?
  • 堆区和栈区的区别是什么?

总结 📝

希望这些内容能帮助到准备秋招的你们!祝大家都能顺利通过面试,找到理想的工作!

嵌入式软件工程师面试完全指南

面经一共32篇文章,12w+字数,包含全部最新的面试必问考点,4.7w+同学学习,2800+订阅,非常适合在找工作面经薄弱的同学,3200+订阅还会涨价,提前订阅提前享受,持续更新中。

原帖链接:https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM

全部评论
感觉这问的听多的啊,看着都有压力了
点赞 回复 分享
发布于 01-31 21:05 陕西
AI岗位么?还是嵌入式
点赞 回复 分享
发布于 01-28 11:23 广东

相关推荐

🎓学历背景:单二硕👨‍💻意向职位:嵌入式软件实习oc 快手 九号 momenta秋招oc 百度 理想 轻舟 小米 零跑 泰陵微 事业编求职感受:目前收到的几个offer  最高的超过了50w 平均35w左右 最后上岸事业编 和大家说一下我的情况 一共学了7个月左右 课题组方向偏传统所以从研二上学期开始就开学慢慢摸索学嵌入式 自己没有任何基础 机械专业 代码能力几乎为零开始的  但研二一年一直在外派实习 所以学习时间很短 我自己学习的过程踩了很多坑 下面几个建议希望可以帮助大家避雷 第一个是一定要明确自己到底找那个方向的工作 到底学rtos还是linux 和大家说一下 不要全部都选择 因为大部分公司把rtos和linux岗位分的都比较的清楚 是两个不同的岗位 所以大家如果想学rtos 就直接看rtos 而且rtos据我了解 手撕代码不多 其次就是我选的linux岗位 linux岗位比较考验代码能力 我拿offer的公司 基本上都有手撕 以及我挂了很多公司 也都有手撕 所以linux岗位要重视自己的代码能力 C语言一定要看 不管那个岗位 其次是c++ 我做项目以及实习 大部分都是使用c++ 在coding的时候c++也比较方便 大家最好系统学完 之后就是要把linux应用和驱动学完 最好都看完 学完了要立马找项目做 我是项目是其他课题组实验室项目和实习项目(两段实习 一段小厂一段大厂) 大家细节总结清楚 尤其是调优后的数据 提升了多少 在什么基础上提升的 原来的数据是怎么样的 要说清楚 并且大家可以多多投实习 在面试过程中练习自己的不足 遇到了对你有兴趣的面试官会让你有很大的提升 最后就是coding啦 我是刷的hot100 大概刷了4-5遍 其他的没有刷 面试一般也是出的hot100 自己总结的一句话 不出hot100 就是不想要你 哈哈哈 开玩笑的 但是嵌入式相比于后端 手撕就是容易一些
我的简历长这样
点赞 评论 收藏
分享
2本硕,在这一个下午真的绷不住了,浪费了太多时间,现在的技术栈还停在C语言和stm32上,找嵌入式的实习面试被拷打,找杭州的一个也找不到,真的心里难受,linux没学过,研二了开始慌了。
一条淡水魚:嵌入式这行的面试我认为实际项目比较重要,技术栈简单的提一嘴就行,面试官在乎的关键点在于你用了这些技术做了哪些工作解决了什么问题,而不是停留在离散的那些个技术栈上,那除了教课没有意义,好比你提到的c语言和32,你用32做过哪些具体的项目?接触过什么外设?使用过哪些公司的SDK?有没有实际产品落地?以及各种只有进入真正的生产环节当中才会积累到的经验......主动去和面试官讨论这些实际的问题,甚至还能就某个具体参数的合理性与他去简单探讨一下,只要技术栈对口,基本上就稳啦~(另外linux和RTOS是嵌入式的标配哦,选一个方向走下去吧)
点赞 评论 收藏
分享
评论
2
6
分享

创作者周榜

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