Py学习  »  Python

Mojo:比 Python 快 35000 倍!

Python绿色通道 • 1 年前 • 287 次点击  

它可与 Python 无缝衔接,但克服了很多 Python 的缺点。Jeremy Howard 试用后表示:「Mojo 可能是几十年来最大的编程进步。」

对于全球各地开发者来说,Chris Lattner 这个名字绝对不陌生。

他曾是许多大型技术项目的领导者,包括 LLVM 编译器基础结构项目、Clang C 和 C++ 编译器、MLIR 机器学习基础结构等编译器技术,以及为苹果生态系统提供支持的程序设计语言 Swift。此外,Chris Lattner 还为 Google Brain 和 TensorFlow 建立和管理了一系列与 AI 相关的编译器、运行时和编程语言团队。

十多年来,Chris Lattner 的职业履历算是相当丰富,变动也算频繁:

  • 2011-2017 年,任苹果开发部高级总监、架构师

  • 2017.1-2017.6,任特斯拉副总裁,负责自动驾驶

  • 2017.8-2020.1,任谷歌 Google Brain 高级总监

  • 2020.1,加入芯片创业公司 SiFive 负责平台工程

2022 年 1 月,Chris Lattner 正式宣布创业,和 Tim Davis 共同建立了「Modular AI」,希望自下而上重建全球 ML 基础设施。在这家新生的公司中,Chris Lattner 以 CEO 身份领导团队。

其实,Chris Lattner 每一次跳槽的选择都颇受关注。对于「Modular AI」,业界也是寄予厚望。

近日,Chris Lattner 的创业之路有了重要动态。这一次,他官宣的是全新的编程语言「Mojo」。

「Mojo 结合了 Python 的可用性与 C 的性能,释放了 AI 硬件无与伦比的可编程性和 AI 模型的可扩展性」—— 它与 Python 一样易于使用,但具有 C++ 和 Rust 的性能。此外,Mojo 提供了利用整个 Python 库生态系统的能力。

Mojo 的出世,在 AI 领域迅速引起了热议。Jeremy Howard 试用后,在一篇博客文章中表示,Mojo 可能是几十年来最大的编程进步。

「感觉编程被颠覆了。」在 Jeremy Howard 的记忆中,上次有这样的感觉,还是他首次上手 Visual Basic v1.0。而在 Mojo 中编写代码,让他重温了这种「神奇」的感觉。

为什么会有 Mojo?

关于「Mojo」这项工作的背景,Chris Lattner 和 Tim Davis 在博客中进行了详细的说明:

机器学习基础设施已经为数十亿美元的商业提供动力,并且正在迅速增长。但是,它要么由硬件团队为特定的设备集合构建,要么是由工业研究实验室构建,许多系统是不兼容技术的集合。

现有的单体系统很难在其最初的领域目标之外进行扩展或通用,这种情况迫使硬件制造商建立自己的技术栈。造成的结果就是,人工智能部署行业是非常分散的,工具链就有几十个,各自有不同的权衡和限制。更重要的是,这些设计模式也因其可用性、可移植性和难以扩展而减缓了创新的步伐。

不幸的是,我们也看到,构建和部署这些应用程序的技术复杂性仍然太高。部署人工智能仍然是全栈专家的领域,而最前沿的应用只有那些自己建立 ML 技术的最大科技公司的人可以使用。

大一统的设想注定会失败吗?今天人工智能的现实世界的复杂性是否使得它不可能解决这个问题?

Chris Lattner 并不这么认为。他表示,软件行业会经历周期,我们以前也见过并解决过这样的问题:

20 世纪 90 年代的软件世界有过类似于我们今天看到的人工智能的碎片化问题。当时,C 和 C++ 已经建立起了社区,但却被分散在几十个专有编译器中。每一个都有供应商的扩展、粗糙的边缘、奇怪的边角案例和不完整的实现。当时,构建跨平台的软件是如此困难,以至于推动业界出现了一些工具来帮助开发者应对碎片化,使其更容易安装、构建和配置软件(例如 autoconf)。

「GCC」就是其中一员。凭借其对跨平台的支持、良好的性能和稳定性,以及免费性,GCC 在 90 年代获得了巨大的成功。GCC 的成功推动了工具行业的整合浪潮,由此产生的碎片整理使其功能成为事实上的标准,从而带来了一波新的创新。它催化了软件(直接促成了 Linux 等开放源码软件社区的迅速崛起)和硬件(促成了指令集架构和新商业模式的创新)的革命,使前者从零散的 C/C++ 实现中解放出来,使后者不必追赶快速发展的 C/C++ 语言标准。

如今,Mojo 的诞生也承担了这样一份希冀。

当我们创办 Modular 时,我们没有打算建立一种新的编程语言。但是,当我们在建立我们的平台,打算统一世界上的 ML/AI 基础设施时,我们意识到,在整个堆栈中编程太复杂了。另外,我们用手写了很多 MLIR,但并不愉快。

我们想要的是一个创新的、可扩展的编程模型,可以针对加速器和其他机器学习中普遍存在的异构系统。这意味着一种具有强大的编译时元编程的编程语言,整合自适应编译技术,在整个编译流程中进行缓存,以及其他现有语言不支持的东西。

尽管加速器很重要,但最普遍的、有时被忽视的加速器之一是主机 CPU。今天,CPU 有很多类似张量核心的加速器块和其他 AI 加速单元,但它们也是专门加速器无法处理的运算的后备力量,如数据加载、前后处理以及与国外系统的集成。因此,很明显,我们不能用一种只与特定处理器一起工作的「加速器语言」来提升人工智能。应用 AI 系统需要解决所有这些问题,我们认为没有理由不通过一种语言来完成。

在这种情况下,Mojo 诞生了。

Mojo:比 Python 快 35000 倍的编程语言

在编程语言领域,Python 可以说是非常受欢迎了。如今,这个领域又迎来一位新的竞争者:Mojo。

Mojo 是一门新的编程语言,其将 Python 的易用性和 C 的性能结合起来,弥合了研究和生产之间的差距。使用 Mojo,用户可以编写比 C 语言更快的可移植代码,并与 Python 生态系统无缝互操作,其目标是成为 AI 研究和生产的理想选择。

我们先看一个示例。下图展示的是 Mojo 与 Python 无缝互操作:

Mojo 语言具有以下特点:

首先是可用性和可编程性,只用 Mojo 一种语言就能编写所有东西。例如可以编写 Python、大量低级 AI 硬件程序,而不需要 C++ 或 CUDA。

第二是性能,Mojo 解锁了 Python 性能。利用最先进的编译器和异构运行时,Mojo 能够充分利用硬件的全部功能,包括多核、向量单元和加速器单元。在任务不复杂的情况下实现与 C++ 和 CUDA 相当的性能。

并行化:Mojo 利用 MLIR,使 Mojo 开发人员能够利用向量、线程和 AI 硬件单元。

此外,根据测试,Mojo 比 Python 快 35000 倍。

Mojo 第三个特点是互操作性,可以访问整个 Python 生态系统,如可以访问 Numpy、Matplotlib 以及用户自定义代码:

第四个特点是可扩展性。使用预处理和后处理操作就能轻松扩展模型,或者用自定义操作替换其他操作。此外,Mojo 还可以利用核融合、图形重写、形状函数等。

模型的可扩展性,Mojo 可以升级模型中的现有操作。

Modular AI 表示,Mojo 仍在开发中,开发者现在可以在 Modular AI 基于 JupyterHub 的 Playground 中试用,用户只需通读教程便可编写自己的 Mojo 代码。

试用地址:https://docs.modular.com/mojo/get-started.html

 参考链接:

  • https://www.modular.com/blog/the-future-of-ai-depends-on-modularity

  • https://www.modular.com/mojo

  • https://www.fast.ai/posts/2023-05-03-mojo-launch.html

转自:机器之心

最后推荐一下我的ChatGPT星球

GPT 的想象力空间还有多大,我们继续拭目以待。


ChatGPT 的风口正到来!作为我们普通人,为了跟上时代,更应该马上行动,真正了解并熟练使用 ChatGPT。未来围绕着 ChatGPT 将会涌现出无数多的机会。我们一定要在这个领域内做点事情。如果在这个新的技术浪潮中,抓住一点点小的机会,那给我们人生带来的改变必然是巨大的! 

我相信有很多人没有 ChatGPT 的账号,或许连注册都不太会。跟着我们一起学习,这些方法我们都会手把手交给你!

目前我们星球 200 多人了,球友们都成功注册了,目前知道的可以通过一些特殊的邮箱和成功注册到 GPT 的账号!你一个人单打独斗玩 GPT 会遇到很多问题,费时费力,需要抱团取暖,才能走的更远!

如果你想快速上手、熟练应用 ChatGPT,获取第一首关于 ChatGPT 的资料,利用 ChatGPT 提升工作效率,获取 ChatGPT 变现机会等。请务必加入知识星球:ChatGPT 研究院。今天加入星球的小伙伴,直接送 ChatGPT 独立账户(数量有限)


所以如果你真的感兴趣,一定建议这个阶段加入,我们特别推荐,加入知识星球72小时内如果不满意,可以无理由退出,然后款项原路返回,你也没损失.


入球福利:


考虑到很多小伙伴搞不定 ChatGPT 账号的问题,我们决定,凡是今天加入 ChatPGT  研究院的小伙伴,我们都会直接送一个 ChatGPT 独立账户。


这个星球能够为你提供什么服务呢?


1、ChatGPT 基础用法:账号注册、使用教程、基本玩法、提问技巧。

2、ChatGPT 前沿资讯、第一首资料、开源项目。

3、交流共享 ChatGPT 的各种信息,资源互换,答疑关于 ChatGPT 的问题。

4、分享如何利用 ChatGPT 提升工作效率,分享变现机会。

5、凡是今天加入星球都有一项重磅福利:免费获得 ChatGPT 独立账号一个。

我们第一期的定价是 198 元一年,这两天星球在试运营阶段,我们给出了加入的最低价 158,后面随着星球人数的增长,星球费用也会随之增长(破 1000 人涨价 10 元)。建议大家尽早以便宜的价格加入哦!


感兴趣的朋友们,欢迎扫码加入本星球:


机不可失失不再来!希望大家能在 2023 年抓住 ChatGPT 的风口,持续进步!


最后,无论是否加入,点击下方名片回复“chatgpt”送您一套ChatGPT入门资料


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/154895
 
287 次点击