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 语言编写的.

相关推荐
深蓝海拓11 分钟前
使用sam进行零样本、零学习的分割实践
人工智能·深度学习·学习·目标检测·计算机视觉
香橙薄荷心11 分钟前
学一学前沿开发语言之Python
人工智能·python
人类群星闪耀时26 分钟前
利用AI进行系统性能优化:智能运维的新时代
运维·人工智能·性能优化
AZDNA33 分钟前
搭建医疗行业AI知识库:提升信息管理与服务效能
大数据·人工智能
SomeB1oody1 小时前
【Rust自学】6.4. 简单的控制流-if let
开发语言·前端·rust
SmartBrain1 小时前
AI新书推荐:深度学习和大模型原理与实践(清华社)
人工智能·深度学习
是十一月末1 小时前
opencv实现KNN算法识别图片数字
人工智能·python·opencv·算法·k-近邻算法
百家方案1 小时前
「下载」智慧园区及重点区域安全防范解决方案:框架统一规划,建设集成管理平台
大数据·人工智能·安全·智慧园区·数智化园区
Ven%2 小时前
DeepSpeed的json配置讲解:ds_config_zero3.json
人工智能·python·ubuntu·json·aigc
z千鑫2 小时前
【AIGC】AI、大数据、机器学习、深度学习、神经网络之间的关系详解:你必须知道的5个关键点!
人工智能·深度学习·机器学习