文远知行infra高性能-完成面试流程

近期会分享一些面经,由于面试突然增多,学业又紧迫,因此从和计算机体系结构/IC 最不沾边的开始
#秋招#  #文远知行#  #2025#

受邀内投
一面8.9
拷打简历,虽然他不懂 CPU 微结构,但是基本上努力讲明白了,画了几个结构图
问了一些 FPGA 的新动向和互联方式,他比较感兴趣但不太了解,遂为其介绍
无八股
数据结构题,二叉树
反问部门,onboard ,也不需要会cuda
面完两小时后约面

二面8.13
继续拷打简历,这个面试官对 CPU 有一定的了解,问了一些 ISA,cache,内存顺序/一致性的问题
简单的 OS 八股
又一数据结构题,二叉树层次遍历
下周一约面

三面8.22早8点
面试官人在美国,所以约的很早。但是能看出面试官对此有所准备,问题设置也由浅入深,非常合理。半中半英问答。首先说因为之前面试官把他想问的简历都问过了,因此直接开始 coding,边写边讨论。我选择用 C。问题包括但不限于:
matrix 由26个英文小写字母组成,在其中搜索目标字符串,上下左右四个方向连接起来即算作匹配。若匹配则调用 callback。我先找首字母起始位置,再用 DFS 即可。面试官问了一下回溯时的状态恢复。再问复杂度。再问如何降低复杂度,其实可以对 input str set 做一个前缀树,提前存储更多的前缀起始信息。如果不在树里的怎么办?常规搜索边搜边建就行?如果数据量很大,内存不够怎么办?先按 hash 把更可能有重复前缀的 input 一起处理,更可能复用之前的状态。如果 callback 很 heavy 怎么办?异步起一个新线程做。。。
反问了部门工作,面试官详细介绍了下,基本上是各种新硬件的 driver 到 OS 级的工作
周末后的周一约四面。

四面(终面)8.30早8点
小插曲,showmebug宕机了,HR小姐姐7点多帮忙开牛客环境,辛苦了~
简单自我介绍后,开始询问我简历上的CPU微结构项目
由于项目涉及到内存访问,面试官询问了以下问题:
1)什么是内存一致性模型?x86, ARM下的内存一致性模型是怎样的。从概念到微结构进行了解释
2)如果要确定内存操作在多核间的次序,怎么做?回答了Cache Management Operation (flush, clean) 以及微结构语义屏障指令 (fence)。另外也提到锁来防止并发访问冲突,项目中涉及的。
3)PCIE了解吗?能简要介绍下CXL协议吗?回答CXL over PCIE。如何利用PCIE的设施讲一下,将了一下PCIE switch可以扩展链接多设备/内存等等。用没用过lspci以及控制其他外设?之前玩FPGA时用到过。问那你对PCIE协议很了解咯?感觉回答NONONO
4)在SoC中,如果socket 0 写了一个内存地址,socket 1是怎么读到这个新数据的?因为面试官x86用得多,遂为其介绍基于MESI的缓存一致性协议状态+事务。问了很多细节,包括状态转换是怎么知道下一个状态的,会不会有中间状态等等。

coding,问我是不是ACMer,赶紧否定(大早上真做不了算法题)。用C写了个在字符串s中寻找cover子串t,不要求连续,也不要求顺序。直接双指针写的,没做优化。但好像这一面的面试官并没有care复杂度。
问我咋会投他们,我说HR邀请的,乐
反问了base,工作内容上一面问完了。体验整体良好

文远面试轮次多,三四面时间很阴间(因为面试官在美国),提问范围广,而且确实每一面都有要刷人的风险(基本都很大,可能是因为HC少)。但因为我可能不是算法岗吧,手撕的题都比较简单,或者要求比较低。整体来讲,面试官都很客气,互相尊重,氛围非常好。

9.3 终面✅,推进 offer 

9.6 确定 oc
若有后续,持续更新
全部评论
请问楼主是怎么确定oc的呀?我也收到四面通过的通知,但是hr说需要等到十月底一起开,说是不会提前发录取意向的
点赞 回复 分享
发布于 2024-09-27 09:14 陕西
请问佬,oc是有意向邮件么
点赞 回复 分享
发布于 2024-09-26 21:50 安徽
请问所有面试都是线上吗?
点赞 回复 分享
发布于 2024-09-25 10:23 北京
三面 沾沾喜气
点赞 回复 分享
发布于 2024-09-23 10:21 广东
太牛了老哥
点赞 回复 分享
发布于 2024-09-13 12:19 美国

相关推荐

点赞 评论 收藏
分享
06-13 17:33
门头沟学院 Java
顺序不记了,大致顺序是这样的,有的相同知识点写分开了1.基本数据类型2.基本数据类型和包装类型的区别3.==和equals区别4.ArrayList与LinkedList区别5.hashmap底层原理,put操作时会发生什么6.说出几种树型数据结构7.B树和B+树区别8.jvm加载类机制9.线程池核心参数10.创建线程池的几种方式11.callable与runnable区别12.线程池怎么回收线程13.redis三剑客14.布隆过滤器原理,不要背八股,说说真正使用时遇到了问题没有(我说没有,不知道该怎么回答了)15.堆的内存结构16.自己在写项目时有没有遇见过oom,如何处理,不要背八股,根据真实经验,我说不会17.redis死锁怎么办,watchdog机制如何发现是否锁过期18.如何避免redis红锁19.一个表性别与年龄如何加索引20.自己的项目的QPS怎么测的,有没有真正遇到大数量表21.说一说泛型22.springboot自动装配原理23.springmvc与springboot区别24.aop使用过嘛?动态代理与静态代理区别25.spring循环依赖怎么解决26.你说用过es,es如何分片,怎么存的数据,1000万条数据怎么写入库中27.你说用limit,那么在数据量大之后,如何优化28.rabbitmq如何批次发送,批量读取,答了延迟队列和线程池,都不对29.计网知不知道smtp协议,不知道写了对不对,完全听懵了30.springcloud知道嘛?只是了解反问1.做什么的?短信服务,信息量能到千万级2.对我的建议,基础不错,但是不要只背八股,多去实际开发中理解。面试官人不错,虽然没露脸,但是中间会引导我回答问题,不会的也只是说对我要求没那么高。面完问我在济宁生活有没有困难,最快什么时候到,让人事给我聊薪资了。下午人事打电话,问我27届的会不会跑路,还在想办法如何使我不跑路,不想扣我薪资等。之后我再联系吧,还挺想去的😭,我真不跑路哥😢附一张河科大幽默大专图,科大就是大专罢了
查看30道真题和解析
点赞 评论 收藏
分享
评论
10
19
分享

创作者周榜

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