1、使用apt-get install gridengine-master gridengine-client之后发现自己的master name设置错误。如何修改呢?提供两个方法。
(1)编辑/var/lib/gridengine/default/common/act-qmaster 修改其中的master name。
(2)使用命令:dpkg-reconfigure gridengine-master
重新填写master name
2、安装好之后使用qstat或者qhost命令出现下面的错误:
error: commlib error: access denied (client IP resolved to host name "localhost". This is not identical to clients host name "Richardfan")
error: unable to contact qmaster using port 6444 on host "Richardfan"
Richardfan是我电脑的hostname。这里的错误原因是认为IP是localhost。这里需要修改/etc/hosts文件
我的文件之前是这样的:
127.0.0.1 localhost
127.0.0.1 hostname
把文件修改为:
127.0.0.1 localhost localhost.localdomain Richardfan
这样问题就得到解决了。如果还不行的话重启试试。之后就能愉快的使用qstat qhost还有qmon啦。
3、接下来就可以用qmon进行queue的配置了,当然如果你喜欢用命令行的化用qconf也是能做到的。
安装qmon apt-get install gridengine-qmon
具体的图形配置过程可以看一下这个教程: https://scidom.wordpress.com/2012/01/18/sge-on-single-pc/
4、最重要的一点:如果你只想使用gpu,完全不需要安装这个gridengine
刚开始学习kaldi的时候也以为安装了gridengine才能使用gpu。其实并不然。gridengine只是一种多cpu(gpu)的一种并行处理的方案。如果你只有一台计算机,这个恐怕完成不了,我就是queue.pl一直报错,尽管gridengine安装成功。
所以说,要使用gpu,直接用run.pl就可以。需要做的是以下几步:
(1)安装cuda驱动并且安装Nvidia的工具包。
(2)在kaldi的安装目录下的src中编译./configure ,找到cuda之后重新编译kaldi,,即make depend 和 make
(3)如果有多个GPU,记得执行nvidia-smi -c 1使gpu在exclusive模式下工作提升多gpu的使用效率。
至于如何知道使用了gpu,第一种方法是使用nvidia-smi查看使用率,这个是前面装的nvidia工具包中的命令。另一种方法就是在kaldi的日志文件中找到使用说明。显然,在执行速度上你就能有所感觉。
之前一直陷入了SGE的误区,弄了很久,浪费了很多时间,google了很多资料才搞明白。希望以后学习kaldi的同学不要陷入误区。