惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
博客园_首页
G
Google Developers Blog
A
About on SuperTechFans
酷 壳 – CoolShell
酷 壳 – CoolShell
aimingoo的专栏
aimingoo的专栏
Last Week in AI
Last Week in AI
博客园 - 聂微东
T
Tailwind CSS Blog
宝玉的分享
宝玉的分享
V
Visual Studio Blog
美团技术团队
The Cloudflare Blog
量子位
T
The Blog of Author Tim Ferriss
罗磊的独立博客
V
V2EX
S
SegmentFault 最新的问题
小众软件
小众软件
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
MyScale Blog
MyScale Blog
博客园 - Franky

博客园 - xiezhengcai

日志分层设计 Ai阅读代码的局限性 业务系统缓存加速的五种缓存设计 The CustomResourceDefinition "applications.apps.abc.com" is invalid: metadata.annotations: Too long: must have at most 262144 bytes vscode ssh开发无法读取go env配置 deepspeed ray + nccl + 张量并行 训练 ray集群 ray分布式 nccl & mpi 跨节点通信 cudaMemsetParams 参数详细 cuda 中的内存拷贝 cuda 编程 cuda vllm 参数分类 张量计算流程图标注方法 为什么nn.Linear 的weight 是 (out_features, in_features) torch.view、unsqueeze、reshape、transpose 和 permute PyTorch交叉熵损失函数详解
ray 分布式, 工作节点、reylet、 主节点、GCS
xiezhengcai · 2025-05-23 · via 博客园 - xiezhengcai

工作节点、reylay

每一个工作节点有一名reylet组件,负责管理工作进程,在工作节点上的任务共享reylet,负责任务调度和对象存储(如rey.put),

  • 对象存储在节点内形成共享内存池,并确保worker进程可以访问其它节点的对象,对象存储由Plasma实现,
  • 调度器负责资源管理工作,管理cpu、gpu、内存等信息,如果资源不足, 则任务会进入等待队列;另外调度器还关注任务依赖,调度器在对象存储中查找依赖项,如果所需的值在此节点的对象存储中不可用,调度器将与其它节点通信,拉去依赖项,一旦依赖项满足、资源足够,并找到worker执行任务,就安排任务进行执行。
  • worker进程存储调用的所有任务任务返回的对象引用元数据,叫所有权
import ray

# task拥有val和task_owned的所有权,
# 主程序(驱动程序)拥有val、res、task的所有权

@ray.remote
def task_owned():
    return 

@ray.remote
def task(arg):  
    res_owned = task_owned.remote()
    return 

val = ray.put("value")
res = task.remote(val)

主节点、GCS

如图,主节点上也可以由工作进程,同时主节点运行驱动程序; 主节点上有GCS(Global Control Services)全局控制服务,它存储全局信息,同时与每个Raylet保持心跳,同时还存储执行器所在的位置。