原粒半导体 - AI 高性能算子工程师 - 技术面

1. 介绍项目。巴拉巴拉...

2. 说说 Reduction 算子调优实现策略;Conv 呢,是滑窗实现的还是怎么;其它的算子知道吗,比如 Softmax,Droupot。

- Reduction。巴拉巴拉...

- Conv 按滑窗策略实现。还有 img2col 方式,不过我没看过源码。

- Gemm、Transpose,其它不了解,只知道有通用现成的解决方案,没时间学。

3. C++ 重载;单例模式。

- C++ 重载是与 C 相区别的为人称道的特性之一。上层根据传输参数不同执行不同版本;底层通过函数联合签名定义为不一样的 函数名,实际为不同函数。

- 私有化或 delete 构造函数,提供静态共有接口。每次调用静态接口成员函数都检测一下类是否已经实例化,否则创建并返回实 例对象,是则直接返回已有实例对象。

4. 问会什么语言。答 C++/CUDA,Python/matlab 会调。给两个例子进行说明。

class Parant:
    x = 1

class Child1(Parant):
    pass
class Child2(Parant):
    pass

print(Parant.x, Child1.x, Child2.x)
Child1.x =2
print(Parant.x, Child1.x, Child2.x)
Parant.x = 3
print(Parant.x, Child1.x, Child2.x)
## 面试官:和 C++ 类似,print 里面的调用会实例化对象。
## 我:沉默...勉强答对。

a = a^b
b = b^a
a = a^b
// 我:交换 a 和 b。从数学上是环上的运算;从计算机上是按位异或。

5.本科专业,硕士研究方向。"你这本硕都是搞算法"。

6.反问。

- 公司是做多模态 AI 的,说是特点为芯片可插拔组装,我是不是可以理解为拼积木?我可以理解为给予客户更高的自由度,和降 低升级换代成本吗?

- 不同版本的芯片也是可以插拔的吗?会不会有木桶效应存在?(说是基于统一接口协议,类似于 PCIe x16; 高速互联,类似于 N vlink)。

- 总共几面。“一面,接下来就是 HR 面了。”

总共面了 35 分钟。

******************************************

9 月 20日后续来了:技术面挂了,跟我的感觉一致。

" HR 打电话说当时面试官挺犹豫的,最后给我挂了。最近又跟她说了说,问问我能不能去实习,面试官想先带带我。"

拒绝。

一方面是我确实是不能去实习;另一方面就是 HR 的话都是鬼话,一个字都不能信。

这操作也挺离谱的,白激动了。

*****************************************

2023/10/25 补更

首先介绍深鉴科技科技。由清华大学孵化,后被 AMD 赛灵思收购。

原粒半导体则是由原成员分化出来再成立的一家企业,同样的企业还有一家叫做[无问苍穹](https://mp.weixin.qq.com/s/0eUBGAQ1-9uGfb5IMegOSQ)。

然后重点信息来了。由内部消息得知,无问苍穹计划发展起来后被计划卖给其它企业(是不是一样的套路?),入职可能会给分红激励,但多少不知。

同样推测,原粒半导体可能也走这个路子,意向入职的话请考虑或问清楚。若真是这样,那么你必须要考虑的是:打算拿多点钱然后再找工作 or 想找个稳定的跳板。

全部评论
今天去原粒半导体面试,面试官是女的,问我pytorch里面的NCHW的N是什么意思,我惊呆了。
1 回复 分享
发布于 02-26 20:31 北京
大佬私聊一下啊
点赞 回复 分享
发布于 03-20 13:50 北京
这小厂去了会不会把简历搞花😳
点赞 回复 分享
发布于 2024-12-24 18:57 北京
有推荐的Github总结吗 高性能八股
点赞 回复 分享
发布于 2023-12-20 11:59 浙江
大佬的八股是自己整理的吗?
点赞 回复 分享
发布于 2023-10-25 09:51 广东
“你这本硕都是搞算法”,面试官是什么意思啊?,怎么感觉怪怪的
点赞 回复 分享
发布于 2023-10-12 15:37 湖南
Python的题跟我一样,我还给答错了,对 Python 的类太不熟了,以为还会在类间保持一个实例
点赞 回复 分享
发布于 2023-09-07 23:07 湖北

相关推荐

1. 项目背景:针对端侧设备(树莓派、昇腾、RK系列)的低资源环境,设计一套轻量化分布式框架,实现大模型(LLM/ASR/TTS等)的高效协同推理,解决端侧设备算力分散、通信受限、动态扩展难等问题。技术栈:Linux、C++、ZMQ、设计模式、分布式架构、主从Reactor模式、docker、cmake、shell3. 项目设计方案1. 双模式部署设计:设计Docker与裸机双部署方案,通过自动化镜像部署和容器操作脚本,环境部署效率提升70%2. 底层混合通信组件:- 设计基于ZMQ的多模式通信中间件,通过工厂模式统一创建PUB/SUB、PUSH/PULL、RPC等6种通信策略,结合策略模式实现动态通信方式切换,降低业务层网络代码复杂度70%;- 构建高可用RPC框架,支持方法动态注册与服务发现,通过设置双端超时控制与自动重连机制提高通信可靠性;- 设计ZMQ消息封装模块,开发轻量级序列化协议,采用长度前缀+紧凑存储结构设计实现多参数打包/解包3. channel模块设计:- 统一管理底层多模式通信中间件的ZMQ连接,支持动态URL绑定,信道注册- 设计观察者模式和闭包方案,实现网络层与业务逻辑的解耦- 通过动态work_id路由和连接池技术,实现多unit单元通信隔离- JSON协议设计,用于节点间/外部用户消息交互4. 分布式任务调度框架设计-与业务节点关系(继承)- 采用 Reactor模式,设计异步事件驱动的任务调度框架,通过eventpp实现毫秒级事件响应- 动态RPC服务注册,支持跨业务节点 setup/exit 等指令的远程调用- 统一管理 work_id-channel 连接池,对上层业务节点屏蔽底层通信复杂性- 提供标准化setup等虚函数接口,支持业务节点自定义任务处理逻辑5. unit-manager模块- 设计RPC服务注册,实现信道自动注册/释放,SQL处理;并解析 action 实现动态分发请求- 实现轻量化内存kv缓存数据库 存储 unit 元信息;并提供线程安全SQL查询接口,供节点动态通信- 设计多协议网关,实现TCP/ZMQ协议转换,支持外部用户-内部业务节点通信交互- 设计主从多Reactor TCP通信框架,实现压测10000+TCP并发连接6. Node业务层接口设计- TASK任务管理:实现单任务实例管理,模型加载/推理/流式输出回调机制等- 服务层控制:自定义实现setup等接口,对业务节点进行生命周期管理,实现节点间相互订阅
简历中的项目经历要怎么写
点赞 评论 收藏
分享
评论
7
28
分享

创作者周榜

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