手机芯片的NPU其实是相对难做的。
因为业务场景最复杂,比如影像类的AI ISP功能,通常以卷积神经网络为骨干,计算密度不会太高,计算更容易卡在IO上。
此外,还有端侧大语言模型和其他transformer模型,包含matmul算子和softmax算子,分别需要tensor(张量)和vector(向量)算力,想要高效率执行就需要更灵活的流水控制,让两种算力充分的并发。而且通常参数量很大,在设计缓存容量和通路时,都需要格外注意。
这两个业务的计算特点,就完全不同,互有矛盾。
以哲库量产过的马里亚纳X芯片为例,设计了两个结构迥异的计算核,分别跑这两类业务,稳妥但是浪费面积和算力。
而另一条道路,就是把NPU做的尽量通用,减少硬件限制,这样的好处是跑任何业务,都能把硬件全部用上。
发布于 北京
