专栏名称: 生信菜鸟团
生信菜鸟团荣誉归来,让所有想分析生物信息学数据的小伙伴找到归属,你值得拥有!
目录
相关文章推荐
生物学霸  ·  招聘 | ... ·  3 天前  
BioArt  ·  Nature | ... ·  3 天前  
BioArt  ·  Nature ... ·  6 天前  
51好读  ›  专栏  ›  生信菜鸟团

玩转服务器 — 运行Cell Ranger你必须知道的两个参数

生信菜鸟团  · 公众号  · 生物  · 2024-12-03 20:53

正文

滴水穿石 非一日之功

Cell Ranger

Cell Ranger 是由 10x Genomics 开发的一款高效数据分析软件,用于处理单细胞和空间转录组测序数据。它集成了从测序数据预处理、比对、基因表达定量到细胞聚类分析的一站式流程,能够生成基因表达矩阵、细胞聚类结果及可视化图表。Cell Ranger 支持单细胞转录组(scRNA-seq)和免疫组库(TCR/BCR)等多种分析,广泛应用于生命科学研究中,是单细胞测序数据分析的核心工具。

关于cellranger的定量流程,前面已经多次分享了。参考:

在共享服务器运行会遇到的问题

由于我们之前都是在自己的服务器上运行,早期我们教程分享的代码是:

$ cat run-cellranger.sh
bin=/home/data/bylin/cellranger-6.1.2/bin/cellranger
db=/home/data/bylin/refdata-gex-GRCh38-2020-A
ls $bin; ls $db

fq_dir=/home/x9/raw
$bin count --id=$1 \
--localcores=4 \
--transcriptome=$db \
--fastqs=$fq_dir \
--sample=$1   \
--expect-cells=5000

这个只设置了线程的调用,代码本身没有错,但是由于没有限制内存,往往会占用过多的内存。

更有甚者,提交cellranger定量任务的时候,线程和内存均不做限制,任务一提交就会占满服务器线程。如果是在共享服务器使用【共享服务器日常使用限不超过48线程200G内存,资源查看】,很容易影响到别人的使用,从而被系统监控kill掉任务。

如何避免占用过多资源

要想避免cellranger占用过多公共资源,那么首先我们来要来看一下问题的原因:

https://www.10xgenomics.com/support/software/cell-ranger/latest/analysis/running-pipelines/cr-gex-count
https://www.10xgenomics.com/support/software/cell-ranger/latest/getting-started/cr-choosing-how-to-run

从官方文档,我们可以看到,默认情况下,Cell Ranger 会使用所有可用的系统核心和系统90%的内存。这意味着如果不进行特定设置,即便仅提交了一个样本的运行任务,Cell Ranger 也会自动占用服务器中大部分资源,导致资源浪费。所以,如果在共享服务器中运行,必须要设置线程和内存这两个参数:

--localcores     #设置管道一次可以调用的最大核心数。
--localmem   #设置管道一次可以调用的最大内存                         

建议的代码:

明白了原因,通常我们建议一个样本仅需设置4个线程,内存50G,即可满足绝大部分样本的定量需求。

#! /bin/bash -xe
#
bin=/home/data/username/biosoft/cellranger-8.0.0/bin/cellranger
db=/home/data/username/ref/homo/refdata-gex-GRCh38-2020-A
ls $bin; ls $db

fq_dir=${2}
/usr/bin/time -v $bin count --id=$1 \
--localcores=4 \
--localmem=50 \
--transcriptome=$db \
--fastqs=$fq_dir \
--sample=$1   \
--create-bam=false \
--expect-cells=5000

如果你也需要共享服务器,详见:2024的共享服务器交个朋友福利价仍然是800 福利抢购方式:

还等什么呢,赶快扫描下面二维码添加微信抢购吧!





文末友情宣传

强烈建议你推荐给身边的博士后以及年轻生物学PI,多一点数据认知,让他们的科研上一个台阶: