Optimizasyon için CPU Çekirdeklerini Değerlendirme

 

Optimizasyon modunda strateji test cihazı için etkinliklerini değerlendirmek için farklı işlemcilerin performansı hakkında istatistikler toplamayı öneriyorum.

Daha objektif olmak gerekirse, " Matematiksel hesaplamalar " modunda çalışan bir danışman kullanmanızı öneririm, bu sabit disk ve bilgisayar belleğini minimumda kullanmanıza izin verecektir. Mümkünse işlemci adını, anakartı ve RAM frekansını ekleyin.

EA, optimizasyona tabi olan tek bir parametreye sahiptir (aslında, bu bir kukladır ve veriler tüm ajanlar için aynıdır - nesnellik için), iş parçacığı sayısına eşit geçiş sayısını belirtin ve ajanları buna göre seçin işlemci çekirdeği sayısı (hiper ticaret olmadan!).

Toplanan verilerin, insanların optimizasyon için donanım seçiminde yardımcı olacağını umuyorum, ki bu alınacak ilk tazelik değil, her durumda, son zamanlarda durum böyle, ama belki bir şeyler değişti.

EA'nın kendisi, bir karar ağacından yaprakları seçmek için benzer bir görevde kullandığım gerçek bir EA'dan bir kesimdir, yani. MO'nun asıl görevi ve kodu hızlandırmak için fikirler varsa, o zaman ilgiyle dinleyeceğim. Kodda sadece 1000 yaprak var, gerçekte 70.000'den fazla var, bu yüzden derleme sonucunu beklemek için kabul edilebilir bir süre için bir fonksiyona taşınıyorlar.

 2019.08 . 09 23 : 04 : 26.397 Terminal        Windows 7 Service Pack 1 (build 7601 ) x64, IE 11 , Intel Core i5  M 450 @ 2.40 GHz, Memory: 2045 / 3766 Mb, Disk: 53 / 148 Gb, GMT+ 3
Strateji test edici günlüğünde, "Tam optimizasyon günlüğü" onay kutusunu işaretlemek için bağlam menüsünü kullanın.
 2019.08 . 09 22 : 41 : 25.630 Core 2   pass 2 returned result 1001000.00 in 0 : 04 : 50.391
2019.08 . 09 22 : 41 : 26.642 Core 1   pass 0 returned result 1001000.00 in 0 : 04 : 51.365
2019.08 . 09 22 : 46 : 09.036 Core 2   pass 3 returned result 1001000.00 in 0 : 04 : 43.441
2019.08 . 09 22 : 46 : 10.759 Core 1   pass 1 returned result 1001000.00 in 0 : 04 : 44.152
2019.08 . 09 22 : 46 : 10.759 Tester  optimization finished, total passes 4
2019.08 . 09 22 : 46 : 10.769 Statistics      optimization done in 9 minutes 36 seconds
2019.08 . 09 22 : 46 : 10.769 Statistics      shortest pass 0 : 04 : 43.441 , longest pass 0 : 04 : 51.365 , average pass 0 : 04 : 47.337

Eklendi: Bu başlıkta, kod yapısal olarak önemli ölçüde değişmese de, bazı işlemcilerdeki dosya boyutunun (bunu bulmamız gereken şey bu) bir bütün olarak sistemin performansını etkilediği ortaya çıktı. Bu nedenle, herkesten iki danışmanı test etmesini istiyorum.

Test cihazı ayarlarına bir örnek - sembol, süre ve zaman çerçevesi önemli değil - ayarların geri kalanı alakalı, ekranda başka bir danışman var, ancak ayarlar gerekli

bilgi işlem kaynaklarının maliyeti için Expert Advisor'ın en ağır çeşidi olarak son sütuna göre filtrelenir.



Распределенные вычисления в сети MQL5 Cloud Network
Распределенные вычисления в сети MQL5 Cloud Network
  • cloud.mql5.com
Большую часть времени современные компьютеры простаивают и не используют всех возможностей процессора. Мы предлагаем задействовать их с пользой. Вы можете сдавать мощности вашего компьютера другим участникам нашей сети для выполнения разнообразных...
Dosyalar:
 
Aleksey Vyazmikin :

Optimizasyon modunda strateji test cihazı için etkinliklerini değerlendirmek için farklı işlemcilerin performansı hakkında istatistikler toplamayı öneriyorum.

Güzel girişim, destekliyorum.

Derlerken, bir uyarı verir:

implicit conversion from 'number' to 'string'   Tree_Brut_TestPL.mq5    2567    16

Böyle mi olmalı?

Astar:

   if ( FrameAdd (Test_P, 1 , 0 ,stat_values)== false )
 
Aleksey Vyazmikin :

Optimizasyon modunda strateji test cihazı için etkinliklerini değerlendirmek için farklı işlemcilerin performansı hakkında istatistikler toplamayı öneriyorum.

Daha objektif olmak gerekirse, " Matematiksel hesaplamalar " modunda çalışan bir danışman kullanmanızı öneririm, bu sabit disk ve bilgisayar belleğini minimumda kullanmanıza izin verecektir. Mümkünse işlemci adını, anakartı ve RAM frekansını ekleyin.

EA, optimizasyona tabi olan tek bir parametreye sahiptir (aslında, bu bir kukladır ve veriler tüm ajanlar için aynıdır - nesnellik için), iş parçacığı sayısına eşit geçiş sayısını belirtin ve ajanları buna göre seçin işlemci çekirdeği sayısı (hiper ticaret olmadan!).

Toplanan verilerin, insanların optimizasyon için donanım seçiminde yardımcı olacağını umuyorum, ki bu alınacak ilk tazelik değil, her durumda, son zamanlarda durum böyle, ama belki bir şeyler değişti.

Expert Advisor'ın kendisi, bir karar ağacından yaprakları seçmek için benzer bir görevde kullandığım gerçek bir Expert Advisor'dan bir kesittir, yani. MO'nun asıl görevi ve kodu hızlandırmak için fikirler varsa, o zaman ilgiyle dinleyeceğim. Kodda sadece 1000 yaprak var, gerçekte 70.000'den fazla var, bu yüzden derleme sonucunu beklemek için kabul edilebilir bir süre için bir fonksiyona taşınıyorlar.

Hangi dönem için ve hangi zaman diliminde optimize edilecek? Araç önemli mi?
 
Serhii Shevchuk :

Güzel girişim, destekliyorum.

Derlerken, bir uyarı verir:

Böyle mi olmalı?

Astar:

Düzeltildi ve yeniden yüklendi!

Ölçek.

 
Maxim Romanov :
Hangi dönem için ve hangi zaman diliminde optimize edilecek? Araç önemli mi?

" Matematik hesaplamaları " modunda, önemli değil, orada keneler oluşturulmaz!

 
Ve orada ne var? 2000'lerin sonundaki kütük artık kalkmıyor mu? :D
 
Artem Prischepa :
Ve orada ne var? 2000'lerin sonundaki kütük artık kalkmıyor mu? :D

İşlemcinizi deneyin ve sonuçları bir kenara bırakın - bakalım kalkıyor mu yoksa sadece yuvarlanıyor mu!

 

Yaşlı at karığı bozar mı?

ütü

Sonuçlar:

 2019.08 . 09 23 : 22 : 07.472 Tester   set "Custom max" as optimization criterion for mathematical calculations
2019.08 . 09 23 : 22 : 07.540 Experts optimization frame expert Tree_Brut_TestPL (EURUSD.m,H1) processing started
2019.08 . 09 23 : 22 : 07.592 Tester  cache file 'tester\cache\Tree_Brut_TestPL.30.DFF2DB61B8A3751199D61AD0A0F226D3.opt' deleted
2019.08 . 09 23 : 22 : 07.623 Tester  Experts\Tree_Brut_TestPL.ex5 math calculations test means no history and no symbol info for EURUSD.m
2019.08 . 09 23 : 22 : 07.623 Tester  complete optimization started
2019.08 . 09 23 : 22 : 07.648 Core 1   agent process started on 127.0 . 0.1 : 3008
2019.08 . 09 23 : 22 : 07.650 Core 2   agent process started on 127.0 . 0.1 : 3009
2019.08 . 09 23 : 22 : 07.652 Core 3   agent process started on 127.0 . 0.1 : 3010
2019.08 . 09 23 : 22 : 07.654 Core 4   agent process started on 127.0 . 0.1 : 3011
2019.08 . 09 23 : 22 : 07.657 Core 5   agent process started on 127.0 . 0.1 : 3012
2019.08 . 09 23 : 22 : 07.659 Core 6   agent process started on 127.0 . 0.1 : 3013
2019.08 . 09 23 : 22 : 07.662 Core 7   agent process started on 127.0 . 0.1 : 3014
2019.08 . 09 23 : 22 : 07.664 Core 8   agent process started on 127.0 . 0.1 : 3015
2019.08 . 09 23 : 22 : 07.972 Core 1   connecting to 127.0 . 0.1 : 3008
2019.08 . 09 23 : 22 : 07.973 Core 1   connected
2019.08 . 09 23 : 22 : 07.983 Core 1   authorized (agent build 2097 )
2019.08 . 09 23 : 22 : 07.997 Core 1   common synchronization completed
2019.08 . 09 23 : 22 : 08.035 Core 3   connecting to 127.0 . 0.1 : 3010
2019.08 . 09 23 : 22 : 08.036 Core 3   connected
2019.08 . 09 23 : 22 : 08.046 Core 3   authorized (agent build 2097 )
2019.08 . 09 23 : 22 : 08.056 Core 2   connecting to 127.0 . 0.1 : 3009
2019.08 . 09 23 : 22 : 08.057 Core 2   connected
2019.08 . 09 23 : 22 : 08.059 Core 3   common synchronization completed
2019.08 . 09 23 : 22 : 08.067 Core 5   connecting to 127.0 . 0.1 : 3012
2019.08 . 09 23 : 22 : 08.068 Core 5   connected
2019.08 . 09 23 : 22 : 08.068 Core 2   authorized (agent build 2097 )
2019.08 . 09 23 : 22 : 08.082 Core 2   common synchronization completed
2019.08 . 09 23 : 22 : 08.083 Core 5   authorized (agent build 2097 )
2019.08 . 09 23 : 22 : 08.103 Core 7   connecting to 127.0 . 0.1 : 3014
2019.08 . 09 23 : 22 : 08.104 Core 7   connected
2019.08 . 09 23 : 22 : 08.119 Core 7   authorized (agent build 2097 )
2019.08 . 09 23 : 22 : 08.125 Core 5   common synchronization completed
2019.08 . 09 23 : 22 : 08.140 Core 7   common synchronization completed
2019.08 . 09 23 : 22 : 08.150 Core 4   connecting to 127.0 . 0.1 : 3011
2019.08 . 09 23 : 22 : 08.151 Core 4   connected
2019.08 . 09 23 : 22 : 08.151 Core 8   connecting to 127.0 . 0.1 : 3015
2019.08 . 09 23 : 22 : 08.151 Core 8   connected
2019.08 . 09 23 : 22 : 08.162 Core 8   authorized (agent build 2097 )
2019.08 . 09 23 : 22 : 08.164 Core 4   authorized (agent build 2097 )
2019.08 . 09 23 : 22 : 08.184 Core 6   connecting to 127.0 . 0.1 : 3013
2019.08 . 09 23 : 22 : 08.185 Core 6   connected
2019.08 . 09 23 : 22 : 08.208 Core 6   authorized (agent build 2097 )
2019.08 . 09 23 : 22 : 08.228 Core 4   common synchronization completed
2019.08 . 09 23 : 22 : 08.240 Core 6   common synchronization completed
2019.08 . 09 23 : 22 : 08.250 Core 8   common synchronization completed
2019.08 . 09 23 : 24 : 45.931 Tester  optimization finished, total passes 8
2019.08 . 09 23 : 24 : 45.941 Statistics      optimization done in 2 minutes 38 seconds
2019.08 . 09 23 : 24 : 45.941 Statistics      shortest pass 0 : 02 : 35.945 , longest pass 0 : 02 : 37.669 , average pass 0 : 02 : 37.006
2019.08 . 09 23 : 24 : 45.941 Statistics       8000 frames ( 3.14 Mb total, 412 bytes per frame) received
2019.08 . 09 23 : 24 : 45.941 Statistics      local 8 tasks ( 100 %), remote 0 tasks ( 0 %), cloud 0 tasks ( 0 %)
2019.08 . 09 23 : 24 : 45.988 Tester   8 new records saved to cache file 'tester\cache\Tree_Brut_TestPL.30.DFF2DB61B8A3751199D61AD0A0F226D3.opt'

Terminal sürümü:

 2019.08 . 09 23 : 20 : 35.776 Terminal        MetaTrader 5 x64 build 2085 started (MetaQuotes Software Corp.)
2019.08 . 09 23 : 20 : 35.778 Terminal        Windows 10 (build 17763 ) x64, IE 11 , UAC, AMD FX- 8300 Eight-Core Processor , Memory: 17102 / 24574 Mb, Disk: 2407 / 2441 Gb, GMT+ 2
 
Serhii Shevchuk :

Yaşlı at karık bozar mı?

Sonuçlar:

Terminal sürümü:

Görünüşe göre 8 aracınız var, ancak 4'e ihtiyacınız var, çünkü FX'te yalnızca 4 FPU ve 8 ALU var, yani optimizasyon sırasında FPU'lar yükleniyor. Bu neden böyle - açık değil - soru geliştiriciler içindir, çünkü kod çoğunlukla karşılaştırma üzerine kuruludur, ancak görünüşe göre kayan nokta hesaplamalarının tüketimi baskındır veya birkaç kat daha yavaştır, bu yüzden gerekli olduğu ortaya çıkıyor. yardımcı işlemci sayısını tam olarak ayarlamak için, 1 geçiş daha hızlı olacak ve ortalama süre yaklaşık aynı kalacaktır.

 
Aleksey Vyazmikin :

Görünüşe göre 8 aracınız var, ancak 4'e ihtiyacınız var, çünkü FX'te yalnızca 4 FPU ve 8 APU var, yani optimizasyon sırasında FPU'lar yükleniyor. Bu neden böyle - açık değil - soru geliştiriciler içindir, çünkü kod çoğunlukla karşılaştırma üzerine kuruludur, ancak görünüşe göre kayan nokta hesaplamalarının tüketimi baskındır veya birkaç kat daha yavaştır, bu yüzden gerekli olduğu ortaya çıkıyor. yardımcı işlemci sayısını tam olarak ayarlamak için, 1 geçiş daha hızlı olacak ve ortalama süre yaklaşık aynı kalacaktır.

Lütfen açıkla. 4 aracıyı devre dışı bırakıyorum ve parametreyi optimize edilecek şekilde ayarladım, böylece 4 optimizasyon geçişi elde ettim mi? yoksa 8 geçiş mi?
 
Serhii Shevchuk :
Lütfen açıkla. 4 aracıyı devre dışı bırakıyorum ve parametreyi optimize edilecek şekilde ayarladım, böylece 4 optimizasyon geçişi elde ettim mi? yoksa 8 geçiş mi?

8, iş parçacığı sayısına göre hiper ticarete benzer şekilde 4 aracı geçer.

Her geçişin zamanını görmek için "Tam optimizasyon günlüğü"nü etkinleştirin.
Neden: