Can MATLAB Distributed Server Run in the Background?

조회 수: 1 (최근 30일)
Mikhail  Kandel
Mikhail Kandel 2013년 2월 6일
I have an embassingly parralel rendering task, where each frame of a movie is inspected and optomized. Our lab has dozen of powerful desktop machines i7 + Tesla that are often underutilized. Each one controls a device, and when that device is not in use, the machine has almost no load.
I want to launch my matlab jobs on every machine, but also have a second user logged in doing their normal work such as browsing the internet or work in office.
The machines run Windows, and I was under the impression that Windows did not tolerate multiple users logged in at once (unless you buy the terminal server).
I am wondering if the Beowulf like configuration I have in mind is possible to realize with MATLAB Distributed Computing Server on Windows machines?
My background is primarily in writting c++ code for highend clusters.

채택된 답변

Jason Ross
Jason Ross 2013년 2월 6일
편집: Jason Ross 2013년 2월 6일
Windows does not tolerate multiple users logged into the desktop at any time (without terminal services), but it's perfectly fine with multiple users running as services. Look in your Task Manager and you'll see your own processes, as well as "SYSTEM" and "Network Service" -- which are "special" user accounts.
MDCS is installed as a service and runs (by default) as the Local System user, or it can be configured to run as a Windows user. In either case, it will happily execute jobs in the background in the manner you desire. You can install MDCS and set up the desired number of worker MATLAB processes you want on each machine, and then submit away. You will need to designate one machine as a "head node", although that doesn't need to be an exclusive machine by any means.
Things can get a little tricky with the Tesla cards. If they are hooked up to a monitor, they are going to be running in WDDM mode and not accessible to processes other than the desktop for running computations. If they are not hooked up to a monitor, then they will (should) be in TCC mode and can be accessed by a process running as a service.
  댓글 수: 2
Leo Simon
Leo Simon 2013년 2월 28일
I'm used to running matlab jobs in the background on a linux machine, but unfortunately some machines still have windows on them. Would you mind explaining to a windows novice what I have to do. In a nice world, I would be able to run
nohup matlab
from the dos command line, but alas I'm sure the world isn't this nice.
Thanks!
Leo
Jason Ross
Jason Ross 2013년 3월 1일

I'm not sure I understand exactly, but I'll try. Keep in mind the original question was about MDCS / Parallel Computing and not the MATLAB desktop per se. If you are running MDCS or Parallel Computing Toolbox, the MATLAB worker processes run in the background entirely and don't pop up windows at all. They just run and do their work. This applies to any platform MATLAB runs on.

In terms of a nohup type command on Windows, I'm not sure it applies. The way I've understood nohup is that you want the process to live on after the shell that started it terminates. On Windows you can launch from the icon or from the command line, but the program isn't tied to the command shell that launched it.

If you are trying to get different behaviors, there are a list of command line options for launching on Windows here:

http://www.mathworks.com/help/matlab/ref/matlabwindows.html

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

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 MATLAB Parallel Server에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by