天下AI厂商苦CUDA久矣。不过,还真有人打算重新整合AI生态系统,给这堵“铁墙”凿出一道裂缝来。
两个熟悉TensorFlow和PyTorch的人站了出来,成立公司打算来一个“世界最快AI执行引擎”,提供兼容所有模型的解决方案。
这家公司叫Modular,由Chris Lattner和Tim Davis创立于2022年1月,是一家创建开发和优化人工智能系统平台的初创公司。
最新一轮1亿美元融资发生在2023年8月24日,由General Catalyst领投,SV Angel、Google Ventures、Greylock 和 Factory 参投。截至目前,公司共融资2轮,总金额1.3亿美元。据The Information报道,Modular融后估值约为6亿美元。
Lattner表示,这笔资金将用于改进核心产品,加强硬件支持和 Modular编程语言的扩展。
11月7日,Mojo v0.5.0发布,这个用emoji“火”做logo的新语言,定下“所有AI开发者适用”的标签。
公司目前有70余名员工,规模不大却人才济济。上周,英伟达前工程总监Mostafa Hagog——开发了cuDNN 和CUTLASS等深度学习库的大佬刚刚入职。
【01】
性能达Python的6.8万倍
Modular在讲述远景的文章中,突出了两个问题:
Isn’t Big Tech going to solve the world’s AI problem for us?
(大型科技公司能否解决世界的人工智能问题?)
If not Big Tech, who will solve this for the world?
(如果不是,那谁会为世界解决这个问题?)
目前,从AIGC产业链条来看,上游链条的AI基础设施和服务器供应商、底层的AI芯片供应商,中游的算法模型、基础框架公司随着全球AI热潮遍地开花。各个芯片巨头提供不同的GPU,对应自家工具库,训练自己的编程模型。
Modular工程师补充:“TensorFlow和PyTorch这样的人工智能框架有一个用于模型开发的Python API,背后其实是C++语言调用像CUDA这样的硬件内核,它们区分了模型系统和硬件代码,工程师很难跨越层级。各个硬件公司的GPU、CPU、TPU又更新不断。实际上,AI生态系统正在变得支离破碎。”
对此,Modular想做到两件事:简化AI基础设施,兼容模型降低成本。Modular在5月的发布会,证实他们正在完成构想。
他们开发了一种面向AI开发者的新型编程语言Mojo,与Python、C、C++和CUDA开发语言进行了集成,开发人员用一种语言就能编写所有相关开发内容。它突破Python性能极限,在更高性能和特殊硬件上表现理想,发挥CPU潜能并良好支持GPU和ASIC等外部加速器,提供与C++和CUDA相当的卓越性能。
这种语言能对接完整Python生态系统,利用高性能库,例如开发者能将Numpy和Mojo代码无缝混合。“Mojo不止于此,您可以深入到实现low-level numeric algorithms(低级数值算法),无需任何开销。”
此外,Mojo能升级AI的工作负载。Modular团队最新公布表示,Mojo能一举将性能提升达Python的6.8万倍。
Modular还提供一种AI开发引擎。Lattner称,它让开发者依赖单一执行引擎,节省算力成本,减少硬件延迟,支持无缝模型迁移。
网友评论:“这看起来像游戏规则的改变者。”
【02】
技术大拿和成功创业者的互补组合
Modular的产品在推广上还需要经过众多开发者的考验。Python是各个大厂招聘工程师要求的主流语言,为什么要费劲去学习一门新的编程语言Mojo呢?
由于为Modular背书的两个创始人,一个是编译界的“迈克尔·乔丹”Chris Lattner,一个是连续创业者Tim Davis。所以,在开发者眼里:值得一试。
Modular 联合创始人 Chris Lattner 和 Tim Davis
Chris Lattner是LLVM(苹果官方支持的编译器)、Swift(为苹果生态系统提供支持的程序设计语言)之父。他在22岁时将还是硕士论文项目的LLVM发展成为开源社区,领导过Apple、Tesla、Google、SiFive和Modular的项目,开发了Swift、LLVM、Clang、MLIR、CIRCT、TPU和Mojo。
2005年6月,从伊利诺伊大学博士毕业后,Lattner因开发LLVM已经小有名气,进入了苹果公司做编译器项目。他将LLVM运行时的编译架在OpenGL栈上。Lattner回忆,当时一位经验丰富的同事劝说他:“GCC(苹果当时的编译器)已经存在20年的时间,没有什么能取代,你在浪费时间。”
事实上,苹果招揽Lattner是一个尝试。苹果苦于GCC庞大而笨重的系统,想推出64位Mac,从 PowerPC处理器转向英特尔,LLVM是图形领域即时编译器的解决方案。几年后,2009年苹果发布的Mac OS X10.6 Snow Leopard完全得益于LLVM技术,这一版本的雪豹系统有OpenCL图形处理等新特性。苹果结合Lattner开发的前端Clang,以求完全替代GCC。在苹果,LLVM取得了快速发展。
2010年,Lattner获得Programming Languages Software Award(ACM颁发的程序设计语言软件奖,编程语言界的“奥斯卡”)。当年7月,Lattner开始着手Swift编程语言的设计,该项目可用来为iOS、Mac等产品开发APP,一度是苹果开发者工具部门的重点。
2017年,他被谷歌吸引去帮助开发TPU,从事TensorFlow和机器学习IR及其他编译器相关工作,而且还开源了Swift for TensorFlow,此举直接将人工智能和深度学习的开发者好感拉满。
在谷歌,拥有传奇经历的Lattner遇到了Modular的另一位创始人——半路出家学习编程还当上谷歌高级产品经理的Tim Davis。
Tim曾与许多PM和大型工程团队一起在 Google Brain中开发TensorFlow。他是谷歌机器学习基础设施团队的产品负责人,负责Google ML API(Tensorflow/JAX),编译器(XLA & MLIR)和服务器(CPU/TPU/GPU)以及运行在设备上ML运行时基础设施的产品。
Tim在自我介绍时直言:“我本质上是一名企业家”。
他在2013年创立的Fluc(食品配送服务),相当于在硅谷做起了“美食外卖”。Tim表示,他使Fluc从天使投资人和VC处筹集了资金,并成长为年销售额超过1000万美元的公司。在与谷歌完成Fluc收购流程后,Tim加入了其团队,并在2017年前往斯坦福大学的SCPD(专业发展中心)学习了计算机,2020年成为Google Brain和TensorFlow的高级产品经理。
学一年编程就能在谷歌直接晋升算得上是“开挂”。但实际上,Tim在编码方面的经验并不仅限于斯坦福大学的一年学习。孩童时期,一台Commodore 64C是他接触编程BASIC语言的开始,在高中和大学期间在一直学习 Javascript和VBA,并决定使用Python进行多数编程,创业时他还为自己的公司编写了代码。
Modular成立后,Lattner非常清楚公司要解决的是一个抽象的技术问题。初创公司没有大厂光环,要从大型科技公司聘请高技术专家,筹集资金运维相当困难。Tim是一个与他非常互补的人,也让他感受到团队各司其职的魅力。Tim主要负责产品和业务工作,热情地和不同的公司进行交流。Lattner会协助团队招聘,亲自帮助构建初始工程。
当前,Modular召集了来自 PyTorch、TVM、英特尔 OpenVINO 、Onyx Runtime的成员,Lattner称他们的员工基本接触过业界所有编译器。
【03】
绕过CUDA重建AI生态系统
“我们看到了AI领域客户的痛点,他们构建和部署的很多东西都是一团乱麻”。
Tim和Lattner认为,人工智能的发展受阻于基础设施碎片化,集成使用太过昂贵,他们创立Modular的愿景便是消除大规模构建和维护人工智能系统的复杂性。
AI大模型训练、存储、推理需高昂费用,根据不同模型和数据集大小,训练费用通常占总费用的80%。
目前各大公司训练的大模型需要解决大量参数、结构复杂、反复计算、多模态等问题,依靠英伟达的GPU+NVlink+CUDA生态便能解决全部需求。要进入AI算力市场,英伟达的CUDA几乎是绕不开的一堵高墙。老黄从市场赚了多少钱,完全可以从英伟达1万亿美元的市值看出来。据报道,英伟达性能最好的AI芯片已经售罄(直到2024年)。
Modular的愿景就是在绕过英伟达的CUDA重建生态系统。
在当前情形下,Modular能否实现弯道超车?
Modular降低复杂性的目标直击要害。Lattner在Latent Space播客中提到,构建TensorFlow系统的人没有解决软硬件边界问题。一旦新硬件推出,都会让计算复杂度不断上升,开发人员必须重写上千个 Kernel(GPU上由CUDA运行的函数),进入硬件的门槛会越来越高。许多人工智能系统面临挑战:找不到能编写 Kernel的专家。
计算复杂性之外,芯片短缺也是障碍之一。Lattner在Techcrunch的采访中指出:“人工智能的需求正在迅速接近可持续性的极限——这使得任何减少计算需求的技术都变得可取。”事实如此,今年下半年,微软、OpenAI等公司都表示正在采取必要措施缓解用于AI任务的GPU短缺问题。
目前,从Modular的博客文章可以看出,公司的产品加速针对的都是CPU而非GPU。“现在的很多推理是在CPU上完成的,我们决定从CPU开始先改进架构,CPU容易使用,而且不会买不到。当然我们也在弄GPU,很快就会推出。”在Lattner的计划中,基于第一性原理从底层开始先让CPU跑起来,Modular要构建通用的编译器,走通用到垂直的路更加容易。
据华尔街日报报道,现如今的人工智能模型已经比旧的大10倍到100倍,高通技术公司高管Ziad Asghar称,用例数量和用户数量也呈爆炸式增长。有限的计算能力、复杂的基础设施、巨额的硬件投资、软硬件系统的孤岛等情况客观存在,英伟达竖起的城墙牢不可破。
时间仿佛又回到了2005年,经验丰富的工程师问新来的Lattner,现有的系统已经很稳定,为什么要浪费时间去从头做新的?
Lattner的回答是:“这很有趣,不是吗?”
撰文:李霜霜
出处:微信公众号 @快鲤鱼