Matlab

名稱不存在或不是目錄

  • May 9, 2020

我正在400我大學的 HPC 中執行陣列作業(Matlab R2018b 任務)。在終端中擁有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"

如果我已經聯繫管理員詢問這個問題(還沒有回复),我能做些什麼來立即修復它並執行我的程式碼?

我根本不知道 MatLab:我只是指出警告消息備註了一個非常具體的文件名。

當我在Google搜尋 mexa64 時,它總是以文件副檔名 .mexa64 的形式出現,而不是 mex.a64。因此,某處的文件名可能存在一些歧義。

在“www.nag.co.uk/doc/inun/mb24/l6idml/in.html”中有一個 NAG 安裝程序說明,其中包括路徑名:/opt/NAG/mbl6i24dml/mex.a64/a00aa.mexa64;這可以解釋一些事情,因為兩種變體都在那裡。

我還想知道為什麼這是一個警告,但程序卻被殺死了。看起來 .mexa64 是一個程式碼庫,如果找不到,MatLab 會嘗試從原始碼編譯它。所以也許,在警告之後,它會嘗試建構庫,並在其他地方記錄失敗(或未能報告它)。可能源也不可用或未正確找到。

我希望你的 Uni 管理員知道的比我多。在任何情況下,您似乎都無權在伺服器上糾正此問題。

引用自:https://unix.stackexchange.com/questions/585504