用户指南#
本节介绍如何使用 Ray 的关键概念构建分布式应用。
如果你是 Ray 的新手,我们建议从演练开始。
- 任务
- Actor
- 对象
- 环境依赖
- 调度
- 容错
- 设计模式与反模式
- 模式:使用嵌套任务实现嵌套并行
- 模式:使用生成器减少堆内存使用
- 模式:使用 ray.wait 限制待处理任务数量
- 模式:使用资源限制并发运行任务数量
- 模式:使用 asyncio 并发运行 Actor 方法
- 模式:使用 Actor 同步其他任务和 Actor
- 模式:使用 Supervisor Actor 管理 Actor 树
- 模式:使用流水线提高吞吐量
- 反模式:从任务返回 ray.put() ObjectRef 损害性能和容错
- 反模式:在循环中调用 ray.get 损害并行性
- 反模式:不必要地调用 ray.get 损害性能
- 反模式:使用 ray.get 按提交顺序处理结果会增加运行时间
- 反模式:使用 ray.get 一次性获取过多对象会导致失败
- 反模式:使用过于细粒度的任务过度并行化会损害加速效果
- 反模式:重新定义相同的远程函数或类会损害性能
- 反模式:重复按值传递相同的较大参数会损害性能
- 反模式:闭包捕获大型对象会损害性能
- 反模式:使用全局变量在任务和 Actor 之间共享状态
- 反模式:带外序列化 ray.ObjectRef
- 反模式:在应用程序代码中派生新进程
- Ray 编译图 (beta)
- 高级主题