跳转至

mamba

mamba是一个基于conda的快速包管理器,可以解决conda在处理大型环境时速度较慢的问题。与conda类似,mamba可以帮助用户创建、配置、管理和分享环境和软件包。mamba是一个开源软件,核心部分由C++编写。主要具有以下特点:

  • 速度快:相比于conda,mamba在安装和更新软件包时更快,尤其是在处理大型环境时表现更加出色;

  • 轻量级:mamba在安装和运行时的内存占用更小,因此可以更快地启动和运行;

  • 兼容conda:mamba兼容Conda的所有功能和包,因此可以无缝地切换到mamba,而不需要重新安装或更改现有的环境;

  • 高度可定制:mamba提供了一些高级功能,例如并行安装、交互式进度条、缓存下载的包等等,可以通过配置文件进行调整;

  • 多线程:mamba支持多线程并行处理软件包,因此在大型环境中更加高效;

mamba尽可能兼容conda,在解析、安装或卸载软件包等方面和conda具有相同的命令。

mamba同时也是一个巨大的包管理生态的一部分。该生态还包含quetz,一种开源的conda软件包的服务端;以及boa,一种快速的conda软件包的生成器。

micromamba是mamba的精简版,由C++编写。其文件非常小,不需要base环境和Python。由于它是静态版本,它可以放置任意位置,并且能良好运行。

官方文档:https://mamba.readthedocs.io/

以下为micromamba的安装和使用。

安装micromamba

$ mkdir ~/bin/
$ curl -Ls https://micro.mamba.pm/api/micromamba/linux-64/latest | tar -xvj bin/micromamba

# 配置环境变量,配置完成之后micromamba安装的软件和创建的环境默认路径为~/micromamba
$ ~/bin/micromamba shell init -s bash -p ~/micromamba
$ source ~/.bashrc

调用集群micromamba

module load micromamba

配置源

与conda类似,首次使用时需要配置国内的源以加快软件安装速度。

将以下内容保存到~/.mambarc 即可。

channels:
- defaults
show_channel_urls: true
default_channels:
 - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
 - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
 - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
 conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
 msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
 bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
 menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
 pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
 pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
 simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

使用

# 激活micromamba环境
$ micromamba activate
(base) $

# 安装软件
(base) $ micromamba install  -c bioconda  bwa
(base) $ which bwa
~/micromamba/bin/bwa

# 创建环境,可以用-p指定创建的环境的路径,默认路径为上面配置的路径~/micromamba/
$ micromamba create -n RNASeq

# 激活创建的环境
$ micromamba activate RNASeq
(RNASeq) $

# 在RNASeq环境中安装软件
(RNASeq) $ micromamba install  -c bioconda STAR
(base) $ which STAR
~/micromamba/envs/RNASeq/bin/STAR

# 退出RNASeq环境
(RNASeq) $ micromamba deactivate
(base) $

# 创建python版本为3.10的环境,并安装pytorch
$ micromamba create -n torch python=3.10
$ micromamba activate torch
(torch) micromamba install pytorch 

# 删除环境
$ micromamba remove -n pytorch --all # 会有目录残留
$ micromamba env remove -p pytorch # 无目录残留

# 退出micromamba环境
(base) $ micromamba deactivate
$

脚本中调用

$ micromamba run -n rna-seq STAR --help
参考:

https://www.jianshu.com/p/0d9a738ca2dd

本文阅读量  次
本站总访问量  次