当前位置:   article > 正文

Ray入门指南(1)----ray分布式框架的介绍_ray csdn

ray csdn

使用ray,你需要解决以下两个问题:

1.ray执行异步任务时是怎样实现平行的。(ray集群中每个节点共享本节点本地存储,节点中worker并行运行,集群间worker的并行)

2.ray是怎样使用对象ID来表示不可变对象的远程对象的。(任务执行前,对象值已存入存储对象中,任务执行是通过对象ID调用存储对象的)

综述

Ray是一个分布式执行引擎。同样的代码可以在一台机器上实现高效的多处理,也可以在集群是用于大型的计算。

当我们使用Ray时,涉及到多个进程。

  • 多worker进程执行多个任务并将结果存储在对象存储中,每个worker都是一个独立的进程。
  • 每个节点上的对象存储都将不可变的对象存储存储在共享内存中,允许worker以少量的复制和并行化有效的共享同一节点上的存储对象。
  • 每一节点上的本地调度将任务分配给同一节点上的worker(一个节点上的本地调度把任分配给本节点的worker)
  • 一个driver是用户控制的python进程。例如,如果用户正在运行脚本或者使用python shell,那么driver就是运行脚本或者shell的python进程。driver和worker很相似,他们都可以提交任务给本地调度并从对象存储中获取对象,但是不同之处是本地调度不会将任务分配给driver执行。
  • Redis服务器维护系统的大部分状态。例如,它跟踪哪些对象位于哪些机器上,以及任务规范(但不包括数据)。另外可以对有问题的目标进行直接的质问(就是错误或者警告提示)。

运行Ray

启动python并运行一下命令:

import ray
ray.init()
  • 1
  • 2

ray启动了。(其中ray.init()方法可以加参数,具体请参考Ray相关的API

不可变的远程(remote)对象

在Ray中,我们可以在对象上创建和计算。我们将这些

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/205326
推荐阅读
相关标签
  

闽ICP备14008679号