Ray是UC Berkeley RISELab新推出的高性能分布式执行框架,它使用了和传统分布式计算系统不一样的架构和对分布式计算的抽象方式,具有比Spark更优异的计算性能。
Ray目前还处于实验室阶段,最新版本为0.5版本。虽然Ray自称是面向AI应用的分布式计算框架,但是它的架构具有通用的分布式计算抽象。本文对Ray进行简单的介绍.
Ray是一个分布式执行引擎。可以在单个机器上运行相同的代码以实现高效的多处理,并且可以在群集上使用它来进行大型计算。
Ray现在已经可是在Linux和MacOS系统上运行,暂不支持window。和TensorFlow和pytorch完美兼容。
一、简单使用
安装 pip install ray
- ray.init() 启动ray
本地启动
#导入ray包
import ray
ray.init()
结果
Process STDOUT and STDERR is being redirected to /tmp/raylogs/.
Waiting for redis server at 127.0.0.1:49354 to respond...
Waiting for redis server at 127.0.0.1:19872 to respond...
Starting the Plasma object store with 1.00 GB memory.
Starting local scheduler with the following resources: {'CPU': 4, 'GPU': 0}.
======================================================================
View the web UI at http://localhost:8888/notebooks/ray_ui262.ipynb?token=bfb2256187326e3c70de1d009fa3391d9c2e8aa1fc6eac45
======================================================================
注:如果在ray.init()这一步报错如下
redis.exception.DataError:错。
是因为redis最新版本的和ray不兼容,只需把对应的版本降低即可。
如。
pip install -U redis==2.10.6
链接集群
import ray
ray.init(redis_address="地址")