#opencl #gpu #computation

open-cl-core

OpenCL 线程安全、内存安全 Rust 绑定

3 个不稳定版本

0.2.1 2020年3月1日
0.2.0 2020年3月1日
0.1.0 2020年2月17日

#65 in #opencl

Download history 3/week @ 2024-02-16 23/week @ 2024-02-23 8/week @ 2024-03-01 40/week @ 2024-03-29 12/week @ 2024-04-05

52 每月下载次数

MIT 许可证

1MB
32K SLoC

open_cl_rust

一个安全、快速、无废话的 Rust 库,用于与 OpenCL 交互。

注意:目前这个库是一个非常初级的软件。使用风险自负!

注意:目前这个库只在我的 Macbook 上使用过。Linux 和 Windows 尚未测试。

C FFI 哲学

  • 所有与原始指针的交互都是不安全的。

  • 所有接受原始指针作为参数的函数都是不安全的。

  • 所有返回原始指针的函数都是不安全的。

  • 未标记为 unsafe 的函数不能返回原始指针。

  • 仅允许通过标记为 unsafe 的函数访问原始指针。

学习资源

备注

  • 注意:OpenCL 1.0 不是线程安全的。我们不会支持它。

  • 注意:调查 OpenCL 对数字的限制以及 num 软件包的 OpenCL 安全性。

  • 注意:实现采样器。

  • 注意:实现用户事件 (clCreateUserEvent, clSetUserEventStatus)

  • 注意:实现标记

  • 注意:实现屏障

依赖

~4–14MB
~167K SLoC