开箱测评|如何将WGS分析成本降低30%,效能提升40% 【内含Sentieon软件安装免费攻略】

本文涉及的产品
云服务器 ECS,每月免费额度200元 3个月
云服务器ECS,u1 2核4GB 1个月
简介: 以全基因组测序(WGS)场景为例,Sentieon Genomics 工具和 Memory Machine TM Cloud的组合方案,可以使运行时间减少 40%、同时实现成本减少 34%。

概述

Sentieon® 提供一套生物信息学二级分析工具,以高效率、准确性和一致性为重点处理基因组学数据。与同类开源软件相比,Sentieon Genomics工具在性能方面实现了5到10倍的提升。

MemVerge的Memory MachineTM Cloud 是一个软件平台(简称MMCloud),用于简化云环境中容器化应用的部署。大部分生信分析的共同特征是,CPU 内核和内存访问的资源需求会随着不同执行步骤发生变化。MMCloud 的WaveRider特性通过高效的checkpoint/restore技术,可自动迁移正在运行的容器,而不会丢失执行状态。利用这一特性,可以在不中断运行的前提下,让作业在不同的资源需求阶段,自由切换匹配的机型,永远不会造成资源浪费或不足。

当 Sentieon Genomics 工具与 WaveRider 结合使用时,性能会进一步提高,同时成本也会降低。根据不同配置云主机的按需实例定价模式,当 CPU 和/或内存利用率较高时,通过在短时间内运行较大的虚拟机,可同时优化成本和性能。而当 CPU 和/或内存利用率较低时,使用较小的虚拟机运行,实现成本最优。以全基因组测序(WGS)场景为例,Sentieon Genomics 工具和 Memory Machine TM Cloud的组合方案,可以使运行时间减少 40%、同时实现成本减少 34%。

介绍

对于广大生物信息学家来说,开源工具使测序数据分析技术变得随手可得。近些年,高通量测序技术使得测序效率大幅提升,随之产生的数据增长也越来越快,对测序后的生信分析效率提出了新的要求。Sentieon Genomics 工具对常用的生信流程进行了完全重写,强调计算效率、准确性和一致性,性能比开源软件(常用的如BWA、GATK等)提高了5到10倍。

本文以全基因组测序(WGS)的生信分析为例,以单一配置机型运行Sentieon全流程作为基线,对比Sention+MMCloud 组合方案的性能和成本。

WGS生信分析流程基准

Sentieon 开发的 WGS 基准测试对应的是全基因组测序的生信分析流程,从加载原始数据(以 .fastq 文件)开始,以 .vcf 文件输出结束。WGS 流程包括五个步骤,如表中所示。

Sentieon Genomics 工具用于单服务器应用程序,即单个脚本在一台机器涵盖多个数据处理步骤,不需要第三方工作流管理应用程序来驱动。

我们将WGS流程分为三个计算阶段阶段(编号步骤请参阅上表)进行性能分析:

  1. 第 1 阶段:数据准备(步骤1)
  2. 第 2 阶段:序列映射(步骤 2)
  3. 第 3 阶段:GATK 流程(去重、矫正、异常检测)(步骤 3 至 5)

测试基线

我们配置了一台按需实例(32 个 vCPU 256 GB 内存),用于运行整个WGS分析流程。

图1 所示的是运行WGS基准测试的CPU和内存使用情况。横轴为时间,纵轴是资源使用情况(CPU使用率和内存使用量)。CPU 使用率显示的是所有 vCPU 的总和,因此最大可能为 3200%。图上的注释显示阶段 1、阶段 2 和阶段 3 相对应的运行时间。表1中有详细的运行时长以及消耗的云资源成本。

图 1: WGS基线测试的CPU 和内存利用率


通过分析基线测试的3个不同运行阶段的数据,可观察到以下现象:

  1. 阶段1仅使用一个 vCPU – 与理论最大值 3200% 相比,CPU 利用率为 100% 或更低。内存利用率也很低。
  2. 阶段2 通过使用多线程处理充分利用所有 32 个 vCPU。内存利用率远高于阶段1,尽管峰值(103 GB)仍远小于虚拟机实例的 256 GB 容量。
  3. 阶段3也使用全部 32 个 vCPU,但内存利用率较低(与阶段2相比)

从CPU 和内存使用率可以看出性能和成本优化的点。峰值内存使用率与平均内存的比率很大,这意味着在运行过程中,即使 CPU 利用率很高,内存容量也存在过度配置的情况。但如果虚拟机只根据平均使用量来配置内存,又会将作业运行速度拖慢、甚至因内存不足 (OOM) 错误而失败。

使用 Sentieon+MMCloud 进行 WGS分析

MMCloud 的 WaveRider 特性可将正在运行的作业从一台虚拟机迁移到另一台虚拟机,而不会丢失状态。迁移可以通过手动(使用 CLI 或 Web 界面)、程序控制(将 CLI 命令插入作业脚本)、或基于策略(通过定义CPU或内存利用率的阈值)的方式被触发。迁移正在运行的作业的能力意味着可以在任务不同的执行阶段动态调整底层虚拟机的大小。

为了研究 WaveRider 对 WGS分析指标的影响,我们在一个阶段结束和新阶段开始的交汇处以编程方式触发迁移事件。


方案1:仅优化成本

为了优化成本,在不影响运行时间的前提下,通过MMCloud对不同的运行阶段对云主机进行合理降配。

  1. 使用小机型(4 个 vCPU 和 32 GB 内存)开始第 1 阶段
  2. 在第 2 阶段开始时,迁移到大型虚拟机(32 个 vCPU 和 256 GB 内存)
  3. 在第 3 阶段开始时,迁移到具有相同 vCPU 数量但内存容量较小 (64 GB) 的虚拟机

运行结果如图2显示。运行时间已包含迁移到新虚拟机所需的时间。

图2 通过作业迁移优化每阶段的虚机规格和资源使用情况


结果显示,使用MMCloud使得云资源成本降低了 16%。各阶段的运行时间在合理抖动范围内,可被视为与基线的各阶段持平。

随着数据集大小的增长,完成阶段 1 所需的时间可能会比完成阶段 2 和 3 的时间更长。在这种情况下,如果使用小型虚拟机,则成本节省会增加更多(与基准相比)。图 3 就是这样一个例子。

图3:阶段1耗时过长的例子

方案2:成本和性能的综合优化

性能优化的关键手段之一是尽量减少计算任务因CPU/内存资源不足而排队或阻塞。Sentieon Genomics 工具提供了一个配置选项来指定最大进程线程数。每个线程会占用1个vCPU资源。如果线程数比vCPU数多,则会因频繁的线程切换(多个线程争抢1个vCPU)对性能产生负面影响。在基线测试中使用了32线程确保与计算资源匹配。在本次测试中,MMCloud对阶段2的虚拟机的配置做了动态升级,vCPU数量从阶段1的4个增加到72个,从而Sentieon的运行线程数也相应地增加到72个,是基线测试的2倍以上。

以下是MMCloud对WGS基准测试做的动态调整:

  1. 使用小型虚拟机(4 个 vCPU 和 32 GB 内存)开始第 1 阶段
  2. 在第 2 阶段开始时,迁移到64核以上的大型虚拟机(MMCloud实际选取了72 vCPU 144 GB 内存的机型)
  3. 将最大线程数增加到与当前vCPU数匹配
  4. 在第 3 阶段开始时,迁移到具有 至少32vCPU 64GB内存的虚拟机(MMCloud实际选取了36 vCPU 72 GB 内存的机型),将最大线程数减少与新虚机vCPU数匹配。

图4显示了调整后的各阶段的CPU和内存消耗情况,以及运行时长的变化。运行时长已包含迁移到新虚机的时间。表5从成本和运行时长两个维度,与基线数据进行对比。

图4 通过作业迁移优化每阶段的虚机规格和资源使用情况


这里需要介绍2种向 MMCloud 提交作业时指定虚拟机大小的方法:

  1. 通过名称指定实例类型
  2. 指定 vCPU 范围和内存容量范围,例如 vCPU(内存)数量必须至少为 32(128 GB)

对于第2种方法,MMCloud 选择满足 vCPU 和内存要求的价格最低的虚拟机实例。有时可以以较低的价格获得更大的虚拟机,有时则无法获得最低要求的虚拟机。例如,在本次测试中,MMCloud 搜索了至少具有 64 个 vCPU 和 128 GB 的虚拟机,并找到了一个具有 72 个 vCPU 和 144 GB 内存的虚拟机。

借助功能更强大的虚拟机,第 2 阶段的完成时间不到一半,同时仍将第 2 阶段的成本降低了 30%(与基准相比)。最终结果显示,运行完整的WGS基准测试,相比基线运行时长缩短了40.5%,同时云资源成本减少了33.6%,实现了性能和成本的双赢。

结论

Sentieon Genomics 工具缩短了执行各种生信分析流程的运行时长,通过结合 MMCloud 的 WaveRider 功能来调整计算实例的大小,运行时间可以进一步减少 40%。在性能提高的同时,还伴随着显著的成本节省(34%),因为Sentieon软件可以利用额外的vCPU——功能更强大的虚拟机减少运行时长的幅度明显大于额外vCPU在单位时间成本上的增加幅度。同时,成本节省还取决于加载数据与计算所花费的相对时间。数据加载时间越长,MMCloud能带来的成本节省效果越明显。

此外,MMCloud还可以使能 Spot 实例,进一步大幅缩减云资源的开销。

最后的说明,目前MMCloud内置App library已集成Sentieon Genomics,MMCloud用户可直接安装免费使用,而不需要再额外为Sentieon付费。

相关文章
|
8月前
|
运维 数据挖掘 测试技术
开箱测评|如何将WGS分析成本降低30%,效能提升40% 【内含Sentieon免费攻略】
以全基因组测序(WGS)场景为例,Sentieon Genomics 工具和 Memory Machine TM Cloud的组合方案,可以使运行时间减少 40%、同时实现成本减少 34%。
163 0
开箱测评|如何将WGS分析成本降低30%,效能提升40% 【内含Sentieon免费攻略】
|
安全 搜索推荐 数据可视化
|
Web App开发 搜索推荐 安全
免费、好用、强大的开源笔记软件综合评测
笔记产品那么多,为什么要使用开源笔记软件? 开源笔记软件的优点和缺 优点 • 免费使用; • 可扩展性强,满足用户的个性化需求; • 数据更加安全,不用担心开发者突然跑路; 缺点 • 用户最好具备一定的技术,有些功能的使用可能需要用户自 下面是一些比较著名的开源笔记软件。绝大多数开源软件都是针对某款知名笔记软件的替代品,比如印象笔记/EverNote、Roam Research、Notion 等笔记软件的替代品。 具体包括,Joplin、 Turtle、 Laverna、 Boostnote、 Anytype、 Focalboard、 TiddlyWiki 、 Athens、 Trilium.
1787 0
免费、好用、强大的开源笔记软件综合评测
|
2月前
|
人工智能 Python
隐私计算实训营 第1期-第4讲 快速上手隐语SecretFlow的安装和部署
文档改进建议:明确Ray, K3S, Kuscia与SecretFlow的关系;结构化部署文档,区分顺序步骤与选择分支;提供从零开始的详细部署教程,补充缺失的前置步骤说明。
|
2月前
|
开发工具 git Docker
隐私计算实训营 第四讲 快速上手隐语SecretFlow的安装和部署
在两台虚拟机(10.10.101.58:alice, 10.10.104.124:bob)上部署Secretflow,使用docker和`secretflow/secretflow-lite-anolis81.4.0b0`镜像。每台机器上运行docker容器,并通过`docker exec`启动Ray服务(Bob节点在8085端口)。接着,导入secretflow库,配置集群信息并初始化。Secretnode部署通过源码完成,克隆secretnote仓库,进入sim目录,运行`docker-compose up`。展示部署成功后的界面截图。
41 0
|
8月前
|
监控 算法 数据可视化
数据挖掘算法如何提升企业电脑监控软件的效能
不知道大家有没有注意到企业电脑监控软件是多么神奇?它们可以帮助你们实时监控员工的电脑活动,以确保工作效率、数据安全和遵守法规。但是,要从大量的数据中提取有用的信息并做出决策可不是小事。这就是“神奇数据挖掘算法”该出场的时候啦!这个算法能够帮助企业更好地理解员工行为、检测异常和提高生产效率。
132 0
|
11月前
|
机器学习/深度学习 算法 数据可视化
微生物组(16S rRNA)数据分析套件PMS尝鲜
前几日宏基因组公号上推送了《iMeta:青岛大学苏晓泉组开发跨平台可交互的微生物组分析套件PMS》一文,但软件中示例文件貌似是单端数据,于是想着拿手里一批已发表过的双端测序16S数据集尝试一番。
137 0
|
搜索推荐 Windows
再推荐5款大幅提升工作效率的小工具,免费无广告
今天要给大家推荐5款让人惊艳的黑科技软件,每个都是同类软件中的个中翘楚,请大家给我高调地使用起来,不用替我藏着掖着。
130 0
再推荐5款大幅提升工作效率的小工具,免费无广告
|
数据可视化 Windows
让你办公效率倍增的5款小工具,免费而且无广告
让你办公效率倍增的5款小工具,免费而且无广告 让你办公效率倍增的5款小工具,免费而且无广告 让你办公效率倍增的5款小工具,免费而且无广告
115 0
|
运维 资源调度 负载均衡
成本节省 50%,9人团队使用函数计算开发 wolai 在线文档应用
通过使用函数计算,wolai 的前端工程师们就可以把从前到后的一整套开发流程负责起来,我们的研发迭代速度非常快。
成本节省 50%,9人团队使用函数计算开发 wolai 在线文档应用