使用hpc的python性能监视工具

cihpc的Python项目详细描述


高性能计算机·Travis (.org) branchRead the Docsdownload the PDF DocsPyPIGitHubCoveralls github branch

一个simple框架,可以监视软件包的性能和可伸缩性。 本文提出的框架结合了连续积分&;高性能计算 以及一组最简单的python脚本。 结果可以以静态Jupyter笔记本或交互式网页的形式可视化。

功能

  • 自动运行项目的基准
  • 检查项目的性能和可扩展性
  • 使用类似travis的语法构建矩阵功能(YAML格式)创建复杂配置

如何使用ci-hpc?

  1. 首先执行以下命令安装框架:

    pip3 install --user ci-hpc
    
  2. 为存储库创建配置(文件config.yaml)。 在这个协同配置中,您应该指定几个选项。

    • ci-hpc需要知道,哪些存储库是项目的一部分。 可以指定一个或多个存储库。每个存储库将 安装时克隆并签出。

    • 您还需要告诉ci-hpc如何安装项目。
      它可以简单到

      ./configure; make; make install
      pip install ./foo/

      但它也可能相当复杂,你甚至可以简化 使用安装文件的整个过程:
      像这样的东西!sh install.shinstall.sh在本例中是一个shell脚本,它包含 您的安装过程)

    • 接下来是测试部分。这里,ci-hpc需要知道, 您希望在什么配置下运行什么基准测试。 您可以创建复杂的构建矩阵,以便您的配置 可以保持简单和透明。

  3. 完成配置后。你应该核实一下, 它正在工作。假设结构如下:

    .
    └── hello-world
       └── config.yaml
    

    执行ci-hpc
    cihpc --project hello-world
    
  4. 如果一切正常,则设置MongoDB服务器并添加集合 节(再次输入文件config.yaml):

    • ci-hpc需要知道,要存储什么结果。 它是一个json分析器还是yaml结果? 或者计时是以xml格式保存的吗?在那里ci-hpc 是对jsonyaml的一些一般支持 格式化,但您可以编写自己的artifact模块 把它放在正确的文件夹里。

    • 大部分繁重的工作已经在家长班完成了 所以添加一个新的收集模块应该比较容易。

  5. 现在要显示结果,请设置可视化服务器。

有什么新消息?

  • 现在支持单个项目中的多个存储库
  • 通过在计算节点上使用多个核心加快测试过程
  • 使用commit-browser模块在以前的提交上轻松运行ci hpc
  • 根据先前的结果自动确定要运行的测试
  • webhook支持,在新提交时自动启动ci-chp

接下来是什么?

  • 在怀疑性能有重大变化时运行额外的测试
  • 从分析数据库中的记录创建Web可视化配置

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

推荐PyPI第三方库


热门话题
java prometheus占用JDBC连接   java如何在ApacheDerby中选择聚合的学生/班级数据?   Java支持内部/本地/子方法吗?   java如何向Jsoup添加带有用户名和密码的代理?   servlets介绍如何创建java。木卫一。具有URI的文件对象?   java使用布尔值设置实体的字符串字段?   java API请求:无法从Android Studio工作   java无法从URL捕获JSON响应   Java中的amazon web服务AWS DynamoDB和MapReduce   为重载方法强制转换Java任务   JavaSolr+SpringRoo为每个客户提供单独的索引   父对象的java调用方法,即使子对象重写它?