batsim的python调度程序

pybatsim的Python项目详细描述


pybatsim帮助您在python中开发自己的调度程序!

库由两层组成:

  1. 低级apibatsim.batsim处理与 batsim实例(示例调度器:schedulers/fillersched.py)。
  2. 高级apibatsim.sched包含一个面向对象的抽象层 提供一个更简单的api,用于从batsim访问数据并过滤 作业和资源(示例调度程序:schedulers/delayprofilesastastasks.py)。

命令

提供以下命令:

pybatsim
启动调度程序
pybatsim实验
启动实验
pybatsim后处理作业
根据仅在 调度程序,但不在batsim中。

batsim版本兼容性

由于batsim和pybatsim版本的发布速度不同,下面列出了两个项目之间的兼容性:

此外,所有显著的变化都列在changelog中。

示例

启动调度程序

有关可用的内置调度程序,请参阅schedulers目录。 通过调用:

pybatsim fillerSched

但是,此命令需要一个已经运行的batsim实例。

pybatsim的参数也可以是项目目录之外的文件 例如:

pybatsim path/to/scheduler.py

高级API的调度程序(batsim.sched)可以用相同的方式执行:

pybatsim delayProfilesAsTasks

此示例调度程序将使用动态作业并将延迟作业转换为任务。 请注意,必须在运行的batsim实例中启用动态作业提交才能使用此计划程序。

要查看所有可用的启动选项,请参见:

pybatsim --help

进行实验

要运行完整的实验,可以使用实验启动程序:

pybatsim-experiment --verbose sample.expe.json

请注意,必须安装batsim,并且必须设置环境才能成功执行此命令。

文件

launcher.py
这是启动东西的主要入口点
launch_expe.py
提供了启动完整模拟的简单方法。 只需向这个脚本提供一个类似于sample.exp.json的文件,它就会启动batsim和具有正确选项的调度程序。
sample.expe.json
请参见启动expe.json
batsim/batsim.py
本课程帮助您与batsim服务器进行通信
batsim/sched/
高级调度程序API
batsim/tools/
启动调度程序或处理生成的数据的工具
schedulers/
包含所有调度程序。调度程序名称应遵循以下约定: foobar.py包含作为祖先的batsim.batsim.batsim调度程序的foobar类名
schedulers/fillersched.py
一种没有拓扑调度器的First Fit
schedulers/easybackfill.py
在作业被视为矩形的地方轻松回填
schedulers/delayProfilesAstasks.py
使用高级调度程序api将大延迟作业拆分为 小任务。

安装

您可以使用以下命令安装、升级和卸载pybatsim:

pip install [--user] pybatsim
pip install [--user] --upgrade pybatsim
pip uninstall pybatsim

文档

要生成HTML文档,请使用设置目标:

./setup.py doc

测试

运行测试实验最好首先使用以下命令输入pybatsim开发专用的nix shell:

nix-shell https://github.com/oar-team/kapack/archive/master.tar.gz -A pybatsim_dev

然后可以使用设置目标运行测试:

./setup.py test --batsim-bin=path/to/batsim/binary

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Java岩石、布、剪刀程序,带文件输入   java迭代Hashmap中的值列表   数组不能正确循环   JavaHibernate:对于一个遥远的惰性依赖,有一个渴望的获取者吗?   交通阻塞下的java车辆路径选择   如何在java中创建布尔方法来检查添加到具有特定索引的arraylist的对象   java Tomcat配置文件/上下文xml似乎已经崩溃了。请确保它是可分析和有效的。有关详细信息,请参阅服务器日志   为什么坐标有时相等,有时不相等?   java libgdx CameraInputController过于敏感,平移开始得太早   将C++排序函数移植到java   java应该是十进制的   swing Java JFrame中的所有内容都不可见   java使用数组中除一个元素以外的所有元素   从子类运行构造函数的Java