持续集成服务非常适合持续测试各种语言包的更新。其中包括Travis-CI,Jenkins和Shippable等服务。但是,正如我已经探索过这些不同的服务,我还没有找到一个提到支持利用GPU(NVIDIA,AMD或其他)的软件的服务。有谁知道是否存在任何此类服务?
我意识到这不是一个严格的编程问题,但我搜索了这个网站和其他论坛,但找不到答案。也许目前还没有这样的服务,但我确信这些信息对GPU程序员(CUDA和OpenCL等)都很有价值。
答案 0 :(得分:9)
Travis-CI(可能还有其他允许软件包安装的服务)可用于测试基于OpenCL的软件包。检查VexCL,Boost.Compute或ViennaCL的travis配置文件以获取示例。
这里的关键是安装软件包,支持在CPU上运行OpenCL。在上述所有示例中,都是通过安装fglrx=2:8.960-0ubuntu1
和opencl-headers
来完成的。 fglrx
是AMD的GPU驱动程序,但它也提供CPU支持。据我所知,这是唯一可以在Ubuntu / Travis-CI上开箱即用的软件包。
如果是CUDA,我认为你运气不好,因为Travis-CI实例没有安装NVIDIA GPU。
答案 1 :(得分:0)
您可以使用 Cirun.io 为您云上的 GitHub 操作创建自托管运行器。它让您可以自由选择云提供商上的 GPU/CPU 机器。另请注意,它对开源免费。
以下是使用 GitHub 操作在 AWS 上启动 GPU 运行程序的 .cirun.yml
配置文件的简单示例:
# Self-Hosted Github Action Runners on AWS via Cirun.io
# Reference: https://docs.cirun.io/reference/yaml.html
runners:
- name: gpu-runner
# Cloud Provider: AWS
cloud: aws
instance_type: g4dn.xlarge
# NVIDIA Deep Learning AMI from AWS Marketplace
# https://aws.amazon.com/marketplace/pp/prodview-e7zxdqduz4cbs
machine_image: ami-00ac0c28c01352e53
# preemptible instances seems quite less reliable.
preemptible: false
# Path of the relevant workflow file
workflow: .github/workflows/test.yml
# Number of runners to provision on every trigger on Actions job
# See .github/workflows/build-gpu.yml
count: 1