Test de performance des étiquettes de texte individuelles et des bitmaps sur un graphique - page 3

 
Renat:

J'ai posté un test mis à jour. Il indique maintenant la résolution utilisée et donne une indication sur la manière de la tester.

Eh bien, c'est à peu près ce que nous faisons.
 
sergeev:


En général, tous les tests montrent que les bitmaps sont en quelque sorte plus lents.

+ J'ai des doutes sur l'exactitude de l'obligation de lire la coordonnée du marqueur. Pourquoi vérifier le convoyeur ?

En fait, les tests montrent que ce n'est pas plus lent. Du moins pas sur les processeurs modernes.

Voici mon résultat sur i7-3770S, Windows 8 x64, 16 RAM, NVIDIA GeForce GT 640M :

2013.04.27 22:21:50     BenchmarkLabel (EURUSD,M15)     Тестирование завершено
2013.04.27 22:21:50     BenchmarkLabel (EURUSD,M15)     5. Время обновления текста и позиций у битмапа без прозрачности = 15007 ms
2013.04.27 22:21:35     BenchmarkLabel (EURUSD,M15)     4. Время обновления текста и позиций у битмапа с прозрачностью = 15257 ms
2013.04.27 22:21:20     BenchmarkLabel (EURUSD,M15)     3. Время обновления текста и позиций у меток со чтением = 16739 ms
2013.04.27 22:21:03     BenchmarkLabel (EURUSD,M15)     2. Время обновления текста и позиций у меток без чтения = 18845 ms
2013.04.27 22:20:44     BenchmarkLabel (EURUSD,M15)     1. Время обновления текста у меток без чтения = 21497 ms
2013.04.27 22:20:23     BenchmarkLabel (EURUSD,M15)     0. Время разогрева динамических очередей без визуализации = 124 ms
2013.04.27 22:20:23     BenchmarkLabel (EURUSD,M15)     Для корректного теста подберите размер окна 1024 x 768 пикселей, без индикаторов, не трогайте ничего, не сворачивайте и не закрывайте окна
2013.04.27 22:20:23     BenchmarkLabel (EURUSD,M15)     Разрешение чарта: 1020 x 761 пикселей

Bitmap a 15,257ms avec toutes les transparences contre 21,497ms pour les tags.

Les vérifications du pipeline sont importantes car le travail dans le monde réel implique souvent de lire les paramètres des objets avant de les modifier. Et plus le mélange lecture/écriture est fréquent dans les objets, plus la modification des objets sera lente. La meilleure stratégie pour modifier des objets consiste à lire d'abord en vrac puis à écrire en vrac, en évitant le mélange. Surtout si vous avez des milliers d'objets sur le graphique.


Le résultat le plus important du test est qu'il n'y a pas de décalage de plusieurs, dix ou cinquante fois dans les bitmaps. Même s'il peut y avoir un décalage comme dans les mesures ci-dessus (mais il y a des questions sur la taille et la configuration du tableau de travail), elles sont à une douzaine de pour cent près.

Mais avec tout cela, un bitmap a une perspective énorme sur la vitesse avec plus d'objets, une qualité de rendu accrue (y compris la transparence) et la possibilité de rendre ce que vous voulez.

 

Vous pouvez le mettre en place encore plus rapidement :

1. Réduisez la fenêtre du graphique de sorte que le canevas créé couvre ~100% de celle-ci.

2. Définir un schéma de couleurs pour le graphique monochrome (via propriétés -> couleurs -> schéma de couleurs)/.

3. Réduisez l'échelle du graphique au minimum (bougies à la taille maximale).

Mais. Comme vous pouvez le constater, bien que les chiffres absolus de l'indice de référence soient plus bas, leurs valeurs relatives seront +/- les mêmes.

 

Notez comment un composant de l'ordinateur a fait chuter les performances de la manipulation d'objets mixtes d'un facteur 3(test de sanyooooook) :

:

Il est fort probable que le processeur (les verrous l'ont tué ?) et la mémoire soient en cause. Il est intéressant de savoir quel processeur a été utilisé.

Ou peut-être que l'ordinateur était simplement stressé ou que l'écran était saccadé au moment de ce test.

 
sergeev:

Mais je dessinerais des graphiques avec un bitmap. car il n'y a pas d'options :) aussi des tableaux multi-objets.

Un bitmap présente autant d'avantages que les objets.

Je suis d'accord. Chaque composant est bon pour son objectif. Les bitmaps sont indispensables, par exemple, pour dessiner des éléments d'interface. Eh bien, il n'y a pas d'autres options.

Mais il est plus rapide/efficace de sortir les statistiques avec des balises. :)

 
voix_kas:

Mais. Comme vous pouvez le constater, bien que les chiffres absolus du benchmark soient plus bas, leurs valeurs relatives seront +/- les mêmes.

J'ai volontairement spécifié les conditions d'entrée, afin qu'il n'y ait pas d'erreurs aléatoires et que chacun comprenne les exigences d'une mesure propre.

Votre résultat de 2355ms dans l'un des tests a été causé par le fait que vous avez caché/caché/coulé/commuté la fenêtre du terminal pendant le test :

2013.04.27 20:09:37     BenchmarkObjects (EURUSD,M5)    5. Время обновления текста и позиций у битмапа без прозрачности = 12558 ms
2013.04.27 20:09:24     BenchmarkObjects (EURUSD,M5)    4. Время обновления текста и позиций у битмапа с прозрачностью = 12839 ms
2013.04.27 20:09:11     BenchmarkObjects (EURUSD,M5)    3. Время обновления текста и позиций у меток с чтением = 2355 ms
2013.04.27 20:09:09     BenchmarkObjects (EURUSD,M5)    2. Время обновления текста и позиций у меток без чтения = 10655 ms
2013.04.27 20:08:58     BenchmarkObjects (EURUSD,M5)    1. Время обновления текста у меток без чтения = 10359 ms
2013.04.27 20:08:48     BenchmarkObjects (EURUSD,M5)    0. Время разогрева динамических очередей без визуализации = 124 ms
 
Vous serez peut-être surpris, mais ce test (n° 3) ne fonctionne pas pour moi. J'ai écrit au SD(#732578). Plus précisément, elle passe dans un cas sur douze. Aucune notification ou erreur dans le journal. Le terminal se bloque pendant la durée de ce test.
 
papaklass:

Mon test de bureau

Oui, Renat, quelle résolution vous avez choisie. Il m'a fallu un certain temps pour tout trouver sur l'écran après 1920 x 1080. Je vais l'exécuter sur mon ordinateur portable maintenant.

Merci pour les résultats. Les bitmaps sont aussi de plus en plus rapides.

 
voix_kas:
Vous serez peut-être surpris, mais ce test (n° 3) ne fonctionne pas pour moi. J'ai écrit au SD(#732578). Plus précisément, elle passe dans un cas sur douze. Aucune notification ou erreur dans le journal. Le terminal se bloque pendant un moment lors de la réalisation de ce test.
Merci, nous allons y réfléchir.
 
Renat:

Notez comment un composant de l'ordinateur a fait chuter les performances de la manipulation d'objets mixtes d'un facteur 3(test de sanyooooook) :

:

Il est fort probable que le processeur (les verrous l'ont tué ?) et la mémoire soient en cause. Il est intéressant de savoir quel processeur a été utilisé.

Ou peut-être que l'ordinateur était simplement stressé ou que l'écran était secoué au moment de ce test.

Pendant le premier test, j'ai changé de fenêtre, pendant le second je n'ai rien touché du tout, en même temps MT4 est en cours d'exécution dans celui-ci un script est en cours d'exécution graphique et quelques autres processus qui peuvent charger l'ordinateur ).