12 个版本
使用旧的 Rust 2015
0.1.10 | 2018年4月4日 |
---|---|
0.1.9 | 2018年3月26日 |
0.0.1 | 2017年6月1日 |
在 #infini-band 中排名第 1
每月下载量 244 次
在 18 个crate中使用(直接使用2个)
2.5MB
74K SLoC
rdma-core
rdma-core 是一个开发 Rust 代码的项目,用于封装提供访问 InfiniBand 网络和 RDMA over Ethernet(即 RoCE 和 SoftRoCE)的 rdma-core C 库。目前它提供:
rdma-core-sys
,一个 Rust crate,提供libibverbs
的低级 FFI 绑定,版本为r14-rc1
rdma-core
,一个不完整的中间层绑定,使用rdma-core-sys
和rdma
gaspi-reference-sys
,一个非链接*绑定到 GASPI 2 规范的 C 头文件openshmem-reference-sys
,一个非链接*绑定到 OpenSHMEM 1.3 规范的 C 头文件
该 rdma-core-sys
crate 可以在 Alpine Linux 和 Mac OS X 上编译,但仅测试过 Mac OS X 的绑定生成。 rdma-core-sys
还包括到 libiberbs
中存在的静态内联函数的生成绑定。请注意,还有一个 Rust 项目提供 rdma-core 绑定,https://github.com/jonhoo/rust-ibverbs。由于 Mellanox 为自己的代码提供了增强功能的不同版本(MLNX_OFED
),libibverbs
存在复杂性。此代码目前使用官方 GitHub 版本,但可能将切换;Mellanox 是当前该领域的最有效创新者。
此项目目前处于实验性状态,主要是为了满足 StormMQ 的开发需求。它可能永远不会稳定或支持您使用的开发生态系统。它还使用我们喜欢且 Rust 社区不接受的名字和代码布局约定。它需要 Rust nightly,并且可能需要一段时间(它使用联合体、关联常量等)。它更喜欢 shell 脚本而不是 Cargo 构建脚本。最终,计划将其纳入 Libertine Linux,这是一个小型、内存中、安全和从源代码构建的 Linux 发行版,非常适合现代微服务集群。
在 workspace
文件夹中存在 crate 以及 IntelliJ 模块文件。
目前不太可能接受拉取请求。
* 即提供函数但不链接到 ELF .a
或 .so
文件。这是因为存在这些规范的多个实现。
许可
本项目的许可证是 MIT。