使用批处理管理系统
批处理系统管理将计算作业分配给单个大型计算机或一群小型计算机的过程。
通常,可以将作业提交到一个批处理系统,通过该特定批处理系统的属性请求计算资源。然后,该批处理系统管理该作业,根据请求的资源为其分配可用的特定机器。这样,可以根据系统管理员配置的规则以一种公平有效的方式将资源委派给计算作业。
Simcenter STAR-CCM+ 可在批处理系统的控制下以批处理模式运行。如果要在批处理系统的控制下以并行模式运行 Simcenter STAR-CCM+,必须从批处理系统获取某些资源属性并使用这些属性为 Simcenter STAR-CCM+ 构建正确的命令行参数。执行此操作的一种常用方法是:在批处理系统的提交脚本中检查批处理系统的属性,然后将这些属性传递到 Simcenter STAR-CCM+ 命令行。例如,如果在提交作业时从批处理系统请求了两台机器,则批处理系统应该提供一种方式来确定已分配哪些机器。然后,可以使用这些机器名称构建一个设备文件,用于并行执行 Simcenter STAR-CCM+。
以下批处理系统支持将有限数量的属性从批处理系统自动传输到 Simcenter STAR-CCM+:
- 基于 Unix 的批处理系统:
- SLURM
- PBS:Open PBS、PBS Pro、扭矩
- LSF
- Grid Engine:Sun/Open Grid Engine 和变量
- 基于 Windows 的批处理系统:
- 适用于 Windows Server 的 Microsoft HPC Pack
许可证管理
批处理管理系统使用调度程序来执行工作负载管理。为避免发生 Simcenter STAR-CCM+ 作业在集群上开始执行但随后由于可用许可证不足而失败的情况,可以允许调度程序将一组有限的许可证视为可消耗资源。
在集群上,管理员必须首先定义许可证的总可用容量。然后,批处理管理系统的内部记帐监视所有 Simcenter STAR-CCM+ 作业的许可证消耗情况。仅在内部记帐指示有足够许可证可用时作业才会开始执行。
有关如何设置集群的可消耗资源的详细信息,请参见批处理管理系统的用户指南。
使用批处理系统进行流程分布
Simcenter STAR-CCM+ 根据进程总数和批处理系统中先前对各进程请求的顺序来分发进程。当计算资源订阅不足时,考虑此因素尤为重要。例如,在 GPGPU 加速模拟中,每个计算节点上的进程数应与可用 GPGPU 数匹配。
- 在 SLURM 系统上,将 --ntasks-per-node 选项设为正确的值。
- 在 PBS 系统上,根据需要设置 ncpus 和 mpiprocs 选项。
使用 -gpgpu 自动
运行时,Simcenter STAR-CCM+ 会自动在所有主机上均匀分布这些进程,以提高 GPGPU 利用率。要返回默认进程分布,使用 -gpgpu auto:oversubscribe
命令(请参见命令行参考)。
有关如何为作业分配正确资源量的信息,请参考群集和批处理系统文档。如果不确定,使用 -cpubind v 命令行选项确认预期进程分布已应用(请参见 -cpubind <policy>)。