私は400
大学からHPCに配列作業(Matlab R2018b task)を実行しています。qsub
.shファイルが端末に配置されると、400
そのファイルで開始されたジョブはすぐに終了します。
各ジョブの.oファイルにエラーは報告されませんが、次の警告のみが報告されます。
Warning: Name is nonexistent or not a directory:
/share/apps/.../NAG/mbl6a24dnl/mex.a64
知っておくと便利です。私はMatlab .mファイルからMOSEKソルバーを呼び出しています。特に Matlab .m ファイルの先頭に
addpath /share/apps/mosek-9.2/9.2/toolbox/r2015aom
また、ここに私の.shファイルがあります。
#$ -S /bin/bash
#$ -l h_vmem=7G
#$ -l tmem=7G
#$ -l h_rt=480:0:0
#$ -cwd
#$ -j y
#Run 400 tasks
#$ -t 1-400
#$ -N count2
date
hostname
#Output the Task ID
echo "Task ID is $SGE_TASK_ID"
/share/apps/matlabR2018b -nodisplay -nodesktop -nojvm -nosplash -r "main; ID = $SGE_TASK_ID; f; exit"
この問題について管理者に連絡しましたが(まだ応答していない場合)、すぐに問題を解決してコードを実行する方法はありますか?
答え1
私はMatLabについて全く知りません。警告メッセージに非常に具体的なファイル名が記載されていることだけを指摘しました。
mexa64 を Google で検索すると、必ず mex.a64 ではなくファイル拡張子 .mexa64 と表示されます。したがって、ファイル名のどこかにあいまいな部分がある可能性があります。
「www.nag.co.uk/doc/inun/mb24/l6idml/in.html」にパス名を含むNAGインストーラメモがあります。/opt/NAG/mbl6i24dml/mex.a64/a00aa.mexa64;両方のバリエーションがありますので説明してください。
これがなぜ警告なのか知りたいのですが、プロセスは終了しました。 .mexa64はコードライブラリのように見え、MatLabがそれを見つけることができない場合はソースからコンパイルしようとします。したがって、警告を発行した後にライブラリをビルドしようとし、他の場所に失敗を記録します(または報告できません)。ソースが利用できないか、正しく見つからない可能性があります。
皆さんの大学行政官が私よりもっと知っていることを願っています。いずれにせよ、あなたはサーバー上でこの問題を解決する権限を持っていないようです。