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 :

Rapidité C++ vs VB.NET


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Rapidité C++ vs VB.NET
    Bonjour à tous,
    On m'a dit que le C++ était très rapide, plus rapide que le VB.NET
    Alors, j'ai fais deux teste, pour comparer la rapidité des deux langages.

    VB.NET :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Module Module1
     
        Sub Main()
            For i As Integer = 0 To 1000000
                Console.WriteLine(i)
            Next
     
            Console.ReadLine()
        End Sub
     
    End Module
    C++ :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    #include <iostream>
     
    using namespace std;
     
    int main()
    {
    	for (int compteur = 0 ; compteur < 1000000 ; compteur++)
    	{
    		cout << compteur << endl;
    	}
     
    	char repo;
    	cin >> repo;
    	return 0;
    }
    A ma grande surprise, le VB.NET allait trois fois plus vite que le C++ avec pourtant exactement le même code !
    Savez-vous pourquoi ça c'est passé ainsi ?

  2. #2
    Membre Expert
    Avatar de Klaim
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Août 2004
    Messages
    1 717
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 1 717
    Par défaut
    1. Comment as-tu mesurer?
    2. Est-ce que tu as compile en configuration "Debug"? Si oui ca n'a aucun sens de tester les performances dans ce mode. Il faut le faire dans la configuration finale, en "Release" par defaut sous VS.
    3. Remplace endl par '\n'. Sauf si tu feux flusher la console a chaque output, ce que VB ne fait certainement pas.
    4. Au passage, pour ce genre de code, VB.Net devrait avoir des performances similaires (mais certainement en defaveur de .Net). C'est plutot avec des manipulations complexes et lourdes que tu vas voir une reelle difference. Essaie avec quelque chose de plus realiste?

  3. #3
    Invité
    Invité(e)
    Par défaut
    Merci pour ta réponse

    1. Comment as-tu mesurer?
    J'ai mesuré en fonction du temps qui s'écoulait du début du traitement jusqu’à la fin du traitement.

    2. Est-ce que tu as compile en configuration "Debug"? Si oui ca n'a aucun sens de tester les performances dans ce mode. Il faut le faire dans la configuration finale, en "Release" par defaut sous VS.
    J'ai bien fait l'opération en Release

    3. Remplace endl par '\n'. Sauf si tu feux flusher la console a chaque output, ce que VB ne fait certainement pas.
    Même résultat ...

    4. Au passage, pour ce genre de code, VB.Net devrait avoir des performances similaires (mais certainement en defaveur de .Net). C'est plutot avec des manipulations complexes et lourdes que tu vas voir une reelle difference. Essaie avec quelque chose de plus realiste?
    Pour l'instant, je veux juste tester ça
    Une fois que j'aurai compris, j'essayerai surement d'autre chose.

    Par contre, j'ai remarqué que l'application C++ prenait seullement 620K de mémoire, alors que le programme en VB.NET en prend 2816K !

    Comment augmenter la mémoire du programme C++ pour le faire accélérer ?

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 146
    Billets dans le blog
    4
    Par défaut
    La vitesse d'exécution n'a strictement rien à voir avec la mémoire allouée pendant son exécution.
    Par ailleurs ta méthode de "calcul" de la vitesse d'exécution me semble... Bancale pour ne pas dire ridicule et naze.
    Vue la simplicité du code, la différence sera probablement inférieure à la seconde, et je doute très grandement que tu aies une telle précision.
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  5. #5
    Invité
    Invité(e)
    Par défaut
    OK ok
    Bref, j’abandonne ce test.

    Tu n'aurai pas une idée de programme qui montrerai vraiment la différence entre les deux langages ?

  6. #6
    Membre Expert
    Avatar de Joel F
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Septembre 2002
    Messages
    918
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2002
    Messages : 918
    Par défaut
    un bete produit scalaire de deux tableaux de N > 10^6 elements de type double

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 07/07/2014, 11h29
  2. Comment expliquer la rapidité du référencement de developpez.net
    Par CUCARACHA dans le forum Référencement
    Réponses: 5
    Dernier message: 01/07/2009, 00h14
  3. De la rapidité du code
    Par jfloviou dans le forum Contribuez
    Réponses: 233
    Dernier message: 29/05/2009, 02h17
  4. rapidité de traitement en Dot net
    Par reverse_engineer dans le forum Débuter
    Réponses: 8
    Dernier message: 17/08/2008, 18h25
  5. Fichier PDOXUSRS.NET
    Par yannick dans le forum Paradox
    Réponses: 5
    Dernier message: 05/04/2002, 09h45

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