Rust - 为什么每个人都在谈论它?

"AGI将使用Rust而非Python进行构建" --- Elon Musk

最近, 这条推文引起了我的注意.

根据Elon Musk的说法, AGI 将使用 Rust 而不是 Python 编写, 而 Python 是当前技术生态系统中构建 ML 模型最常用的编程语言.

Rust有什么优点?

Rust 已连续多年成为Stack Overflow 最受欢迎的语言.

大多数使用 Rust 的开发人员都非常喜欢它, 超过 80% 使用过 Rust 的开发人员希望明年继续使用它.

Rust也越来越受到以编写安全/稳定, 高并发/可扩展应用程序为目标的新开发人员的欢迎.

这里是 Rust 如此出色的 6 个原因!

1. 高速与高性能

Rust 坚信不用的东西不用花钱买的原则.

它提供了高级抽象, 可以编译成高效的机器代码, 就像在 C/C++ 中手工编写底层代码一样.

这些高级功能的运行时开销极小, 甚至没有.

如果不使用特定的功能/抽象, 编译后的代码就不会承担其潜在的开销.

2. 没有垃圾回收器的内存安全

许多语言(如 Java/C#)都使用垃圾回收器来确保内存安全.

垃圾回收器通过定期检查内存中哪些对象仍可访问, 哪些不可访问, 自动释放不再使用的内存.

垃圾回收器的一个大问题是, 它可能会导致程序的执行出现不可预测的停顿. 这对于实时系统来说是个问题, 因为可预测的时间是至关重要的.

这与 Rust 的工作方式不同.

Rust 不需要垃圾回收器也能确保内存安全. 这是通过其所有权借用系统实现的.

这意味着运行时不会出现垃圾回收暂停.

内存在编译时得到可预测的管理, 因此非常适合实时和性能关键型应用程序.

3. 使用先进的优化良好的编译器

Rust 使用LLVM作为其后台的核心组件.

LLVM是一个功能强大的模块化编译器技术集合, 可优化 Rust 代码, 使其运行速度更快, 并能在各种 CPU 架构上运行.

4. 避免数据抢占

数据抢占是指两个或多个线程可以同时访问同一内存位置.

在编写并发软件应用程序时, 这绝对是一场灾难.

Rust 结合使用了类型系统, 所有权模型和借用规则, 以确保多线程 Rust 程序不会出现数据抢占.

5. Cargo包管理器

C/C++等语言缺乏标准的包管理器.

这与 Rust 不同, 在 Rust 中,Cargo集构建工具, 软件包管理器, 测试运行器和文档生成器于一身.

这使得使用依赖关系编写 Rust 应用程序变得简单而流水线化.

6. 直接访问硬件

Rust 允许开发人员直接访问硬件和内存.

这对于系统编程和编写嵌入式应用程序至关重要.

Rust 支持内联汇编特定于平台的板条箱(库), 它们提供了硬件接口.

Rust 还可以调用 C 函数, 并可使用Foreign Function Interface从 C 代码中调用.

这非常有用, 因为许多硬件交互库都是用 C 语言编写的.

相关推荐
zaim134 分钟前
计算机的错误计算(一百一十四)
java·c++·python·rust·go·c·多项式
网络研究院35 分钟前
如何安全地大规模部署 GenAI 应用程序
网络·人工智能·安全·ai·部署·观点
凭栏落花侧39 分钟前
决策树:简单易懂的预测模型
人工智能·算法·决策树·机器学习·信息可视化·数据挖掘·数据分析
xiandong204 小时前
240929-CGAN条件生成对抗网络
图像处理·人工智能·深度学习·神经网络·生成对抗网络·计算机视觉
innutritious5 小时前
车辆重识别(2020NIPS去噪扩散概率模型)论文阅读2024/9/27
人工智能·深度学习·计算机视觉
橙子小哥的代码世界5 小时前
【深度学习】05-RNN循环神经网络-02- RNN循环神经网络的发展历史与演化趋势/LSTM/GRU/Transformer
人工智能·pytorch·rnn·深度学习·神经网络·lstm·transformer
985小水博一枚呀7 小时前
【深度学习基础模型】神经图灵机(Neural Turing Machines, NTM)详细理解并附实现代码。
人工智能·python·rnn·深度学习·lstm·ntm
SEU-WYL8 小时前
基于深度学习的任务序列中的快速适应
人工智能·深度学习
OCR_wintone4218 小时前
中安未来 OCR—— 开启高效驾驶证识别新时代
人工智能·汽车·ocr
matlabgoodboy8 小时前
“图像识别技术:重塑生活与工作的未来”
大数据·人工智能·生活