常见问题
网络
登录节点进行网络接入认证
集群中的登录节点进行网络接入认证后即可访问互联网,认证后登录节点所有用户均可访问互联网,请注意网络安全!。
命令行登录和登出p.nju.edu.cn的方法有:
curl -X POST https://p.nju.edu.cn/api/portal/v1/login -H "Content-type: application/json" -d '{"username":"<username>","password":"<password>"}'
curl -X POST https://p.nju.edu.cn/api/portal/v1/logout -H "Content-type: application/json" -d '{}'
curl -s "http://p2.nju.edu.cn/portal_io/login?username=<username>&password=<password>"
curl -s http://p2.nju.edu.cn/portal_io/logout
计算节点访问网络
所有计算节点均不能自由无限制的访问外网(含校园网和互联网),如需访问可以单独申请开放。当前已经放开的网络访问
SSH/SFTP登录时报 no matching host key type found
SSH/SFTP登录时报错no matching host key type found. Their offer: ssh-rsa,ssh-dss
,命令行添加选项-o HostKeyAlgorithms=+ssh-rsa
或在~/.ssh/config
中增加HostKeyAlgorithms +ssh-rsa
安装
pip安装包到自己的目录下
Python的大多数包不需要root权限也能安装,只需在pip install后加-t指定安装目录即可,如:
cd scikit-opt-master
pip install -t $HOME .
这样就装到自己的家目录下。在~/.bashrc里或者作业脚本中加上环境变量
export PYTHONPATH=$HOME:$PYTHONPATH
作业
作业运行时实际占用CPU核数过多
- 在作业中限定使用的CPU核数与申请核数相同,否则超过申请核数使用资源的作业会被杀掉。
特别是Python,很多Python包会自动多核并行计算,需要使用环境变量(如 OMP_NUM_THREADS
、NUMEXPR_NUM_THREADS
、OPENBLAS_NUM_THREADS
、MKL_NUM_THREADS
)等方式设定线程数,与进程数一起匹配申请的核数。
export OMP_NUM_THREADS=$LSB_DJOB_NUMPROC
export NUMEXPR_NUM_THREADS=$LSB_DJOB_NUMPROC
export OPENBLAS_NUM_THREADS=$LSB_DJOB_NUMPROC
export MKL_NUM_THREADS=$LSB_DJOB_NUMPROC
- 可以尝试在提交作业时添加如下参数,做CPU亲和绑定
#BSUB -R affinity[core:cpubind=core:membind=localprefer:distribute=pack]
- 如果实在不行可以
#BSUB -x
独占节点运行作业
排队作业数上限
动态限制用户排队作业数不能超过MAX(1000,MIN((30000-总作业数)/10,(20000-总排队作业数)/6))
即用户排队作业数,不超过三万减去总作业数的十分之一,也不超过二万减去总排队作业数的六分之一,但保底一千个。
作业状态UNKWN
一般是两种情况之一,如果作业状态长时间处于UNKWN状态,一般来说就是计算节点坏了可以直接杀掉作业。
- 因为计算节点负载过高,未能及时获取作业状态导致状态未知,这种情况一般只需要等待即可,待负载下降获取状态后就正常了。
- 因为计算节点出现故障且长时间未恢复,调度系统无法获取作业状态,此时如果登录不到相应的计算节点,可以直接杀掉作业。