查看原文
其他

​答读者问 (十六)做单细胞测序到底需要多少内存

BIOMAMBA Biomamba 生信基地 2024-04-03





往期回顾




答读者问 (一)单基因究竟能否进行GSEA

答读者问 (二)为什么我的PCA分析报错了?

答读者问 (三)单细胞测序前景

答读者问 (四)如何分析细胞亚群

答读者问 (五)如何实现各物种基因的ID/symbol的转换

答读者问 (六)Seurat中如何让细胞听你指挥

答读者问 (七)有人问我Biomamba何解

答读者问 (八)为什么Read10X也会报错?

答读者问 (九) 如何将数百个文件整合为一个矩阵

答读者问 (十)整合后的表达矩阵,如何拆分出分组信息?

答读者问 (十一)如何一次性读取一个目录下的cellranger输出文件?

答读者问 (十二)ERROR: have no zero exit status
答读者问 (十三)查看Seurat对象时的ERROR:type='text'

答读者问 (十四)Seurat中分类变量处理技巧

答读者问 (十五)稀疏矩阵转matrix, as.matrix函数是下下策



问题




因为咱们现在能够为大家提供服务器(独享服务器2.0即将上线,128GB免费试用),经常有读者问我做单细胞测序需要多大的内存或至少需要准备多少内存,这个问题我相信很多同学都思考,值得探究一番。




怎么解决问题




内存与线程最大的不同是,线程少了无非就是任务算的慢些,若是内存少了,任务是无法正常启动的,所以保障内存充足是重中之重。对于大部分用户来说,目前来说单细胞测序最吃内存的还是上游的fastq文件处理,在Seurat中最吃内存的CCA,处理六万个细胞(你如果处理几百万个细胞那当我没说)可能也就占用不到30GB,但使用cellranger做定量时占用的内存远大于此。那我们便以一个cellranger实例来做测评。以下测试于一台刚重启过的384GB48线程的服务器中执行,理论上除了shiny-server以外没有其他用户进程在后台运行(Linux系统自带进程除外),开始操作:


拿我这个真实的数据(10X Genomics)来举例,这是2019年测得的一个lane的数据量,加起来差不多刚好40G(采取.gz的形式压缩后)。
 ll -h H2*fastq.gz #看看文件



那我们用20线程的参数走一下cellranger的定量流程看看。教程可参考:单细胞分析的最上游——处理Fastq文件:cellranger
  nohup cellranger  count \ --id=H2result \ --transcriptome=/home/biomamba/biosoft/refdata-gex-mm10-2020-A \ --fastqs=./ \ --sample=H2 \ --expect-cells=5000 \ --localcores=20\ --nosecondary &#把程序给挂上

watch -n 60 'free -h >> my.memo.txt'#把内存进程监控下来    less nohup.out


首先等程序成功运行完:



开始复盘内存:
cat my.memo.txt | \ sed 's/ * /\t/g'| \ cut -f 4| sort |grep -v free| \ grep -v 8.0Gi|sort -n|head
可以发现,空余的空间最少的时候只有25GB,我的服务器是384GB,简单的算一下,你最多需要准备359GB的内存,基本任何数据和流程对你来说都可高枕无忧。



但总内存=free(真正空闲内存)+buff/cache(缓存)+used(实际用掉的内存),buff/cache的内存其实也可以整理出来给cellranger使用,所以你最少需要准备多少内存呢,我们来看一下used的监控情况:
 cat  my.memo.txt | sed 's/ * /\t/g'| \ cut -f 3|sort|grep -v free| grep Gi | sort -nr|head


可以发现程序占用的其实最多也就64G,保险一点,再算上系统本身进程波动可能要再吃一些内存,80G差不多能搞定(这是理论,实际上没试过,但我觉得大概率会死机,谁正好有那么大内存来帮我试一试,如果有加测fastq的更别试了,64G肯定不够)。好了,就谈这么多,具体情况还是需要取决于大家的数据大小与执行任务种类。


如何联系我们


公众号后台中消息更新不及时,超过48h后便不允许回复读者消息,这里给大家留一下领取资料、咨询服务器的微信号,方便大家随时交流、提建议(由助理接待)。此外呼声一直很高的交流群也建好了,欢迎大家入群讨论:你们要的微信、交流群,来了!
大家可以阅读完这几篇之后添加笑一笑也就算了有关提高"Biomamba 生信基地"运行效率事宜


继续滑动看下一个
向上滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存