none
Performances différentes en WPF suivant l'écran d'affichage RRS feed

  • Question

  • Bonjour,

    Je vais actuellement quelques essais pour passer mon programme en WPF, et en même temps je regarde les différences de perfs entre le redimensionnement automatique de l'image, suivant la taille de l'image de base (exemple, que consomme-t-on en doublant la taille d'une image, par rapport à ce que l'on consomme en travaillant sur une image directement 2 fois plus grande).

    Bref, j'ai rencontré un comportement très étrange au niveau des perfs suivant l'écran où se situe la fenêtre ( je travaille sur un pc portable, avec un second écran sur la prise vga).

    Donc sur l'écran du portable, je prends 70 à 90% du cpu.

    Et sur le deuxième écran : 10 à 20% :

    (J'ai vérifié avec le gestionnaire de tâches, à 2-3% près, c'est ce qu'il me trouve aussi).

    Bon, la première chose qui me vient à l'esprit c'est que c'est totalement illogique, la seconde serait que seul un des deux écrans bénéficierait de l'accélération graphique, ce qui est aussi illogique. D'autant plus que la version GDI+ du programme ne consomme pas pour autant 80% du cpu, et fait beaucoup plus de choses.

    Du coup je viens à la recherche d'informations là dessus, savoir si c'est un comportement possible sur certaines vieilles configurations (c'est un pc sous xp qui date de 2007), ou si c'est plus probablement un souci dans mon programme (sachant que j'ai essayer de tout désactiver sauf l'affichage des images, et j'ai le même comportement).

    Merci de votre aide.

    mercredi 11 juillet 2012 09:09

Réponses

  • Là en fait c'était l'inverse, les perfs s'amélioraient une fois la fenêtre déplacée sur l'autre écran.

    Bon, j'ai "réglé" le problème... En redémarrant la caméra (j'avais redémarré le pc, changé les câbles, mais pas débranché l'alimentation), maintenant j'ai quelques chose de semblable sur chacun des écrans.

    Ça n'explique pas mon problème par contre, j'ai pensé au fait qu'elle m'envoyait pas mal de trames corrompues, et donc de mon côté ça s'affolait à traiter tout et en redemander de bonnes, mais ça n'explique pas les meilleurs performances sur l'autre écran.

    Le mystère reste entier (mais maintenant, je sais comment le "résoudre" s'il se reproduit).

    Merci pour votre aide.

    • Marqué comme réponse Robix66 jeudi 12 juillet 2012 10:02
    jeudi 12 juillet 2012 10:02

Toutes les réponses

  • Intéressant mais vous pourriez donner votre code ?

    Richard Clark
    Consultant - Formateur .NET
    http://www.c2i.fr
    Depuis 1996: le 1er site .NET francophone

    mercredi 11 juillet 2012 13:43
  • Bonjour,

    L'appli démarre directement sur l'écran où elle est testée ou elle démarre sur un écran et est déplacée ensuite sur l'autre ? Je crois me souvenir d'un problème du même style avec DirectX, la performance étant dégradée lorsque l'appli est déplacée sur un autre moniteur (ce problème est peut-être résolu sur Vista et +, le modèle de programmation des pilotes ayant changé).


    Please always mark whatever response solved your issue so that the thread is properly marked as "Answered".

    mercredi 11 juillet 2012 16:22
    Modérateur
  • Là en fait c'était l'inverse, les perfs s'amélioraient une fois la fenêtre déplacée sur l'autre écran.

    Bon, j'ai "réglé" le problème... En redémarrant la caméra (j'avais redémarré le pc, changé les câbles, mais pas débranché l'alimentation), maintenant j'ai quelques chose de semblable sur chacun des écrans.

    Ça n'explique pas mon problème par contre, j'ai pensé au fait qu'elle m'envoyait pas mal de trames corrompues, et donc de mon côté ça s'affolait à traiter tout et en redemander de bonnes, mais ça n'explique pas les meilleurs performances sur l'autre écran.

    Le mystère reste entier (mais maintenant, je sais comment le "résoudre" s'il se reproduit).

    Merci pour votre aide.

    • Marqué comme réponse Robix66 jeudi 12 juillet 2012 10:02
    jeudi 12 juillet 2012 10:02