Differences between revisions 14 and 16 (spanning 2 versions)
Revision 14 as of 2012-10-01 10:12:59
Size: 6268
Editor: bifelix
Comment:
Revision 16 as of 2012-10-02 14:39:59
Size: 4457
Editor: bifelix
Comment:
Deletions are marked like this. Additions are marked like this.
Line 28: Line 28:
Line 37: Line 38:
m
Line 51: Line 54:
 * Run the application  * Run the application  (In this exampl)
Line 54: Line 57:
 ./run_magicsquare.sh /usr/pack/matlab-7.13r2011b-sd 5
------------------------------------------
Setting up environment variables
---
LD_LIBRARY_PATH is .:/usr/pack/matlab-7.13r2011b-sd/runtime/glnxa64:/usr/pack/matlab-7.13r2011b-sd/bin/glnxa64:/usr/pack/matlab-7.13r2011b-sd/sys/os/glnxa64:/usr/pack/matlab-7.13r2011b-sd/sys/java/jre/glnxa64/jre/lib/amd64/native_threads:/usr/pack/matlab-7.13r2011b-sd/sys/java/jre/glnxa64/jre/lib/amd64/server:/usr/pack/matlab-7.13r2011b-sd/sys/java/jre/glnxa64/jre/lib/amd64/client:/usr/pack/matlab-7.13r2011b-sd/sys/java/jre/glnxa64/jre/lib/amd64

m =

    17 24 1 8 15
    23 5 7 14 16
     4 6 13 20 22
    10 12 19 21 3
    11 18 25 2 9
Line 56: Line 72:

 * enter magicsquare(5), and view the results.
Line 63: Line 76:
= Deutsch: Limitierte Anzahl Lizenzen =
Die Anzahl der MATLAB-Lizenzen ist begrenzt. Um einen fairen und effizienten Gebrauch dieser Lizenzen in der gesamten ETH zu gewährleisten wurden folgende Maßnahmen getroffen:
 * Lizenzen werden zurückgegeben, wenn keine Nutzung seit 4 Stunden erfolgte
 * Die übermäßige Verwendung von Lizenzen wird überwacht und Benutzer werden aufgefordert wenn nötig Lizenzen zurückzugeben.

== Was können Sie tun? ==
 1. Kompilieren Sie Ihr MATLAB-Programm. Der beste Ansatz, eine übermäßige Verwendung von MATLAB-Lizenzen zu vermeiden, ist die Kompilierung Ihres MATLAB-Programm. Die resultierende ausführbare Datei braucht keine einzige MATLAB-Lizenz! Dies befreit Sie von allen MATLAB Lizenzbeschränkungen und erlaubt Ihnen ausserdem Ihre ausführbare Datei an Nutzer ohne MATLAB Installation weiterzugeben.

 1. Beenden Sie MATLAB wenn Sie fertig sind. Nur dann werden alle verwendeten Lizenzen zurückgegeben.

 1. Registrieren Sie Zeiten in denen viele MATLAB-Lizenzen aufgrund eines MATLAB-Kurses benötigt werden. Mit dieser Registrierung im Voraus können wir Gegenmaßnahmen ergreifen und sicherstellen dass diese Lizenzen zur Verfügung stehen.

 1. Kaufen Sie Ihre eigenen MATLAB Lizenzen falls Sie einen garantierten 24/7 Service benötigt oder falls Sie eine übermäßige Anzahl an Lizenzen verwenden müssen.

== Matlab auf dem Cluster ==
 * Jede Matlab-Instanz auf dem Cluster verbraucht eine Lizenz. Deshalb ist es wichtig, nach Möglichkeit nur kompilierte Matlab-Applikationen auf dem Cluster laufen zu lassen.

== Wie weiss ich welche MATLAB Lizenzen ich verwende ==
 * Der MATLAB Befehl "license('inuse')" listet die benutzten Lizenzen der aktuellen MATLAB Sitzung auf.

== Wie weiss ich wer wieviele MATLAB Lizenzen verwendet? ==
 * Sie können alle benutzten MATLAB Lizenzen mit dem folgenden Befehle auflisten.
  * Linux Terminal: lmutil lmstat -c $MATLAB/license.dat -a
  * Windows Terminal:
   * cd $MATLAB\etc\win{32|64} ($MATLAB\flexlm für Versionen vor 2010b)
   * lmutil lmstat -c license.dat -a (wobei $MATLAB das MATLAB Grundverzeichnis ist)


= English: Limited amount of licenses =
= Limited amount of licenses =
Line 95: Line 80:
Line 110: Line 94:
== How do I know how many MATLAB licences are used by whom? ==
 * You can list all checked-out MATLAB licences with the following commands.
 * Linux: lmutil lmstat -c $MATLAB/license.dat -a
 * Windows command prompt:
  * cd $MATLAB\etc\win{32|64} ($MATLAB\flexlm for releases prior to 2010b)
  * lmutil lmstat -c license.dat -a (where $MATLAB is the root MATLAB directory)

Page is under construction

Matlab

Matlab is a high-level language and interactive environment for numerical computation, visualization, and programming.

Start Matlab

  • Start it on Linux: Applications - Accessories - Terminal. Then type: Matlab (Enter)
  • Start it on Windows: Start - Matlab - Matlab

First Steps

See the Matlab-Documentation in Matlab: Help - Product Help - Getting Started

Matlab Compiler

  • mcc (both: UNIX and Windows) is the MATLAB Compiler. You can use the mcc command either from the MATLAB command prompt (MATLAB mode) or the command-line (standalone mode).
  • More info: See the Matlab-Documentation in Matlab: Help - Product Help - Matlab Compiler

How to use Matlab Compiler on Linux

  • This chapter describes how to use MATLAB Compiler to code and build standalone applications.
  • Standalone Applications executables don't need any Matlab Licences.

Magic Square Example

  • A magic square is an array of integers arranged so that their sum is the same when added vertically, horizontally, or diagonally.
  • Copy the following code in a text-file and save it as magicsquare.m
    function m = magicsquare(n)
    %MAGICSQUARE generates a magic square matrix of the size
    % specified by the input parameter n.
    % Copyright 2003-2011 The MathWorks, Inc.
    
    if ischar(n)
        n=str2num(n);
    end
    m = magic(n);
    m
  • Start a Terminal (Applications - Accessoires - Terminal) and change to the directory where you stored magicsquare.m
  • Compile the magicsqure function:
    mcc -mv magicsquare.m
  • This generates you 2 files: magicsquare and magicsquare.sh
    • magicsquare is the main file of the application.
    • magicsquare.sh is the script to start the application. It temporarily sets up the environment variables needed at runtime and executes the application. On Windows, mcc doesn't generate this run script file, because the environment variables have already been set up by the installer. On Windows, only the file magicsquare.exe would be generated.
  • Run the application (In this exampl)

 ./run_magicsquare.sh /usr/pack/matlab-7.13r2011b-sd 5
------------------------------------------
Setting up environment variables
---
LD_LIBRARY_PATH is .:/usr/pack/matlab-7.13r2011b-sd/runtime/glnxa64:/usr/pack/matlab-7.13r2011b-sd/bin/glnxa64:/usr/pack/matlab-7.13r2011b-sd/sys/os/glnxa64:/usr/pack/matlab-7.13r2011b-sd/sys/java/jre/glnxa64/jre/lib/amd64/native_threads:/usr/pack/matlab-7.13r2011b-sd/sys/java/jre/glnxa64/jre/lib/amd64/server:/usr/pack/matlab-7.13r2011b-sd/sys/java/jre/glnxa64/jre/lib/amd64/client:/usr/pack/matlab-7.13r2011b-sd/sys/java/jre/glnxa64/jre/lib/amd64

m =

    17    24     1     8    15
    23     5     7    14    16
     4     6    13    20    22
    10    12    19    21     3
    11    18    25     2     9
  • Help on mcc: mcc -help or see Documentation in Matlab.
  • Help on deploytool

Limited amount of licenses

The number of MATLAB licences is limited. To ensure a fair and efficient usage of the licences throughout the ETH the following measures have been put in place:

  • licences will be returned if not used for 4 hours
  • excessive usage of licences will be monitored and users will be asked to return licences if needed

What can you do?

  1. Compile your MATLAB program. The best approach to avoid excessive usage of MATLAB licences is to compile your MATLAB program. The resulting executable does not need ANY MATLAB licence! This frees you from all MATLAB licence restrictions and also allows you to provide your executable to users without a MATLAB installation.
  2. Exit MATLAB when finished. Only then will all used licences be given back.
  3. Register the need for many MATLAB licences due to a MATLAB course By registering your need in advance, we can take countermeasures and ensure that these licences are available.
  4. Buy your own MATLAB licences if you must have a guaranteed 24/7 service or if you need to use an excessive amount of licences.

Matlab on the cluster

  • Every Matlab-Job on the Cluster uses one license. Therefore its very important, to run only compiled Matlab-Applications on the cluster.

How do I know which MATLAB licences I use?

  • The MATLAB command "license('inuse')" lists the licences checked out for the current MATLAB session.

Programming/Matlab (last edited 2022-05-09 08:44:48 by stroth)