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

VB.NET Discussion :

Temps d'execution différent entre framework 3.5 et framework 4.0 [Débutant]


Sujet :

VB.NET

  1. #1
    Membre éprouvé

    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Israël

    Informations forums :
    Inscription : Mars 2012
    Messages : 691
    Points : 929
    Points
    929
    Par défaut Temps d'execution différent entre framework 3.5 et framework 4.0
    Bonjour

    Je développe avec le visual2010
    Pour la meme fonction avec les target framework différents j'obtiens un temps d'execution différent

    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
    16
    17
    Private Function FindWordInList(ByVal index As Integer, ByVal permutation As List(Of String)) As List(Of String)
            Dim id As Integer
            Dim t As Date
            Dim p As New TimeSpan
            Dim ms As Double
            t = Date.Now
            Dim listresult As New List(Of String)
            For Each item In permutation
                id = listdico(index).BinarySearch(item)
                ' If id >= 0 Then
                'listresult.Add(item)
                'End If
            Next
            p = Date.Now - t
            ms = p.TotalSeconds
            Return listresult
        End Function
    framework 4.0
    avec les données suivantes permutation une liste de 1814400 de string
    ms = 8.671 secondes

    avec le framework 3.5
    ms = 5.32 secondes

    Comment peut on améliorer le temps d'execution avec le framework 4.0 ?

    Merci

  2. #2
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Points : 9 742
    Points
    9 742
    Billets dans le blog
    3
    Par défaut
    Tu as uniquement changé le framework cible ? Ou as-tu aussi modifié la plateforme cible (x86/x64) ?

  3. #3
    Membre éprouvé

    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Israël

    Informations forums :
    Inscription : Mars 2012
    Messages : 691
    Points : 929
    Points
    929
    Par défaut
    la cible cpu x86 et framework 4

  4. #4
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 177
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 177
    Points : 25 125
    Points
    25 125
    Par défaut
    tu as lancé la méthode plusieurs fois pour voir ?
    car la 1ère exécution comprend le temps de compilation

  5. #5
    Membre éprouvé

    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Israël

    Informations forums :
    Inscription : Mars 2012
    Messages : 691
    Points : 929
    Points
    929
    Par défaut
    Oui
    Toujours pareil avec le framework 3.5 plus rapide

  6. #6
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Si tu ne l'a pas fait, essaie de refaire le test de performance hors Visual Studio (visual studio fermé) pour voir si on constate les mêmes temps d'exécution.

  7. #7
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 177
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 177
    Points : 25 125
    Points
    25 125
    Par défaut
    et en release

  8. #8
    Membre éprouvé

    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Israël

    Informations forums :
    Inscription : Mars 2012
    Messages : 691
    Points : 929
    Points
    929
    Par défaut
    Bonjour

    Oui en release les performances sont améliorées
    Je résume

    en Debug
    framework 4 x86 t = 8.71 sec
    framework 3.5 x86 t = 4.8

    en Release
    framework 4 x86 t = 5.71 sec
    framework 3.5 x86 t = 4.7

    Question quand compiler en mode debug et en mode release ?

  9. #9
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 177
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 177
    Points : 25 125
    Points
    25 125
    Par défaut
    Citation Envoyé par shayw Voir le message
    Question quand compiler en mode debug et en mode release ?
    le mode debug c'est pour depuis vs pour des tests
    microsoft "interdit" de livrer un exe compilé en mode debug, sur des exe qui tournent h24 ils finissent par planter en général d'ailleurs, car en debug ca garde des références

  10. #10
    Membre éprouvé

    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Israël

    Informations forums :
    Inscription : Mars 2012
    Messages : 691
    Points : 929
    Points
    929
    Par défaut
    ah ok merci

  11. #11
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 177
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 177
    Points : 25 125
    Points
    25 125
    Par défaut
    je vois que tu as mis en résolu, mais il n'y a pas vraiment eut d'explication

    je n'ai pas eut le temps de faire de tests, mais il est plausible qu'il y a ait des différences de performance, pas toujours dans ce sens là j'espère ^^

    le framework 3.5 s'appuie sur la CLR du framework 2
    pour le framework 4 la CLR a été réécrite

    la CLR en gros c'est le truc qui compile le code .net msil en code natif et manage l'exécution ...

  12. #12
    Membre éprouvé

    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Israël

    Informations forums :
    Inscription : Mars 2012
    Messages : 691
    Points : 929
    Points
    929
    Par défaut
    je vois que tu as mis en résolu, mais il n'y a pas vraiment eut d'explication
    Oui enfin mon problème est résolu avec le mode release


    J'ai testé le code suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     Dim id As Double
            Dim t As Date
            Dim p As New TimeSpan
            Dim ms As Double
            t = Date.Now
            For iter = 0 To 2 ^ 29
                id = Math.Pow(2, iter)
            Next
            p = Date.Now - t
            ms = p.TotalSeconds
            MessageBox.Show(ms.ToString)
    *

    exe mode release
    les temps framework4 51 sec
    framework 3.5 97 sec

    surprenant

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 29/01/2014, 12h42
  2. Réponses: 2
    Dernier message: 23/12/2013, 16h31
  3. Evaluation temps d'execution différents codes
    Par koluche dans le forum VB.NET
    Réponses: 5
    Dernier message: 28/04/2011, 17h36
  4. Temps d'exécution différents entre Picasa et Gimp ?
    Par byloute dans le forum Imagerie
    Réponses: 0
    Dernier message: 06/05/2010, 16h12
  5. [Débutant] Temps de video différent entre réel et enregistrement
    Par cozo22 dans le forum MATLAB
    Réponses: 2
    Dernier message: 01/04/2008, 12h48

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