Contenu principal

Envoyer l'analyse Bug Finder du desktop vers un serveur hébergé localement

Vous pouvez effectuer une analyse Polyspace® localement sur votre desktop ou décharger l'analyse sur un ou plusieurs serveurs dédiés. Cette section présente une configuration serveur-client simple permettant de décharger l'analyse Polyspace. Dans cette configuration, le même ordinateur fait office de client qui soumet une analyse Polyspace et de serveur qui exécute l'analyse.

Vous pouvez étendre ce tutoriel à des configurations plus complexes. Pour obtenir des instructions complètes concernant l'installation et le workflow, consultez les liens ci-dessous.

Remarque

Les versions de Polyspace sur les ordinateurs client et serveur doivent coïncider.

Workflow client-serveur pour l’exécution d’analyses

Après la configuration initiale, vous pouvez soumettre une analyse Polyspace depuis le desktop client vers un serveur. Le workflow client-serveur se déroule en trois étapes. Les trois étapes peuvent être effectuées sur le même ordinateur ou sur trois ordinateurs différents. Ce tutoriel utilise le même ordinateur pour l'ensemble du workflow.

  1. Nœud client : spécifiez les options d'analyse Polyspace et lancez l'analyse sur le desktop client. La phase initiale de l'analyse jusqu'à la compilation s’exécute sur le desktop. Après la compilation, le job d’analyse est soumis au serveur.

    Vous avez besoin du produit Polyspace pour desktop, Polyspace Bug Finder™, sur l'ordinateur qui fait office de nœud client.

  2. Nœud principal : le serveur se compose d'un nœud principal et de plusieurs nœuds de travail. Le nœud principal utilise un job scheduler pour gérer les soumissions provenant de plusieurs desktops client. Les jobs sont ensuite distribués aux nœuds de travail au fur et à mesure de leur disponibilité.

    Vous avez besoin du produit MATLAB® Parallel Server™ sur l'ordinateur qui fait office de nœud principal.

  3. Nœuds de travail : lorsqu'un nœud de travail est disponible, le job scheduler lui attribue l'analyse. L'analyse Polyspace s’exécute sur le nœud de travail et les résultats sont téléchargés sur le desktop client en vue de la revue.

    Vous avez besoin du produit MATLAB Parallel Server sur les ordinateurs qui font office de nœuds de travail. Vous avez également besoin du produit Polyspace pour serveur, Polyspace Bug Finder Server™, pour exécuter l’analyse.

Voir aussi Install Products for Submitting Polyspace Analysis from Desktops to Remote Server.

Prérequis

Ce tutoriel utilise un seul et même ordinateur en tant que client et serveur. Vous devez installer les éléments suivants sur l’ordinateur :

  • Produit côté client : Polyspace Bug Finder

  • Produit côté serveur : MATLAB Parallel Server and Polyspace Bug Finder Server

Pour plus d’informations, consultez Install Products for Submitting Polyspace Analysis from Desktops to Remote Server.

Vous devez connaître le nom d’hôte de votre ordinateur. Par exemple, dans Windows®, ouvrez un terminal en ligne de commande et saisissez :

hostname

Configurer et démarrer le serveur

Arrêter les services antérieurs

Si vous avez lancé auparavant les services de MATLAB Parallel Server (services mjs), veillez à avoir arrêté tous les services. Vous devrez peut-être en particulier :

  • Vérifier votre dossier temporaire, par exemple, C:\Windows\Temp dans Windows, et supprimer l’éventuel dossier MDCE.

  • Arrêter explicitement tous les services. Cette étape n’est pas nécessaire dans Linux®.

    Ouvrez un terminal de ligne de commande. Accédez à matlabroot\toolbox\parallel\bin (avec cd) et saisissez ce qui suit :

    mjs uninstall -clean

    Ici, matlabroot est le dossier d’installation de MATLAB Parallel Server, par exemple, C:\Program Files\MATLAB\R2025b.

Si vous lancez les services pour la première fois, vous n'avez pas besoin d’effectuer ces étapes.

Configurer les paramètres de service mjs

Avant de lancer les services, vous devez configurer les paramètres de service mjs. Accédez à matlabroot\toolbox\parallel\bin, où matlabroot est le dossier d’installation de MATLAB Parallel Server, par exemple, C:\Program Files\MATLAB\R2025b. Modifiez ces deux fichiers. Pour modifier et enregistrer ces fichiers, vous devez ouvrir votre éditeur en mode administrateur.

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

    Lisez les instructions du fichier et supprimez les commentaires des lignes selon les besoins. Au minimum, vous devrez peut-être supprimer les commentaires de ces lignes :

    • Nom d’hôte :

      REM set HOSTNAME=myHostName
      dans Windows ou
      #HOSTNAME=`hostname -f`
      dans Linux. Supprimez REM ou # et indiquez explicitement le nom d'hôte de votre ordinateur.

    • Niveau de sécurité :

      REM set SECURITY_LEVEL=
      dans Windows ou
      #SECURITY_LEVEL=""
      dans Linux. Supprimez REM ou # et indiquez explicitement un niveau de sécurité.

    Sinon, une erreur risque de survenir plus tard lorsque vous lancerez le job scheduler.

  • mjs_polyspace.conf

    Modifiez la ligne qui fait référence à une racine de produit Polyspace pour serveur et supprimez son commentaire. La ligne doit faire référence au numéro de version et au dossier racine de l'installation de votre produit Polyspace pour serveur. Par exemple, si la version R2025b de Polyspace Bug Finder Server est installée dans le dossier racine C:\Program Files\Polyspace Server\R2025b, modifiez la ligne en :

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

    Sinon, l'installation MATLAB Parallel Server ne peut pas localiser l’installation Polyspace Bug Finder Server pour exécuter l'analyse.

Lancer les services

Lancez les services mjs et attribuez à l'ordinateur actuel le rôle de nœud principal et de nœud de travail.

Accédez à matlabroot\toolbox\parallel\bin, où matlabroot est le dossier d’installation de MATLAB Parallel Server, par exemple, C:\Program Files\MATLAB\R2025b. Exécutez ces commandes (directement au niveau de la ligne de commande ou au moyen de scripts) :

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

Ici, hostname désigne le nom d’hôte de votre ordinateur. Il s’agit du nom d’hôte que vous avez spécifié dans le fichier mjs_def.bat (Windows) ou mjs_def.sh (Linux). Remarque : dans Linux, vous n’avez pas besoin de la commande mjs install.

Au lieu d'utiliser la ligne de commande, vous pouvez également lancer les services à partir de l'interface Admin Center. Consultez Install Products for Submitting Polyspace Analysis from Desktops to Remote Server.

Pour plus d’informations sur les commandes, consultez Configure Advanced Options for MATLAB Job Scheduler Integration (MATLAB Parallel Server).

Configurer un client

Ouvrez l’interface utilisateur du produit pour desktop, Polyspace Bug Finder. Accédez à polyspaceroot\polyspace\bin, où polyspaceroot est le dossier d’installation du produit Polyspace pour desktop, par exemple, C:\Program Files\Polyspace\R2025b et double-cliquez sur le fichier exécutable polyspace.

Sélectionnez Tools > Preferences. Dans l’onglet Server configuration, saisissez le nom d’hôte de votre ordinateur pour Job scheduler host name.

Vous en avez à présent terminé avec le workflow serveur-client.

Envoyer une analyse du client vers le serveur

Exécutez Bug Finder sur le fichier numerical.c fourni avec votre installation.

Avant d’exécuter cette procédure, pour éviter d’avoir à taper le chemin complet des fichiers exécutables Polyspace, ajoutez le chemin polyspaceroot\polyspace\bin à la variable d’environnement PATH de votre système d’exploitation. Ici, polyspaceroot est le dossier d’installation du produit Polyspace pour desktop, par exemple, C:\Program Files\Polyspace\R2025b. Pour vérifier si le chemin a déjà été ajouté, ouvrez un terminal en ligne de commande et saisissez :

polyspace-bug-finder -h

Si le chemin de la commande a déjà été ajouté, la liste complète des options apparaît.

  1. Copiez le fichier numerical.c depuis polyspaceroot\polyspace\examples\cxx\Bug_Finder_Example\sources vers un autre dossier pour lequel vous possédez des droits d’écriture.

  2. Ouvrez un terminal de commande. Accédez au dossier dans lequel vous avez enregistré numerical.c et saisissez ce qui suit :

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

    Ici, hostname désigne le nom d’hôte de votre ordinateur.

    Après la compilation, l’analyse est soumise à un serveur et renvoie l’ID d’un job. Pour exécuter une analyse Code Prover, utilisez polyspace-code-prover plutôt que polyspace-bug-finder. Vous pouvez exécuter la commande polyspace-code-prover avec une licence Polyspace Bug Finder, à condition d'utiliser l'option -batch.

  3. Consultez le statut du job actuel.

    polyspace-jobs-manager listjobs -scheduler hostname

    Vous pouvez localiser le job actuel à l'aide de son ID.

  4. Une fois le job terminé, vous pouvez explicitement télécharger les résultats.

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

    Ici, jobID est l’ID de job issu de la soumission.

Le dossier des résultats contient le fichier de résultats téléchargé (avec l’extension .psbf). Ouvrez les résultats dans l’interface utilisateur du produit pour desktop, Polyspace Bug Finder.

Voir aussi

Rubriques