Conda太慢?試試這個加速工具!
1 簡介
Conda
作為使用最為廣泛的資料科學環境管理工具,可以協助我們很方便的完成建立管理環境、下載安裝第三方庫、軟體包等操作,但其在下載資源的過程中下載速度時常令人捉急,即使使用連線速度更快的國內映象,也擺脫不了其單執行緒挨個下載資源導致的低效問題。
而Mamba
(黑曼巴)專為加速Conda
而生,其改寫了Conda
下載資源的固有方式,以多執行緒的方式對網路資源進行並行下載,從而大幅提升Conda
效率:
圖1
本文就將帶大家學習如何使用Mamba
來幫助我們更高效地使用Conda
功能。
2 Mamba的使用
2.1 初識Mamba
首先我們需要安裝Mamba
,既然是用來加速Conda
Mamba
:
conda install -c conda-forge mamba
安裝完成之後,當你執行mamba -V
檢視其版本時會發現返回的是Conda
的版本資訊,這是因為Mamba
的本質是對Conda
功能的覆蓋,因此我們在使用Mamba
時其實只要將原有的Conda
語句中的conda
替換為mamba
即可,譬如我們常用的conda clean --all
,即清空本地快取安裝包:
圖2
很有意思的是Mamba
在執行命令時會先打印出logo等資訊,對應其名稱黑曼巴~
當然Mamba
並不是重寫了Conda
所有的功能,只是針對一些Conda
低效的功能進行重寫,並添加了一些實用的新功能,接下來我們來對這些知識進行學習。
2.2 Mamba中的實用功能
- 加速下載
作為Mamba
最核心的功能,Mamba
對conda install
語句進行並行化改造,達到加速下載過程的目的。
以下載qgis
為例,使用mamba install -c conda-forge qgis -y
代替以前的安裝方式,執行命令後,Mamba
會在短暫獲取資源下載連結之後,以並行的方式按計劃同時下載多個資源,比老方法要快很多:
圖3
對於其他涉及下載資源的命令譬如conda update
同樣適用,你可以自行體驗。
- 檢視指定庫當前環境下所有可用版本
這是Mamba
異於Conda
的新功能,使用mamba repoquery search 庫名
pandas
為例:
圖4
- 檢視依賴關係
Mamba
中還提供了mamba repoquery depends
和mamba repoquery whoneeds
,分別用於檢視指定庫依賴哪些庫,以及指定庫被哪些庫依賴,如官方檔案的示例:
圖5
以上就是本文的全部內容,如有疑問歡迎在評論區與我討論~