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

C++ Discussion :

Blocage en mode debug


Sujet :

C++

  1. #1
    Membre habitué
    Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2010
    Messages
    382
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2010
    Messages : 382
    Points : 174
    Points
    174
    Par défaut Blocage en mode debug
    Bonjour,

    J'ai un problème en mode Debug lorsque j’exécute cette boucle pour deux vecteurs de 1 500 000 points et j'affiche les points

    Voici ce bout de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    for (int i=0; i<n; i++)
    	{
    		w = 0;
    		for (int j=0; j<=i; j++)
    		{
    			w += vS.at(i-j) * vY.at(j);
    		}
    		vW.push_back(w);
    	}
    l’exécution se bloque et le résultat ne s'affiche pas
    Par contre en mode release pas de problème
    Comment je peux résoudre ce problème??

    Merci d'avance

  2. #2
    Expert confirmé

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2007
    Messages
    1 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 895
    Points : 4 551
    Points
    4 551
    Par défaut
    Que veux tu dire par "le programme se bloque" ?

    De ce que je vois, le code peut être excessivement lent (surtout si n est très grand) mais je ne vois pas pourquoi ça bloquerait.
    [FAQ des forums][FAQ Développement 2D, 3D et Jeux][Si vous ne savez pas ou vous en êtes...]
    Essayez d'écrire clairement (c'est à dire avec des mots français complets). SMS est votre ennemi.
    Evitez les arguments inutiles - DirectMachin vs. OpenTruc ou G++ vs. Café. C'est dépassé tout ça.
    Et si vous êtes sages, vous aurez peut être vous aussi la chance de passer à la télé. Ou pas.

    Ce site contient un forum d'entraide gratuit. Il ne s'use que si l'on ne s'en sert pas.

  3. #3
    Membre habitué
    Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2010
    Messages
    382
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2010
    Messages : 382
    Points : 174
    Points
    174
    Par défaut
    Merci pour la réponse,

    ça bloque càd n'a pas terminé et je l'ai arrêté

    moi ce que je ne comprend pas pourquoi en mode de Release l'execution est plus rapide qu'en mode Debug

    Merci

  4. #4
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Points : 13 017
    Points
    13 017
    Par défaut
    Salut,
    Citation Envoyé par 3aychoucha Voir le message
    moi ce que je ne comprend pas pourquoi en mode de Release l'execution est plus rapide qu'en mode Debug
    Parce qu'en général, en mode release, les options d'optimisations sont activées. Ce qui à priori à l'air d'être efficace

  5. #5
    Membre habitué
    Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2010
    Messages
    382
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2010
    Messages : 382
    Points : 174
    Points
    174
    Par défaut
    Citation Envoyé par 3DArchi Voir le message
    Salut,
    Parce qu'en général, en mode release, les options d'optimisations sont activées.
    Merci 3DArchi
    Pouvez vous SVP m'expliquer comment les options d'optimisations sont activées? Pus de détails SVP

    Merci d'avance

  6. #6
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 859
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 859
    Points : 218 580
    Points
    218 580
    Billets dans le blog
    120
    Par défaut
    Bonjour,

    Les optimisations sont activées en spécifiant des options pour le compilateur
    Pour GCC /G++, l'option -O2 active des optimisations
    Après, ces options dépendent de votre compilateur. Mais si vous utilisez un éditeur avancée comme Code::Blocks / Visual Studio, le fait de changer entre "Debug" et "Release" active les optimisations (l'éditeur est configuré par défaut pour avoir les options d'optimisation en mode "Release"). Toutefois, tout est reconfigurable. Dans les options de compilations (Option du projet -> Compilation), vous pouvez retrouver tout ce dont vous avez besoin.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  7. #7
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Points : 13 017
    Points
    13 017
    Par défaut
    Citation Envoyé par 3aychoucha Voir le message
    Merci 3DArchi
    Pouvez vous SVP m'expliquer comment les options d'optimisations sont activées? Pus de détails SVP

    Merci d'avance
    Comme le dit LittleWhite, la première question est : Quel compilateur/environnement de développement utilises-tu ? Visual C++, Code::Block, eclipse, netbeans, compilation en ligne (avec ou sans makefile),... ?

  8. #8
    Membre habitué
    Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2010
    Messages
    382
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2010
    Messages : 382
    Points : 174
    Points
    174
    Par défaut
    Merci LittleWhite & 3DArchi,

    J'utilise Visual C++

    Merci

  9. #9
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Points : 13 017
    Points
    13 017
    Par défaut
    Salut,
    Tu affiches les propriétés du projet : ALT+F7 (ou menu contextuel). Dans l'arbre de gauche de la boîte de dialogue qui apparaît, Configuration Properties -> C/C++ -> Optimization, sur la feuille de droite c'est alors la première ligne.

  10. #10
    Membre habitué
    Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2010
    Messages
    382
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2010
    Messages : 382
    Points : 174
    Points
    174
    Par défaut
    Merci 3DArchi,

    alors quelle option faut-il choisir??? s'il faut choisir l'optimisation élevée alors pourquoi elle n'est pas mise par défaut pour avoir une meilleure performance?????

    Merci

  11. #11
    Membre confirmé Avatar de themadmax
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    446
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 446
    Points : 496
    Points
    496
    Par défaut
    alors quelle option faut-il choisir??? s'il faut choisir l'optimisation élevée alors pourquoi elle n'est pas mise par défaut pour avoir une meilleure performance?????
    Ben parce qu'en Debug, c'est configuré pour faire du Debug, donc lent, pas optimisé mais avec tout les fichiers aidant a faire un lien entre ton code et le code compilé.
    Et Release tout est inversé: optimisé, et pas la possibilité de Debuger.
    C'est Dingue comme le monde est bien fait quand même!
    ________________________________________________
    http://bliquid.fr : Blog sur Android et l'Acer Liquid

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

Discussions similaires

  1. [Débutante] Compréhension programme - mode debug
    Par bolo dans le forum Assembleur
    Réponses: 14
    Dernier message: 07/01/2005, 18h33
  2. Détection mode debug
    Par paradise dans le forum Langage
    Réponses: 5
    Dernier message: 30/11/2004, 19h55
  3. Mode debug
    Par sivaller dans le forum Assembleur
    Réponses: 9
    Dernier message: 12/10/2004, 13h33
  4. chargement DLL mode debug/release
    Par bihorece dans le forum C++Builder
    Réponses: 3
    Dernier message: 21/06/2004, 14h05
  5. Recupération lors d'un plantage (en mode debug)
    Par aRCHiMeD dans le forum MFC
    Réponses: 3
    Dernier message: 15/01/2004, 17h09

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