跳转到主要内容

HERA数据离线处理和管道管理

项目描述

hera_opm

Run Tests Code Coverage License Code style: black

hera_opm提供了一个方便且灵活的框架,用于开发用于操作HERA数据的分析管道。它简化了“离线处理”,并且足够便携,可以在具有批量提交系统的计算机集群或本地机器上运行。

工作原理

hera_opm包使用Cooperative Computing Tools包的一部分makeflow系统,该包由Cooperative Computing Lab开发。本质上,hera_opm包将配置文件中定义的管道转换为makeflow可以解析的格式。此过程还了解HERA数据的一些特定方面,例如数据的偏振特性,以构建适当的软件管道。一旦生成makeflow指令文件,就使用makeflow程序本身来执行管道中的步骤。

通常需要5个步骤来“构建管道”

  1. 编写将由makeflow在管道的给定阶段执行的任务脚本。这些脚本应尽可能原子化,并仅执行管道的单个逻辑组件(尽管它可能反过来调用几个支持脚本或命令)。
  2. 编写一个配置文件,该文件定义要完成的任务顺序。此配置文件定义了管道的逻辑流程以及每个任务的前提条件。它还允许定义计算和内存需求,对于支持资源管理的系统。
  3. 使用提供的build_makeflow_from_config.py脚本构建一个指定应用于数据文件的管道任务的makeflow指令文件。
  4. 使用提供的 makeflow_nrao.shmakeflow_local.sh 来执行管道,分别是在 NRAO 批处理调度环境或本地机器上。
  5. (可选) 使用提供的 clean_up_makeflow.py 清理 makeflow 的工作目录。这将删除包装脚本和输出文件,并为 makeflow 中的所有作业生成单个日志文件。

安装

要安装 hera_opm 包,只需

pip install .

如上所述,hera_opm 使用 makeflow 作为后端管道管理软件。因此,必须安装 makeflow。要在您的家目录中安装 makeflow

git clone https://github.com/cooperative-computing-lab/cctools.git
cd cctools
./configure --prefix=${HOME}/cctools
make clean
make install
export PATH=${PATH}:${HOME}/cctools/bin

为了方便起见,将 export 语句添加到您的 .bashrc 文件中很有帮助,这样 makeflow 命令就始终在您的 PATH 上。

依赖项

在安装包时,setuptools 将尝试下载和安装任何缺少的依赖项。如果您更喜欢通过 conda 或 pip 或其他管理器管理自己的 Python 环境,您也可以自行安装它们。

必需

  • toml >= 0.9.4

可选

生成 lstbin 管道(而不是 analysis)需要安装 hera_cal。主要包和测试可以在没有此要求的情况下运行。

任务脚本和配置文件

有关构建任务脚本的文档,请参阅 任务脚本文档页面。有关配置文件的文档,请参阅 配置文件文档页面

测试

hera_opm 使用 pytest 作为其测试框架。要运行测试套件,请

pytest

从根存储库目录。这可能需要运行 pip install .[test] 来安装测试依赖项。

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分布

hera_opm-1.4.0.tar.gz (7.3 MB 查看哈希值)

上传时间

构建分布

hera_opm-1.4.0-py3-none-any.whl (7.3 MB 查看哈希值)

上传时间 Python 3

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面