方案:ubuntu20.04+cuda11+kaldi
本人多次安装实践总结,安装kaldi最佳时间为北京时间早上6点-9点, 这段时间安装成功率最高,不会遇到卡死,断网,下载包失败等糟心的事。
网上说安装kaldi需要借助上网工具加速,这种说法也不太准确,我多次安装均在正常网络环境。
网上有文章说kaldi不能适配cuda11,要改配置。但我用的就是cuda11, 不需要改任何配置,成功安装跑起来嗖嗖的。
如果没GPU装kaldi没太大意思,还是先解决GPU在考虑安装问题吧。
前期准备工作:
- 确定操作系统版本:这和gcc版本相关,建议centos7 或ubuntu16.04以上。
- 下载安装包:git clone https://github.com/kaldi-asr/kaldi.git kaldi --origin upstream
- 安装GPU驱动:安装kaldi之前nvcc -V, nvidia-smi确保GPU能用。
- 查看cpu核数: cat /proc/cpuinfo | grep “processor” | wc -l, 编译时候用到cpu个数
- 安装目录:选择空间较大的硬盘驱动,最好装在固态盘挂载的目录下
安装用到的脚本
完整脚本
1.安装和编译工具
cd tools
sudo extras/check_dependencies.sh
sudo apt-get install g++ make automake autoconf git sox gfortran libtool subversion python2.7 #一般系统默认有python2了,但是检查依赖时候会报没装python,所以按照提示也要装一下
sudo apt-get install zlib1g-dev
sudo extras/install_mkl.sh
sudo make2.编译源码,配置--use-cuda为no安装cpu版本,不配置安装的是GPU版本
cd ../src
sudo ./configure --shared //GPU版本,此时如果cuda版本太高会有提示,可忽略
sudo ./configure --shared --use-cuda=no //只用cpu版本安装
sudo make depend -j 8 //8 是cpu个数,一定要根据自己cpu资源设置成 2的幂次方数字
sudo make -j 8
安装记录
先克隆kaldi版本
git clone https://github.com/kaldi-asr/kaldi.git kaldi --origin upstream
进入tools文件夹,查看依赖
cd tools
sudo extras/check_dependencies.sh
根据提示安装对应的依赖项,安装后可再次运行check_dependencies脚本查看是否安装所有依赖。
sudo apt-get install g++ automake autoconf sox gfortran libtool subversion python2.7
安装mkl
./extras/install_mkl.sh
mkl完事后opt目录下会有intel文件夹
接下来编译配置工具
sudo make -j 64
退出tools目录切到src目录下, 先编译版本依赖
cd ../src/
sudo make depend -j 64
然后编译版本,大概需要20分钟
make -j 64
验证
cd ../egs/yesno/s5
sh run.sh
测试成功
以上就是安装过程,再次强调安装时间选择早上6点-9点,其它时间不适宜安装。另外最好购置较大固态硬盘,如1T以上,安装目录最好选择固态硬盘挂载的目录,如果固态硬盘很小,比如500G,可以选择将kaldi的egs目录搬运到机械盘上,参考之前这篇文章。除了在裸机上安装,还可以在容器里安装,明天补一个在容器安装的例子。
可以持续关注公众号,后续会连续出kaldi使用文章。