0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

比python更好的语言?声称比Python快68000倍 Mojo编程语言开放下载

OSC开源社区 来源:OSC开源社区 2023-09-12 18:09 次阅读

Mojo 是 Modular AI 公司开发的新编程语言,它结合了 Python 的易用性以及 C 语言的可移植性和性能,目标是使其成为 AI 研究和生产的理想选择。 Modular AI 是 Chris Lattner 和 Tim Davis 于 2022 年创立的公司,目标是自下而上重建全球 ML 基础设施。在这家新生的创业公司中,Chris Lattner 以 CEO 身份领导团队

Chris Lattner 毕业于波特兰大学的计算机科学系,具有创建和领导多个知名大型项目的经验,其中包括 LLVM、Clang、MLIR 和 CIRCT 等编译器基础设施项目,他还带头创建了 Swift 编程语言。

从 2005 年 7 月到 2017 年 1 月间,他曾领导苹果的开发者工具部门,随后,曾短暂领导过特斯拉自动驾驶团队。2017 年 8 月,Chris Lattner 在 Google Brain 团队领导了 TensorFlow 基础设施工作,包括一系列硬件支持(CPUGPU、TPU),底层运行时和编程语言工作。
今年 5 月,Modular AI 向外界公布了 Mojo。据称自 Mojo 亮相以来,超过 12 万开发者注册使用了 Mojo Playground,另外还有 19 万开发者参与 Discord 与 GitHub 讨论。Modular AI 公司更是在上月底宣布融资 1 亿美元
9 月 7 日,Modular AI宣布Mojo正式开放下载,这意味着开发者可以在本地使用 Mojo 进行开发 ——目前仅支持 Linux,官方表示会尽快推出 Mac 和 Windows 版本。根据公告,官方提供了编译器和 Mojo SDK。其中 Mojo SDK 还包括全套开发者和 IDE 工具 ,用于轻松构建和迭代 Mojo 应用程序。759c81b0-4e37-11ee-a25d-92fbcf53809c.png下面是 Mojo SDK 包含的工具概览。75bc24d4-4e37-11ee-a25d-92fbcf53809c.png
  • mojo 驱动:提供 shell 用于 read-eval-print-loop 或 REPL 的 shell,支持构建和运行 Mojo 程序、打包 Mojo 模块(包括对 扩展的支持)、生成文档和格式化代码‍

  • VS Code 扩展:支持多项生产力功能,例如语法高亮显示、自动补全代码等 ‍

  • Jupyter kernel:支持构建和运行 Mojo notebooks,包括 Python 代码‍

  • 调试工具(即将推出):进入并检查正在运行的 Mojo 程序,甚至包括混合 C++ 和 Mojo 代码的框架

Mojo 刚发布时,官方介绍称它能够利用 MLIR,使 Mojo 开发者能够利用向量、线程和 AI 硬件单元。根据测试,Mojo 比 Python 快 35000 倍。75fb1c3e-4e37-11ee-a25d-92fbcf53809c.png最近开发团队刷新了自己的成绩,他们表示Mojo 将动态和静态语言的优点结合在一起,性能可达到目前 Python 的 68000 倍。 7658bbe6-4e37-11ee-a25d-92fbcf53809c.png▲ 好一个 Python++这很难评,各位自行下载来玩一玩吧:https://developer.modular.com/示例代码跟 Python 一样,可以通过运行 mojo 命令在 REPL 中进行编程。下面是使用 Mojo 计算欧几里得距离的代码:
$ mojo
Welcome to Mojo! 
Expressions are delimited by a blank line.
Type `:mojo help` for further assistance.
1> %%python
2. import numpy as np
3. n = 10000000
4. anp = np.random.rand(n)
5. bnp = np.random.rand(n)

6> from tensor import Tensor
7. let n: Int = 10000000
8. var a = Tensor[DType.float64](n)
9. var b = Tensor[DType.float64](n)
10. for i in range(n):
11.    a[i] = anp[i].to_float64()
12.    b[i] = bnp[i].to_float64()

13> from math import sqrt
14. def mojo_naive_dist(a: Tensor[DType.float64], b: Tensor[DType.float64]) -> Float64:
15.    var s: Float64 = 0.0
16.    n = a.num_elements()
17.    for i in range(n):
18.       dist = a[i] - b[i]
19.       s += dist*dist
20.    return sqrt(s)

23> fn mojo_fn_dist(a: Tensor[DType.float64], b: Tensor[DType.float64]) -> Float64:
24.    var s: Float64 = 0.0
25.    let n = a.num_elements()
26.    for i in range(n):
27.       let dist = a[i] - b[i]
28.       s += dist*dist
29.    return sqrt(s)
30.
31> let naive_dist = mojo_naive_dist(a, b)
32. let fn_dist = mojo_fn_dist(a, b)
33. print(fn_dist)
34. 
1290.8521425092235
35. print(naive_dist)
36. 
1290.8521425092235
此外,Mojo 支持构建静态编译的可执行文件,开发者可以在没有任何依赖项的情况下进行部署。例如直接从官方的示例 repo 中编译并运行 hello. 程序,代码如下所示:
$ mojo build hello.

$ ./hello
Hello Mojo !
9
6
3

$ ls -lGtranh hello*
-rw-r--r-- 1 0   817 Sep  3 23:59 hello.


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    11304

    浏览量

    209521
  • C语言
    +关注

    关注

    180

    文章

    7604

    浏览量

    136841
  • AI
    AI
    +关注

    关注

    87

    文章

    30896

    浏览量

    269108
  • 编程语言
    +关注

    关注

    10

    文章

    1945

    浏览量

    34740
  • python
    +关注

    关注

    56

    文章

    4797

    浏览量

    84690

原文标题:Mojo编程语言开放下载,声称比Python快68000倍

文章出处:【微信号:OSC开源社区,微信公众号:OSC开源社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Triton编译器支持的编程语言

    Triton编译器支持的编程语言主要包括以下几种: 一、主要编程语言 Python :Triton编译器通过
    的头像 发表于 12-24 17:33 323次阅读

    对比Python与Java编程语言

    Python与Java都是目前非常流行的编程语言,它们各有其独特的优势和适用场景。以下是对这两种编程语言的对比: 一、语法和易用性
    的头像 发表于 11-15 09:31 316次阅读

    NPU支持的编程语言有哪些

    NPU(Neural Processing Unit)是一种专门为深度学习和人工智能应用设计的处理器。NPU支持的编程语言通常与它所集成的平台或框架紧密相关。以下是一些常见的编程语言
    的头像 发表于 11-15 09:21 661次阅读

    Python编程:处理网络请求的代理技术

    在网络编程中,代理技术扮演着至关重要的角色,尤其在处理网络请求时。通过代理服务器,我们可以实现请求的转发、缓存、负载均衡以及安全控制等功能。Python作为一种功能强大的编程语言,为提
    的头像 发表于 11-12 07:23 195次阅读

    Orin芯片的编程语言支持

    语言支持 Orin芯片支持多种编程语言,以满足不同开发者的需求。其中,C/C++和Python是两种广泛应用的编程
    的头像 发表于 10-27 16:45 300次阅读

    labview是什么编程语言写的

    的一种图形化编程语言。它并不是用传统的文本编程语言(如C++、Python等)编写的,而是采用了一种独特的图形化
    的头像 发表于 09-04 16:00 921次阅读

    pytorch和python的关系是什么

    在当今的人工智能领域,Python已经成为了最受欢迎的编程语言之一。Python的易学易用、丰富的库和框架以及强大的社区支持,使其成为了数据科学、机器学习和深度学习等领域的首选
    的头像 发表于 08-01 15:27 1967次阅读

    Python建模算法与应用

    Python作为一种功能强大、免费、开源且面向对象的编程语言,在科学计算、数学建模、数据分析等领域展现出了卓越的性能。其简洁的语法、对动态输入的支持以及解释性语言的本质,使得
    的头像 发表于 07-24 10:41 554次阅读

    Python语言基础2

    电子发烧友网站提供《Python语言基础2.rar》资料免费下载
    发表于 07-17 17:23 1次下载

    opencv-python和opencv一样吗

    的。以下是对OpenCV和OpenCV-Python的比较: 编程语言: OpenCV是一个跨平台的库,支持多种编程语言,如C++、Java
    的头像 发表于 07-16 10:38 1195次阅读

    使用Python进行自然语言处理

    在探讨使用Python进行自然语言处理(NLP)的广阔领域时,我们首先需要理解NLP的基本概念、其重要性、Python在NLP中的优势,以及如何通过Python实现一些基础的NLP任务
    的头像 发表于 07-04 14:40 456次阅读

    华为云正式发布CodeArts IDE for Python

    近日,华为云正式发布CodeArts IDE for Python,这是一款内置华为自主创新的Python语言服务,提供智能编程、灵活调试能力的可扩展桌面开发工具,为华为云开发者提供卓
    的头像 发表于 05-08 14:58 499次阅读

    教你一招,简化仪器Python编程控制!

    许多行业的工程师都使用自动化来扩展其测试仪器的功能,而大多是选择免费的编程语言——Python来完成。作为适用于自动化的主要编程语言
    的头像 发表于 03-15 14:31 2390次阅读
    教你一招,简化仪器<b class='flag-5'>Python</b><b class='flag-5'>编程</b>控制!

    四种编程语言之间的区别和联系

    编程语言是一种人与计算机之间进行交流的方式,不同的编程语言有着不同的特点和用途。本文将对四种常见的编程
    的头像 发表于 02-05 14:16 1579次阅读

    c语言,c++,java,python区别

    C语言、C++、Java和Python是四种常见的编程语言,各有优点和特点。 C语言: C语言
    的头像 发表于 02-05 14:11 2393次阅读