Apple 使用 Rust 进行底层编程
今天,有网友在 Twitter 上发文称:Apple 似乎全力支持 Rust 进行底层编程。
“在非常成功地首次引入 Rust 之后,我们正在将已建立的代码库从 C 迁移到 Rust,并主要在 Rust 中构建新功能。”
并附上了 Apple 软件工程师的职位链接,https://jobs.apple.com/de-de/details/200170723/software-engineer-networking-privacy?team=SFTWR
小编发现其实该职位是 Apple 在8月份就发布的。虽然不是最新消息,但也说明越来越多的主流大公司在采用 Rust 编程语言。
Gitoxide v0.4
Gitoxide 发布 v0.4,该项目是一个用 Rust 实现的 git,但它的目标并不是要完美复制 git 的功能。
安装命令:
curl -LSfs https://raw.githubusercontent.com/Byron/gitoxide/main/ci/install.sh | \
sh -s -- --git Byron/gitoxide --crate gix-max-termion
安装后会有两个二进制命令:gix 和 gixp,其中 gix 是用于访问 git 代码库的命令行接口工具,它是用来优化用户体验,其性能优于 git 规范的实现,进行 clone 项目比直接使用 git 更快。由于一些问题,目前没有支持 Windows 的v0.4版本。
Github 链接,https://github.com/Byron/gitoxide
ultraviolet v0.6
ultraviolet, 是在计算机图形学和游戏相关的线性代数上的一个 crate,在生产率和运行时性能方面都非常快。
就生产率而言,ultraviolet 不使用任何泛型,并且被设计为尽可能简化界面,从而缩短了编译时间并提供了清晰的代码。另外,不使用泛型和 Rust 类型系统中的各种“hack”使得错误清晰明了,易于用户解析和修复。
在运行时性能方面,从一开始就考虑到性能来设计。为此,它为每种类型提供两种单独的类型,一种具有通常的标量 f32 值,另一种为"宽"类型,其为每个值使用 SIMD 向量类型。每种类型的两种都提供本质上等效的操作,而"宽"的类型则提供它们独有的某些功能,为高性能 SIMD 算法设计。此设计的目的是明确的,并且还允许代码充分利用 SIMD,从而为某些工作负载提供大幅性能提升的可能性。
v0.6 的主要功能:
- 支持 256 位宽的 AVX 向量和指令以及 128 位宽的 SSE 指令。
- 在 f64 功能下支持 f64/双精度浮点数,包括 f64x2 和 f64x4 SIMD 加速类型。
v0.6 版本博客文章链接,https://fusha.moe/blog/posts/ultraviolet-0.6/
From 日报小组 洋芋
社区学习交流平台订阅:
评论区
写评论还没有评论