Grafikte tek tek metin etiketleri ve bit eşlemlerle çalışmanın performans testi - sayfa 3

 
Renat :

Genişletilmiş bir test yayınladı. Şimdi kullanılan çözünürlüğü ve nasıl test edileceğine dair bir ipucu ile gösteriyor.

işte biz böyle yapıyoruz.
 
sergeev :


Genel olarak, tüm testler bitmap'lerin bir şekilde daha yavaş olduğunu gösterir.

+ İşaretin koordinatlarını okumanın varlığının doğruluğu konusunda şüphelerim var. boru hattını neden kontrol ettin?

Aslında, testler daha yavaş olmadığını gösteriyor. En azından modern işlemcilerde.

İşte i7-3770S, Windows 8 x64, 16 RAM, NVIDIA GeForce GT 640M'deki sonucum:

 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, etiketler için 21.497ms'ye karşılık tüm şeffaflık ile 15.257ms'ye sahiptir.

İşlem hattı doğrulaması önemlidir çünkü gerçek çalışma genellikle nesne parametrelerini değiştirmeden önce okumayı içerir. Ve nesneler için okuma / yazma karışımı ne kadar sık olursa, nesnelerin değiştirilmesi o kadar yavaş çalışır. Nesneleri değiştirmek için en iyi strateji, önce toplu olarak okumak, ardından karışıklığı önleyerek toplu olarak yazmaktır. Özellikle haritada binlerce nesneniz varsa.


Testin en önemli sonucu, bitmaplerde çoklu, on kat veya elli kat gecikme olmamasıdır. Yukarıdaki ölçümlerde olduğu gibi bir gecikme olsa bile (ama çalışma tablosunun boyutu ve konfigürasyonu ile ilgili sorular var), o zaman yüzde on içindeler.

Ancak tüm bunlarla birlikte, bitmap, nesne sayısındaki artış, oluşturma kalitesinde bir artış (şeffaflık dahil) ve istediğiniz her şeyi gösterme yeteneği ile büyük bir yangın hızı olasılığına sahiptir.

 

Daha da hızlı kurabilirsiniz:

1. Oluşturulan tuval bunun ~%100'ünü kaplayacak şekilde grafik penceresini küçültün.

2. Grafiğin renk şemasını tek renkli olarak ayarlayın (özellikler -> renkler -> renk şeması aracılığıyla)/

3. Grafiğin ölçeğini minimuma indirin (mumlar maksimum boyutta).

Ancak. Gördüğünüz gibi, mutlak kıyaslama sayıları daha düşük olsa da, göreceli değerleri +/- aynı olacaktır.

 

Bilgisayarın bazı bileşenleri nedeniyle, nesnelerle karışık çalışma performansının 3 kez daldırıldığına dikkat edin ( sanyoooooook testi ):

:

Büyük olasılıkla, işlemci suçlanacak (kilitler onu öldürdü mü?) Ve hafıza. Hangi işlemcinin kullanıldığını bilmek ilginç.

Ya da belki tam bu test sırasında bilgisayar yüklendi ya da ekran çekildi.

 
sergeev :

ama bir bitmap ile grafikler çizerdim. çünkü seçenek yok :) ayrıca çok nesneli tablolar.

Bitmap'lerin nesneler kadar avantajları vardır.

Kabul ediyorum. Her bileşen kendi amaçları için iyidir. Bitmap, örneğin arayüz öğelerinin çiziminde vazgeçilmezdir. Başka seçenek yok.

Ancak etiketler istatistikleri görüntülemek için daha hızlı / daha ekonomiktir. :)

 
voix_kas :

Ancak. Gördüğünüz gibi, mutlak kıyaslama sayıları daha düşük olsa da, göreceli değerleri +/- aynı olacaktır.

Rastgele hatalar olmaması ve herkesin ölçümlerin saflığı için gereksinimlerini anlaması için giriş koşullarını özellikle belirttim.

Testlerden birinde 2355 ms ile sonucunuz, aslında test sırasında terminal penceresini gizlemek/küçültmek/değiştirmekten kaynaklanıyordu:

 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
 
Şaşıracaksınız ama bu test (No. 3) benim için geçmiyor. SD'ye yazdım ( # 732578). Daha doğrusu, bir düzineden bir durumda geçer. Günlükte bildirim veya hata yok. Sadece terminal bu test süresince askıda kalıyor.
 
papaklass :

masaüstü testim

Evet Renat, peki, kararı sen seçtin. 1920 X 1080'den sonra ekranda hemen her şeyi bulamadım. Şimdi dizüstü bilgisayarda çalıştıracağım.

Sonuçlar için teşekkürler. Bitmap'ler de daha hızlıdır.

 
voix_kas :
Şaşıracaksınız ama bu test (No. 3) benim için geçmiyor. SD'ye yazdım ( # 732578). Daha doğrusu, bir düzineden bir durumda geçer. Günlükte bildirim veya hata yok. Sadece terminal bu test süresince askıda kalıyor.
Teşekkürler, inceleyeceğiz.
 
Renat :

Bilgisayarın bazı bileşenleri nedeniyle, nesnelerle karışık çalışma performansının 3 kez daldırıldığına dikkat edin ( sanyoooooook testi ):

:

Büyük olasılıkla, işlemci suçlanacak (kilitler onu öldürdü mü?) Ve hafıza. Hangi işlemcinin kullanıldığını bilmek ilginç.

Ya da belki tam bu test sırasında bilgisayar yüklendi ya da ekran çekildi.

ilk test sırasında pencereyi değiştirdim, ikinci sırasında hiçbir şeye dokunmadım, MT4 paralel çalışıyor, komut dosyası çalışıyor, grafik oluşturuluyor ve bilgisayarı yükleyebilecek birkaç işlem daha )