OVH Cloud OVH Cloud

VS 2005 --> exécutable lent au démarrage !!!!

3 réponses
Avatar
Romuald
Salut à tous,

Depuis que je suis passé à VS2005, je trouve que les applications sont très
lentes au démarrage... du moins au premier démarrage, ensuite c'est mieux si
l'on démarre une seconde fois par exemple...

D'après ce que j'ai compris, le Framework pré-compile l'éxécutable en
langage machine, donc un fort ralentissement...

J'ai utilisé l'outil NGEN, mais je ne vois pas vraiement la différence !!!!

Est ce que quelqu'un aurait trouvé une solution à ce problème ?

3 réponses

Avatar
Mathieu Francesch
Bonsoir,,

Bref rappel de ce qu'il y a sous le capot ;-)

La compilation d'une application DotNet ne produit pas du code machine
binaire mais du code de bas niveau appelé LI (Langage intermédiaire).

Lorsque vous executez votre programme, le CLR (common Language
Runtime) aprés avoir examnié les règles de sécurité, crée un processus
dans lequel il charge votre application. De là, le code est chargé en
mémoire et compilé en code binaire natifpar le compilateur JIT (Just
in Time)

Pour répondre maintenant à votre question, vous pouvez toujours
essayer d'activer les optimisations du compilateur dans la page de
propriété de l'application, dossier "Propriétés de configuration" ->
Optimisations (VB.NET) ou "Propriétés de configuration" -> Générer
(C#)

J'espère que cela vous aidera.


Mathieu





On Wed, 19 Jul 2006 01:17:02 -0700, Romuald
wrote:

Salut à tous,

Depuis que je suis passé à VS2005, je trouve que les applications sont très
lentes au démarrage... du moins au premier démarrage, ensuite c'est mieux si
l'on démarre une seconde fois par exemple...

D'après ce que j'ai compris, le Framework pré-compile l'éxécutable en
langage machine, donc un fort ralentissement...

J'ai utilisé l'outil NGEN, mais je ne vois pas vraiement la différence !!!!

Est ce que quelqu'un aurait trouvé une solution à ce problème ?


Avatar
Romuald
Bonjour Mathieu,

Merci pour ces informations, j'ai regardé dans les différents onglets
"Application", "Compiler", "Déboguer".....

Je pense que c'est dans "Application", mais je ne vois pas "Optimisation
VB.Net".....peux tu être plus précis....

Merci.

"Mathieu Francesch" a écrit :

Bonsoir,,

Bref rappel de ce qu'il y a sous le capot ;-)

La compilation d'une application DotNet ne produit pas du code machine
binaire mais du code de bas niveau appelé LI (Langage intermédiaire).

Lorsque vous executez votre programme, le CLR (common Language
Runtime) aprés avoir examnié les règles de sécurité, crée un processus
dans lequel il charge votre application. De là, le code est chargé en
mémoire et compilé en code binaire natifpar le compilateur JIT (Just
in Time)

Pour répondre maintenant à votre question, vous pouvez toujours
essayer d'activer les optimisations du compilateur dans la page de
propriété de l'application, dossier "Propriétés de configuration" ->
Optimisations (VB.NET) ou "Propriétés de configuration" -> Générer
(C#)

J'espère que cela vous aidera.


Mathieu





On Wed, 19 Jul 2006 01:17:02 -0700, Romuald
wrote:

>Salut à tous,
>
>Depuis que je suis passé à VS2005, je trouve que les applications sont très
>lentes au démarrage... du moins au premier démarrage, ensuite c'est mieux si
>l'on démarre une seconde fois par exemple...
>
>D'après ce que j'ai compris, le Framework pré-compile l'éxécutable en
>langage machine, donc un fort ralentissement...
>
>J'ai utilisé l'outil NGEN, mais je ne vois pas vraiement la différence !!!!
>
>Est ce que quelqu'un aurait trouvé une solution à ce problème ?



Avatar
Mathieu Francesch
Bonsoir Romuald,

Autant pour moi ... (cela m'apprendra à ne pas lire correctement ...) c'est
dans VS2003 que se trouvent ces options ... Pour le démarrage un peu lent de
l'application je ne vois pas trop comment y remédier si ce n'est peut être en
décomposant le projet en plusieurs assemblages afin que la compilation par le
JIT et le chargement en mémoire se fassent plus rapidement ...

Je suspecte Microsoft de ne pas trop se soucier des performances car tout le
monde à des machines puissantes et ce genre de problème tendra à disparaître
;-) ... ... Jusqu'à ce que Microsoft fasse des applications encore plus
gourmande !! Application Vs Machine qui va gagner ???? ;-)

Bonne soirée,

--
Cordialement,

Mathieu Francesch



"Romuald" a écrit :

Bonjour Mathieu,

Merci pour ces informations, j'ai regardé dans les différents onglets
"Application", "Compiler", "Déboguer".....

Je pense que c'est dans "Application", mais je ne vois pas "Optimisation
VB.Net".....peux tu être plus précis....

Merci.

"Mathieu Francesch" a écrit :

> Bonsoir,,
>
> Bref rappel de ce qu'il y a sous le capot ;-)
>
> La compilation d'une application DotNet ne produit pas du code machine
> binaire mais du code de bas niveau appelé LI (Langage intermédiaire).
>
> Lorsque vous executez votre programme, le CLR (common Language
> Runtime) aprés avoir examnié les règles de sécurité, crée un processus
> dans lequel il charge votre application. De là, le code est chargé en
> mémoire et compilé en code binaire natifpar le compilateur JIT (Just
> in Time)
>
> Pour répondre maintenant à votre question, vous pouvez toujours
> essayer d'activer les optimisations du compilateur dans la page de
> propriété de l'application, dossier "Propriétés de configuration" ->
> Optimisations (VB.NET) ou "Propriétés de configuration" -> Générer
> (C#)
>
> J'espère que cela vous aidera.
>
>
> Mathieu
>
>
>
>
>
> On Wed, 19 Jul 2006 01:17:02 -0700, Romuald
> wrote:
>
> >Salut à tous,
> >
> >Depuis que je suis passé à VS2005, je trouve que les applications sont très
> >lentes au démarrage... du moins au premier démarrage, ensuite c'est mieux si
> >l'on démarre une seconde fois par exemple...
> >
> >D'après ce que j'ai compris, le Framework pré-compile l'éxécutable en
> >langage machine, donc un fort ralentissement...
> >
> >J'ai utilisé l'outil NGEN, mais je ne vois pas vraiement la différence !!!!
> >
> >Est ce que quelqu'un aurait trouvé une solution à ce problème ?
>