IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MATLAB Discussion :

[pcolor] Segmentation Fault en mode nodisplay


Sujet :

MATLAB

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 12
    Points : 7
    Points
    7
    Par défaut [pcolor] Segmentation Fault en mode nodisplay
    Bonjour à tous,
    Je lance un code matlab à l'aide de la commande suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    nohup nice matlab<programme.m> /dev/null &
    Le code marche bien sauf à un seul endroit : au moment ou je sauve une figure.

    Dans ce même programme je sauve des figures normales (une courbe faite avec plot) et des figures faites avec pcolor. Les plot sont sauvés sans problèmes alors que les pcolor font planter matlab : "Segmentation fault".

    J'ai essayé saveas(handle_figure,'nomfigure','format'), pareil avec print, et pour des formats différents (-depsc2, -depsc, -deps), mais rien n'y fait.

    Quand je me log en ssh avec redirection graphique (ssh -X) et que je lance le code par l'interface graphique, aucun problème, le code tourne et sauve correctement les images.

    Pourquoi les plot passent et pas les pcolor pour matlab sans affichage ?... là j'abandonne...

  2. #2
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 302
    Points : 52 884
    Points
    52 884
    Par défaut
    Citation Envoyé par saimonpresshill Voir le message
    les pcolor font planter matlab : "Segmentation fault".
    Tu pourrais recopier le message d'erreur complet... même si il a l'air incompréhensible

    Et quelle est ta version de MATLAB ?
    Ingénieur indépendant en mécatronique - Conseil, conception et formation
    • Conception mécanique (Autodesk Fusion 360)
    • Impression 3D (Ultimaker)
    • Développement informatique (Python, MATLAB, C)
    • Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

  3. #3
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 302
    Points : 52 884
    Points
    52 884
    Par défaut
    A priori, il y a un bug report à ce propos : MATLAB running without display can unexpectedly exit or segment fault when exporting pcolor plot

    Et la solution est (pour l'instant) très simple :
    Workaround

    Do not use the -nodisplay option when exporting pcolor plots.
    Ingénieur indépendant en mécatronique - Conseil, conception et formation
    • Conception mécanique (Autodesk Fusion 360)
    • Impression 3D (Ultimaker)
    • Développement informatique (Python, MATLAB, C)
    • Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    Toujours aussi rapide !
    Merci beaucoup.
    Bon et bien tant pis. Je vais essayer de trouver autre chose que pcolor....

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 12
    Points : 7
    Points
    7
    Par défaut idem avec surf
    J'ai essayé de contourner pcolor en faisant un surf vu du dessus, et même résultat.

    Réponse du support de matlab :
    Après vérification dans notre base de données, il semble que d'autres clients aient rencontre le même problème que vous avec la commande "surf" a la place de "pcolor". Notre équipe de développement étudie activement ce bug (publié comme vous l'avez noté sur notre site web).

    Le status de cette étude est le suivant:

    Severity: High
    Frequency: medium.

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 12
    Points : 7
    Points
    7
    Par défaut contourf marche
    Finalement je contourne avec un contourf qui convient pour mon application. Cette fonction passe en nodisplay la figure créée est sauvée sans problème.

  7. #7
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 302
    Points : 52 884
    Points
    52 884
    Par défaut
    C'est cool pour toi

    Avais-tu essayé en modifiant la propriété Renderer de l'objet Figure avec PCOLOR ?

    Je ne saurais pas dire si ça peut avoir un effet ou pas... il faudrait tester.
    Ingénieur indépendant en mécatronique - Conseil, conception et formation
    • Conception mécanique (Autodesk Fusion 360)
    • Impression 3D (Ultimaker)
    • Développement informatique (Python, MATLAB, C)
    • Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    Il doit y avoir quelque chose par là effectivement. Le support Matlab m'a demandé d'essayer en exécutant la commande suivante avant mon code Mais cela n'a rien changé.
    Je vais regarder un peu plus ce renderer.

  9. #9
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    Youpi ! tu avais raison, c'etait bien le renderer qui était en tort. Voilà ce que j'obtenais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     >>figure;
    >>plot(rand(1,20));
    >>get(gcf,'Renderer')
    ans =
     
    painters
     
    >>pcolor(rand(20));
    >>get(gcf,'Renderer')
    ans =
     
    zbuffer
    En insérant après mon pcolor :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    set(gcf,'Renderer','painters')
    je n'ai plus de problème, et les figures se sauvent correctement.
    Merci pour m'avoir indiquer la piste !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Pb segmentation fault avec glutinit()
    Par pipistrelle dans le forum GLUT
    Réponses: 2
    Dernier message: 17/11/2004, 23h17
  2. [SDL_Image] Img_Load : segmentation fault ....
    Par Mathieu.J dans le forum OpenGL
    Réponses: 6
    Dernier message: 19/10/2004, 23h52
  3. [REDHAT] Segmentation fault systematique
    Par mela dans le forum RedHat / CentOS / Fedora
    Réponses: 2
    Dernier message: 21/09/2004, 06h05
  4. Réponses: 13
    Dernier message: 13/07/2004, 15h41
  5. Comment contrer la "segmentation fault" ?
    Par guillaume_pfr dans le forum C
    Réponses: 15
    Dernier message: 08/08/2003, 13h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo