使用 Submission Interfaces

本页面描述使用 Submission Interface 的一般流程:

  1. 将您的脚本/工具修改为 callxgSubmit.exe 和(可选)xgWait.exe,以便让您希望在 Incredibuild 执行的进程进入 Grid Engine 队列。

  2. 使用 IBConsole 执行脚本/工具。

如需将您的脚本转换为供 Incredibuild 使用的形式,请执行以下操作:

  1. 将您的脚本复制到一个新的位置。

  2. 下发需要通过 Incredibuild 并使用 xgSubmit 调用的各项命令。

  3. 创建为顺序处理所需的所有 Group。

  4. 将所需的 xgWait 语句加入脚本,并将各个语句关联到合适的 Group 或者所有 Group。

  5. 保存新脚本,并使用 IBConsole 运行(为 Job 提供命令行,或者提供批量文件的名称)。

并非所有的语句都必须转换为 xgSubmit 任务。它们可以以原本的形式存在于脚本内。Incredibuild 将在本地机器上以顺序的方式执行它们。

示例 1

例如如下批量脚本,可以被轻松修改以适用于 Incredibuild。

复制
DummyProcess.exe 3000DummyProcess.exe 2500DummyProcess.exe 2500
DummyProcess.exe 3000DummyProcess.exe 2800DummyProcess.exe 2000

(详见 Samples 目录的示例。)

将脚本文件按如下进行修改(Batch File 4tasks.bat),以便让 Incredibuild 使用远端 helper 机器执行如上的命令:

复制
xgSubmit /ForceRemote /group=Group1 /caption=Task1-Group1 /command
DummyProcess.exe 3000xgSubmit /ForceRemote /group=Group1 /caption=Task2-Group1 /command
DummyProcess.exe 2500xgSubmit /ForceRemote /group=Group1 /caption=Task3-Group1 /command
DummyProcess.exe 2500xgWait /group=Group1xgSubmit /ForceRemote /group=Group2 /caption=Task4-Group2 /command
DummyProcess.exe 3000xgSubmit /ForceRemote /group=Group2 /caption=Task5-Group2 /command
DummyProcess.exe 2800xgSubmit /ForceRemote /group=Group2 /caption=Task6-Group2 /command
DummyProcess.exe 2000xgWait /group=Group2

In order to execute the script file using Incredibuild (assuming the script name is 4tasks.bat), execute the following command:

xgConsole "4tasks.bat” /openmonitor

示例 2

您的渲染程序需要处理一千帧,而您的脚本/命令行只能一次处理一帧。

RenderApp 1-1000

执行这条命令需要的时间是处理一帧的时间的 1000 倍。同样的,将作业分为 100 个任务的脚本,可能会显示一个进度条,但是不会减少任何处理的时间:

RenderApp 1-100
RenderApp 101-200
RenderApp 201-300

RenderApp 901-1000

您可以使用 Incredibuild 创建如下脚本:

xgSubmit / command RenderApp 1-100
xgSubmit / command RenderApp 101-200
xgSubmit / command RenderApp 201-300

xgSubmit / command RenderApp 901-1000)

Incredibuild 将每个任务发送至队列,并基于 Coordinator 的信息,以并行的方式发送至注册到 Incredibuild Grid 池的远端和本地核心中分发处理。此处理过程仅需原来的十分之一的时间。

IBConsole.exe 命令行选项的概述详见本章节

Submission Interface 示例项目

欢迎您查看我们的示例项目,请访问如下 Incredibuild 安装文件夹:Samples\Dev Tools Interfaces Usage Samples\Submission Interface。其中有一个示例为 Distribution Sample,展示了一次简单的应用分发。

注意:在本文件夹内配置的命令提示符运行 BatchFileExecution.bat。此操作会激活“BatchFile.bat”中的“xgSubmit.exe”,转而启动“DummyProcess.exe”的多个实例,并认为其处于可分发的状态。