Hauptinhalt

Senden der Bug Finder-Analyse vom Desktop an einen lokal gehosteten Server

Sie können eine Polyspace®-Analyse lokal auf Ihrem Desktop durchführen oder die Analyse auf einen oder mehrere dedizierte Server auslagern. Dieses Thema zeigt eine einfache Server-Client-Konfiguration zum Auslagern der Polyspace-Analyse. In dieser Konfiguration fungiert derselbe Computer als Client, der eine Polyspace-Analyse übermittelt, und als Server, der die Analyse ausführt.

Sie können dieses Tutorial auf komplexere Konfigurationen ausweiten. Eine vollständige Anleitung zur Einrichtung und zum Workflow finden Sie unter den unten stehenden Links.

Hinweis

Die Versionen von Polyspace auf den Client- und Server-Rechnern müssen identisch sein.

Client-Server-Workflow für die Ausführung von Analysen

Nach der Ersteinrichtung können Sie eine Polyspace-Analyse von einem Client-Desktop an einen Server senden. Der Client-Server-Workflow erfolgt in drei Schritten. Alle drei Schritte können auf demselben Computer oder auf drei verschiedenen Computern ausgeführt werden. In diesem Tutorial wird für den gesamten Workflow derselbe Computer verwendet.

  1. Client-Knoten: Sie legen Polyspace-Analyseoptionen fest und starten die Analyse auf dem Client-Desktop. Die erste Phase der Analyse bis zur Kompilierung wird auf dem Desktop ausgeführt. Nach der Kompilierung wird der Analyseauftrag an den Server übermittelt.

    Sie benötigen das Polyspace-Desktopprodukt Polyspace Bug Finder™ auf dem Computer, der als Client-Knoten fungiert.

  2. Haupt-Knoten: Der Server besteht aus einem Haupt-Knoten und mehreren Worker-Knoten. Der Haupt-Knoten verwendet einen Job-Scheduler, um Übermittlungen von mehreren Client-Desktops zu verwalten. Die Aufgaben werden dann an die Worker-Knoten verteilt, sobald diese verfügbar sind.

    Sie benötigen das Produkt MATLAB® Parallel Server™ auf dem Computer, der als Haupt-Knoten fungiert.

  3. Worker-Knoten: Sobald ein Worker verfügbar ist, weist der Job-Scheduler die Analyse dem Worker zu. Die Polyspace-Analyse wird auf dem Worker ausgeführt und die Ergebnisse werden zur Überprüfung auf den Desktop des Clients zurückgeladen.

    Sie benötigen das Produkt MATLAB Parallel Server auf den Computern, die als Worker-Knoten fungieren. Sie benötigen außerdem das Polyspace-Serverprodukt, Polyspace Bug Finder Server™, um die Analyse auszuführen.

Siehe auch Install Products for Submitting Polyspace Analysis from Desktops to Remote Server.

Voraussetzungen

In diesem Tutorial wird derselbe Computer als Client und Server verwendet. Sie müssen Folgendes auf dem Computer installieren:

  • Client-seitiges Produkt: Polyspace Bug Finder

  • Server-seitige Produkte: MATLAB Parallel Server und Polyspace Bug Finder Server

Weitere Informationen finden Sie unter Install Products for Submitting Polyspace Analysis from Desktops to Remote Server.

Sie müssen den Hostnamen Ihres Computers kennen. Öffnen Sie beispielsweise in Windows® ein Befehlszeilenfenster und geben Sie Folgendes ein:

hostname

Konfigurieren und Starten des Servers

Beenden vorheriger Dienste

Wenn Sie zuvor die Dienste von MATLAB Parallel Server (mjs-Dienste) gestartet haben, stellen Sie sicher, dass Sie alle Dienste beendet haben. Insbesondere müssen Sie möglicherweise Folgendes tun:

  • Überprüfen Sie Ihren temporären Ordner, beispielsweise C:\Windows\Temp in Windows, und löschen Sie den Ordner MDCE, falls vorhanden.

  • Beenden Sie explizit alle Dienste. Dieser Schritt ist unter Linux® nicht erforderlich.

    Öffnen Sie ein Befehlszeilenfenster. Navigieren Sie zu matlabroot\toolbox\parallel\bin (mithilfe von cd) und geben Sie Folgendes ein:

    mjs uninstall -clean

    Hier ist matlabroot der Installationsordner MATLAB Parallel Server, beispielsweise C:\Program Files\MATLAB\R2025b.

Wenn Sie die Dienste zum ersten Mal starten, müssen Sie diese Schritte nicht ausführen.

Konfigurieren von Einstellungen für mjs-Dienste

Bevor Sie die Dienste starten können, müssen Sie die Einstellungen für den mjs-Dienst konfigurieren. Navigieren Sie zu matlabroot\toolbox\parallel\bin, wobei matlabroot der MATLAB Parallel Server-Installationsordner ist, beispielsweise C:\Program Files\MATLAB\R2025b. Ändern Sie diese beiden Dateien. Um diese Dateien zu bearbeiten und zu speichern, müssen Sie Ihren Editor im Administratormodus öffnen.

  • mjs_def.bat (Windows) oder mjs_def.sh (Linux)

    Beachten Sie die Anweisungen in der Datei und entfernen Sie gegebenenfalls die Auskommentierungen. Möglicherweise müssen Sie mindestens die folgenden Zeilen auskommentieren:

    • Hostname:

      REM set HOSTNAME=myHostName
      in Windows oder
      #HOSTNAME=`hostname -f`
      in Linux. Entfernen Sie REM oder # und geben Sie den Hostnamen Ihres Computers explizit an.

    • Sicherheitsstufe:

      REM set SECURITY_LEVEL=
      in Windows oder
      #SECURITY_LEVEL=""
      in Linux. Entfernen Sie REM oder # und geben Sie explizit eine Sicherheitsstufe an.

    Andernfalls kann beim Starten des Job-Schedulers später eine Fehlermeldung angezeigt werden.

  • mjs_polyspace.conf

    Ändern Sie die Zeile, die sich auf ein Stammverzeichnis des Polyspace-Serverprodukts bezieht, und entfernen Sie die Auskommentierung. Die Zeile sollte sich auf die Versionsnummer und den Stammordner Ihrer Polyspace-Serverproduktinstallation beziehen. Wenn beispielsweise die Version R2025b von Polyspace Bug Finder Server im Stammordner C:\Program Files\Polyspace Server\R2025b installiert ist, ändern Sie die Zeile wie folgt:

    POLYSPACE_SERVER_ROOT=C:\Program Files\Polyspace Server\R2025b
    

    Andernfalls kann die MATLAB Parallel Server-Installation die Polyspace Bug Finder Server-Installation nicht finden, um die Analyse auszuführen.

Starten der Dienste

Starten Sie die mjs-Dienste und weisen Sie den aktuellen Computer sowohl als Haupt-Knoten als auch als Worker-Knoten zu.

Navigieren Sie zu matlabroot\toolbox\parallel\bin, wobei matlabroot der MATLAB Parallel Server-Installationsordner ist, beispielsweise C:\Program Files\MATLAB\R2025b. Führen Sie die folgenden Befehle aus (direkt in der Befehlszeile oder mithilfe von Skripten):

mjs install
mjs start
startjobmanager -name JobScheduler -remotehost hostname -v
startworker -jobmanagerhost hostname -jobmanager JobScheduler -remotehost hostname -v

Hier ist hostname der Hostname Ihres Computers. Dies ist der Hostname, den Sie in der Datei mjs_def.bat (Windows) oder mjs_def.sh (Linux) angegeben haben. Beachten Sie, dass Sie in Linux den Befehl mjs install nicht benötigen.

Anstelle der Befehlszeile können Sie die Dienste auch über die Admin Center-Schnittstelle starten. Siehe Install Products for Submitting Polyspace Analysis from Desktops to Remote Server.

Weitere Informationen zu den Befehlen finden Sie unter Configure Advanced Options for MATLAB Job Scheduler Integration (MATLAB Parallel Server).

Konfigurieren des Client

Öffnen Sie die Benutzeroberfläche des Desktopprodukts Polyspace Bug Finder. Navigieren Sie zu polyspaceroot\polyspace\bin, wobei polyspaceroot der Installationsordner für das Polyspace-Desktopprodukt ist, beispielsweise C:\Program Files\Polyspace\R2025b, und doppelklicken Sie auf die ausführbare Datei polyspace.

Wählen Sie Tools > Preferences aus. Geben Sie auf der Registerkarte Server configuration den Hostnamen Ihres Computers für Job scheduler host name ein.

Sie sind nun für den Server-Client-Workflow eingerichtet.

Senden der Analyse vom Client an den Server

Führen Sie den Bug Finder für die Datei numerical.c aus, die Sie mit Ihrer Installation erhalten haben.

Bevor Sie diese Schritte ausführen, fügen Sie den Pfad polyspaceroot\polyspace\bin zur PATH-Umgebungsvariablen Ihres Betriebssystems hinzu, um die Eingabe der vollständigen Pfade zu den ausführbaren Dateien von Polyspace zu vermeiden. Hier ist polyspaceroot der Installationsordner für das Desktopprodukt Polyspace, beispielsweise C:\Program Files\Polyspace\R2025b. Um zu überprüfen, ob der Pfad bereits hinzugefügt wurde, öffnen Sie ein Befehlszeilenfenster und geben Sie Folgendes ein:

polyspace-bug-finder -h

Wenn der Pfad zum Befehl bereits hinzugefügt wurde, wird die vollständige Liste der Optionen angezeigt.

  1. Kopieren Sie die Datei numerical.c aus dem Ordner polyspaceroot\polyspace\examples\cxx\Bug_Finder_Example\sources in einen Ordner mit Schreibberechtigung.

  2. Öffnen Sie ein Befehlszeilenfenster. Navigieren Sie zu dem Ordner, in dem Sie numerical.c gespeichert haben, und geben Sie Folgendes ein:

    polyspace-bug-finder -sources numerical.c -checkers numerical -results-dir . -batch -scheduler hostname

    Hier ist hostname der Hostname Ihres Computers.

    Nach der Kompilierung wird die Analyse an einen Server übermittelt und eine Auftrags-ID zurückgegeben. Um eine Code Prover-Analyse durchzuführen, verwenden Sie bitte polyspace-code-prover anstelle von polyspace-bug-finder. Sie können den Befehl polyspace-code-prover nur mit einer Polyspace Bug Finder-Lizenz ausführen, sofern Sie die Option -batch verwenden.

  3. Sehen Sie den Status des aktuellen Auftrags an.

    polyspace-jobs-manager listjobs -scheduler hostname

    Sie können den aktuellen Auftrag mithilfe der Auftrags-ID finden.

  4. Sobald der Auftrag abgeschlossen ist, können Sie die Ergebnisse explizit herunterladen.

    polyspace-jobs-manager download -job jobID -results-folder . -scheduler hostname

    Hier ist jobID die Auftrags-ID aus der Übermittlung.

Der Ordner für die Ergebnisse enthält die heruntergeladene Ergebnisdatei (mit der Erweiterung .psbf). Öffnen Sie die Ergebnisse in der Benutzeroberfläche des Desktopprodukts Polyspace Bug Finder.

Siehe auch

Themen