"CharityEngine" (服务连接)

在全球志愿者设备网络上运行计算作业,范围从单个小型作业到跨越数十万个节点的大规模并行计算作业.

此服务连接提供对 Charity Engine Remote API 的直接访问. 使用 "CharityEngine" 批计算服务商完成提交的 Wolfram 语言高级作业. »

连接与认证

ServiceConnect["CharityEngine"] 创建到 Charity Engine Remote API 的连接.
请访问 TemplateBox[{{Charity,  , Engine,  , website}, {URL[https://www.charityengine.com/marketplace], None}, https://www.charityengine.com/marketplace, HyperlinkActionRecycled, {HyperlinkActive}, BaseStyle -> {Hyperlink}, HyperlinkAction -> Recycled}, HyperlinkTemplate] 查阅有关注册提交作业的信息. 您可能必须联系 Charity Engine 才能创建帐户并获取验证密钥.

请求

ServiceExecute["CharityEngine","request",params] 使用参数 params 向 Charity Engine Remote API 发送请求. 下面给出可能的请求.

创建并操控作业

请求:

"JobCreate" 创建一个或更多作业

参数:
  • "AppName"(required)Docker 图像或要执行的应用的名称
    "CleanupFiles"True是否应该清理输出目录
    "CommandLine"(required)要执行的命令行字符串
    "Copies"1要执行的相同拷贝的数量
    "EncryptedInputFiles"False输入文件的内容是否被加密
    "EncryptedInputURLs"False输入文件的 URL 是否被加密
    "EncryptedOutputFiles"False输出文件的内容是否应被加密
    "EncryptedOutputURLs"False输出文件的 URL 是否应被加密
    "EULAAccepted"False是否接受专有应用程序的最终用户许可协议
    "InputFiles"{}输入文件 URL 列表或哈希
    "InstanceType"default from Charity Engine要使用的实例类型
    "PublicKey"None用于加密输出文件 URL 和内容的公钥字符串
    "Tag"None任意作业元数据字符串
    "Timeout"最多运行多少个小时
    "UseOwnDevices"False是否在本地设备上运行而不是在公共网络上运行
  • 请求:

    "JobList" 获取提交的作业的列表

    参数:
  • "Page"1要获取的含有 100 个结果的页面的数量
  • 请求:

    "JobStatus" 获取一个或多个作业的状态

    "JobAbort" 中止一个或多个正在运行的作业

    参数:
  • "JobID"(required)单个作业 ID
    "JobIDs"(required)作业 ID 的列表
  • 创建并操控文件

    请求:

    "FileExists" 检查文件是否在服务器上存在

    参数:
  • "FileHash"(required)文件数据的 MD5 哈希
  • 请求:

    "FileUpload" 将文件上传到服务器

    参数:
  • "Data"(required)FileByteArray 形式给出的文件数据
    "FileHash"calculated from file data文件数据的 MD5 哈希
  • 访问并管理系统信息

    请求:

    "InstanceTypes" 列出系统支持的所有实例类型

    范例

    基本范例  (3)

    通过启动身份验证对话框创建连接:

    提交计算作业:

    查看提交的作业的状态:

    将文件上传到 Charity Engine:

    使用上传的文件作为输入,提交作业:

    获取作业的状态:

    导入作业的输出文件:

    获取当前可用实例类型的列表: