厌倦了C++,CS&ML博士用Rust重写Python扩展,还总结了9条规则

选自medium.com

作者: Carl M. Kadie

机器之心编译

编辑:杜伟、陈萍

效果好不好,试一试就知道了。

Python 是数据科学家最流行的编程语言之一,其内部集成了高质量分析库,包括 NumPy、SciPy、自然语言工具包等,这些库中的许多都是用 C 和 C++ 实现的。

然而,C 和 C++ 兼容性差,且本身不提供线程安全。有研究者开始转向 Rust,重写 C++ 扩展。

拥有 CS 与机器学习博士学位的 Carl M. Kadie,通过更新 Python 中生物信息学软件包 Bed-Reader,为研究者带来了在 Rust 中编写 Python 扩展的九个规则。以下是原博客的主要内容。

一年前,我厌倦了我们软件包 Bed-Reader 的 C++ 扩展,我用 Rust 重写了它,令人高兴的是,得到的新扩展和 C/C++ 一样快,但具有更好的兼容性和安全性。一路走来,我学会了这九条规则,可以帮助你创建更好的扩展代码,这 九条规则 包括:

  1. 创建一个包含 Rust 和 Python 项目的单独存储库

  2. 使用 maturin & PyO3 在 Rust 中创建 Python-callable translator 函数

  3. 让 Rust translator 函数调用 nice Rust 函数

  4. 在 Python 中预分配内存

  5. 将 nice Rust 错误

Original: https://blog.csdn.net/pythondby/article/details/122306675
Author: IT孔乙己
Title: 厌倦了C++,CS&ML博士用Rust重写Python扩展,还总结了9条规则

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/696416/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球