NITRO高通量

加快启动时间

随着集群/计算网格的使用变得更加多样化,业界正在见证高吞吐量计算与高性能计算的融合。Nitro 是一个功能强大但简单的任务启动解决方案,它作为独立产品运行,但也可以与任何 HPC 调度程序无缝集成。Nitro 不需要单独的作业调度,而是通过只为大量作业调度一次来实现短计算作业的高速吞吐量。

  • 使短作业的吞吐量提高 100 倍
  • 支持 HTC 或 SOA 工作负载中的数千到数十亿个任务
  • 消除启动速度瓶颈并显着提高整体系统效率

它是如何工作的

NITRO 可与现有调度程序一起使用

Nitro 与其他 HPC 调度程序共存,例如 Platform LSF、PBS Pro、Moab/TORQUE、UGE 和 SLURM。由于 Nitro 的分阶段协调器 – 工作者架构,Nitro 吞吐量随着分配给会话的核心数量而增加。使用简单的语法:一行 = 一个任务,一行包含一个可执行命令。如果当前的 HTC 作业语法需要转换,可以创建一个任务过滤器以自动重新格式化为“任务”定义语法。当 Nitro 与 Moab、TORQUE 或 SLURM 一起使用时,它可以与 Viewpoint 门户集成,以便于使用和更简化的提交和管理。

最佳使用

Nitro 对于希望大幅提高串行作业或单节点并行作业(运行数毫秒到数分钟)的吞吐量的管理员来说非常有价值,尽管运行时间较长的用例也可以看到 Nitro 的好处。在多个用例中,即使一小部分工作负载与 Nitro 涵盖的高吞吐量用例相匹配,运行 Nitro 仍然可以获得显着的整体系统效率。

特征:

  • 支持数百万到数十亿的任务
  • 提供简单的用户作业提交(Nitro for SOA 中提供基于 API 的提交和监控)
  • 适用于现有集群,无需修改应用程序
  • 与任何 HPC 调度程序一起运行或作为独立服务运行
  • 任务可以被命名、给定标签并被索引以便于解析和任务识别
  • 失败工人的任务被转移到正常工作的工人身上
  • 检查点任务以在任务中断的情况下启用重新启动
  • 在 Nitro 会话中动态添加/删除节点以提供负载平衡并满足服务级别承诺
  • 延迟模式允许持续提交到开放会话以实现近乎实时的工作负载
  • 通过 CLI 或 Viewpoint 实时跟踪 Nitro 会话状态(任务已完成、待处理、失败、工作人员健康状况等)
  • 报告任务详细信息(使用的资源、任务运行时间、标准错误等)

NITRO 的工作原理

用户向作业调度程序提交 Nitro 作业。Nitro 通过将其调度程序分配的节点用于执行任务(短时间运行的 HTC 作业)的会话来运行。Nitro 在会话中的第一个节点上启动一个协调器。它从任务文件中读取一组任务定义,并通过高速消息总线将任务分配委托给在其会话中分配的节点上运行的每个工作人员。每个工作人员执行分配的任务,向协调员报告新的任务,依此类推,直到完成所有任务。

每个 Nitro 作业提交都可以构建、激活和拆除一个新的 Nitro 会话。这是无缝的,不需要管理员或用户进行管理。单个 Nitro 会话可以扩展到数百个节点(足以每秒启动数十万个任务);一个给定的集群可以根据需要同时托管尽可能多或尽可能少的 Nitro 会话。

NITRO 基准

在基准测试中,Nitro 显示出每个核心每秒 200 个任务的完成率,比其他领先的调度程序高出 54 倍。在优化的环境中,它每个内核每秒运行 500 个任务,比竞争对手快 100 倍以上。在另一项性能测试中,Nitro 能够在一个周末在一台服务器上运行超过十亿个任务。显然,该工具为您的计算中心提供了高吞吐量性能,并准备好处理您可以投入的任何容量。