Submit LSF command from matlab script

조회 수: 6 (최근 30일)
lior
lior 2024년 2월 29일
편집: Swastik Sarkar 2024년 8월 30일
I want to subbmit LSF command from matlab:
command = 'bsub -q normal -G example sleep 100';
% Execute the command using system
[status, result] = system(command);
in the result i get command not found
  댓글 수: 2
Damian Pietrus
Damian Pietrus 2024년 3월 19일
Integrating MATLAB with LSF requires a support package which can be accessed here:
Is your MATLAB client (where you're submitting the command from) on the cluster or off-cluster?
lior
lior 2024년 4월 24일
편집: lior 2024년 4월 24일
I dont want to use cluster and parallel computing on matlab.
There is way to send job to LSF without using cluster and parllel computing on matlab?

댓글을 달려면 로그인하십시오.

답변 (1개)

Swastik Sarkar
Swastik Sarkar 2024년 8월 30일
편집: Swastik Sarkar 2024년 8월 30일
Hi @lior,
The "command not found" error likely results from a PATH issue. To diagnose this, verify the directory containing bsub by executing the following in a terminal where bsub is accessible:
which bsub
'bsub' not found.
Next, check if this directory is included in the PATH variable of the MATLAB Client using:
getenv("PATH")
ans = '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin'
This is likely the cause of the error being encountered. Below is a demonstration of a similar error using the ls command:
system("ls -al")
total 8 drwxr-xr-x 2 matlab matlabgroup 4096 Aug 30 12:35 . drwx------ 3 matlab matlabgroup 4096 Aug 30 12:35 ..
ans = 0
system("which ls")
/usr/bin/ls
ans = 0
getenv("PATH") % You will notice that the above directory is present here.
ans = '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin'
setenv("PATH", "") % Setting to PATH to empty string to simulate a “No command found”
system("ls -al") % Command not found
/bin/bash: line 1: ls: No such file or directory
ans = 127
This issue can be resolved by specifying the absolute path of bsub, thereby eliminating the dependency on the PATH variable. Below is an example using ls:
getenv("PATH") % Verifying PATH is empty
ans = 0x0 empty char array
system("/usr/bin/ls -al")
total 8 drwxr-xr-x 2 matlab matlabgroup 4096 Aug 30 12:35 . drwx------ 3 matlab matlabgroup 4096 Aug 30 12:35 ..
ans = 0
A more official method to communicate with LSF is to use the Parallel Computing Toolbox plugin for LSF, as mentioned by @Damian Pietrus. This approach allows MATLAB to construct the necessary bsub command. The plugin can be found here:
Hope this helps.

카테고리

Help CenterFile Exchange에서 GPU Computing에 대해 자세히 알아보기

태그

제품


릴리스

R2022a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by