"MQL5 Cloud Network ile Hesaplamaları Hızlandırın" makalesi için tartışma - sayfa 2

 

Aşağıdaki konfigürasyondaki sonuçlarım:

  • Hareketli Ortalama
  • EURUSD, H1, MetaQuotes-Demo'da 2010.01.01'den 2011.01.01'e kadar tüm keneler
  • Bakiye: 100 000 USD
  • Ayarlar


MQL5 Cloud Network'te Genetics modu: 8.704 beklenen geçişten 2.624'ü 15 dakika 52 saniyede hesaplandı. Genetics, oldukça seyrek bir arama alanı nedeniyle sonuçların tavanına ulaştığı için hesaplamayı daha erken durdurdu.

2012.02.05 00:52:50     Statistics      locals 0 tasks (0%), remote 0 tasks (0%), cloud 2624 tasks (100%)
2012.02.05 00:52:50     Statistics      optimization passed in 15 minutes 52 seconds
2012.02.05 00:52:50     Tester  genetic optimization finished on pass 8704 (of 1276290)
2012.02.05 00:52:50     Tester  result cache was used 6082 times
2012.02.05 00:52:50     Tester  genetics is over

Diskteki tüm önbellekleri temizledikten ve terminali yeniden başlattıktan sonra Genetics'i yerel çekirdeklerde i7-2600, 3.4 Ghz, Windows 7 x64, RAM 16Gb, 8 çekirdek üzerinde çalıştırdım:

Ortalama yerel geçiş süresi 19 ila 25 saniye arasındaydı (bilgisayara hiçbir şey yüklenmemişti):

2012.02.05 01:06:34    Core 2    genetic pass (184, 344771) returned result 97426.26 in 20 sec
2012.02.05 01:06:31    Core 7    genetic pass (191, 419403, 1) started
2012.02.05 01:06:31    Core 7    genetic pass (181, 347989) returned result 94247.90 in 25 sec
2012.02.05 01:06:31    Core 3    genetic pass (190, 1048934, 1) started
2012.02.05 01:06:31    Core 3    genetic pass (183, 255717) returned result 92939.02 in 20 sec
2012.02.05 01:06:28    Core 4    genetic pass (189, 535782, 1) started
2012.02.05 01:06:28    Core 4    genetic pass (182, 131277) returned result 98194.52 in 21 sec


Bu hızda uzun süre bekleyeceğimi fark ederek hesaplamayı 211 geçişte durdurdum:

2012.02.05 01:07:59    Statistics    locals 211 tasks (100%), remote 0 tasks (0%), cloud 0 tasks (0%)
2012.02.05 01:07:59    Statistics    optimization passed in 11 minutes 16 seconds
2012.02.05 01:07:59    Tester    genetic optimization finished on pass 211 (of 1276290)
2012.02.05 01:07:59    Tester    result cache was used 0 times


Bunların eski önbelleğe sıfır isabetle saf 211 geçiş olduğunu görebilirsiniz.

Farklı genetik çalışmaları nadiren geçiş sayısıyla eşleştiğinden ve testleri oldukça temiz bir şekilde yaptığımdan, zaman hesaplamasını matematiksel olarak yapmak mümkündür:

  • yerel ajanların 2.624 geçiş yapacağını ve cloude'daki genetiklerin de
  • Claude'da 2.624 geçiş 15 dakika 52 saniye (952 saniye) sürmüştür.
  • 211 yerel geçiş 11 dakika 16 saniye (676 saniye) sürmüştür.
  • Bu da 2.624 geçişin = (2624 / 211) * 676 = 8.406 saniye (140 dakika 6 saniye) süreceği anlamına gelir.

Toplamda 8.406 / 952 = 8,8 kat genetiğin bulutta daha hızlı olduğu ortaya çıkıyor. Bu da 64 yerel çekirdeğin gücüne karşılık gelmektedir.


Açıklama nedir?

  • Genetikte maksimum ölçeklendirme faktörü 64 ila 256 çekirdek arasında değişir.

    Bu doğrudan farklı nesiller arası geçiş fikrine ve adaptif popülasyon boyutuna bağlıdır. Yani, genetikte, tüm claude ağı kullanılmayacaktır.

  • Genetikte, buluttaki ajanlar her neslin hesaplamasının tamamlanmasını beklemek zorundadır.

    Sonuç olarak, 64-256 ajandan birçoğu sürekli çalışmak yerine yeni bir yığın beklemek için zaman harcamaktadır. Genellikle her bir aracı, 64-256 görevden oluşan bir popülasyondan yalnızca bir görevi tamamlamak için zamana sahiptir. Ve yerel çekirdekler, daha az sayıda ve eşit güçte olmaları nedeniyle, neredeyse hiçbir zaman boşta kalmazlar - her biri görev yığınının orantılı bir bölümünü gerçekleştirir.

  • Claud ile yapılan karşılaştırmalarda, çok çekirdekli bir yerel test cihazının varlığı resmi bozmaktadır.

    Bir yandan claud'un herhangi bir sonucunun pratik olarak 4-8'e bölünmesi gerekirken, diğer yandan yerel çekirdeklerin yeteneklerini olabildiğince verimli kullanıyoruz.

  • Ağ gecikmesini yendik - 20 saniyelik ve yarım saniyelik geçişlerin sonuçları çok yakın.

    Paketleme ve verimli ağ protokolü mekanizması hüküm sürüyor.

Elbette, tam numaralandırma sonuçlarının küçük paket popülasyonları nedeniyle gecikme ile ilgili hiçbir sorunu yoktur ve hız doğrusal olarak yüzlerce ve binlerce kez ölçeklendirilebilir.

 

Bir hata buldum - başka birinin RoboForex sunucusunda test yapıyordum ve grafik geçmişinin ilk pompalanması için yeterince zaman harcadım.

Yeni geçmişte, claude sadece birkaç dakika ısınır ve geçmişi aracılar tarafından senkronize eder. Şimdi testleri tekrarlayacağım.

 

MetaQuotes-Demo üzerinde testler yaptım: sunucumuzda daha fazla M1 geçmişi var, neredeyse tüm claude'lar zaten buna sahip ve ağ ısınma süresi daha kısa.

M1 çubuklarının hacmindeki artış, bir geçiş süresinin 30 saniyeye çıkmasına neden oldu.

İşte MQL5 Bulut Ağındaki sonuçlar: 25 dakika 8 saniyede 3.704 temiz görev (1.508 saniye).

2012.02.05 02:44:37     Statistics      locals 0 tasks (0%), remote 0 tasks (0%), cloud 3704 tasks (100%)
2012.02.05 02:44:37     Statistics      optimization passed in 25 minutes 08 seconds
2012.02.05 02:44:37     Tester  genetic optimization finished on pass 8960 (of 1276290)
2012.02.05 02:44:37     Tester  result cache was used 5256 times
2012.02.05 02:44:37     Tester  genetics is over

İşte yerel geçişlerin sonuçları: 11 dakika 57 saniyede 181 görev (717 saniye) - 4 saat beklememek için durdum (toplam süre kolayca hesaplanabilir).

2012.02.05 02:58:21     Statistics      locals 181 tasks (100%), remote 0 tasks (0%), cloud 0 tasks (0%)
2012.02.05 02:58:21     Statistics      optimization passed in 11 minutes 57 seconds
2012.02.05 02:58:21     Tester  genetic optimization finished on pass 181 (of 1276290)
2012.02.05 02:58:21     Tester  result cache was used 0 times

Yerel çekirdeklerde 3.704 görevi hesaplamanın ne kadar süreceğini hesaplarsak: ( 3.704 / 181 ) * 717 = 14.672 saniye (244 dakika ve 32 saniye = 4 saat, 4 dakika ve 32 saniye).

Toplamda 14.672 / 1.508 = 9,7 kat genetiğin bulutta daha hızlı olduğu ortaya çıkıyor.

Sonuç bir önceki 8.8'e yakın olsa da, yine de 10 kata ulaşıyor ve bu da "büyüklük sırasına göre daha hızlı" ilan etme hakkını veriyor.

https://www.mql5.com/ru/forum/6071/page2#comment_148584 yorumunda verilen açıklamalar hala geçerlidir.

Распределенные вычисления в сети MQL5 Cloud Network
Распределенные вычисления в сети MQL5 Cloud Network
  • cloud.mql5.com
Заработать деньги, продавая мощности своего компьютера для сети распределенных вычислений MQL5 Cloud Network
 
notused:

3 dakika 28 saniye boyunca 28 saniyelik şebeke kullanımı sırasında 2 ya da 3 sent ücretlendirildim (terminalde 3 sent, web sitesinde 2 sent ve dondurulmuş olarak 3 sent). Hadi 3 olsun, hatta basitlik olsun diye genetik için şebeke kullanımı bir dakika için 1 cent olsun. Toplamda bir saat 60 sent, 24 saat = 14,4 dolar. Bu bana çok pahalı geliyor. Tüketici için cazip hale getirmek için fiyatların en az üç kat indirilmesi gerekiyor (birçok kişi EA'ları test ediyor, ancak herkes Cloud için günde yaklaşık 15 $ ödeyemez / ödeyemez ve 5 $ veya daha az olsaydı - daha fazla insan istekli olurdu).

...

Sanırım düşünce tarzım açık

@ Hey komşu, ben işteyken karıma gitmenden hoşlanmıyorum.

Siz Johnsons'ları anlamıyorsunuz, siz sevmiyorsunuz, o seviyor @ :))

Alıcılar her zaman daha ucuz, satıcılar daha pahalı ister, sadece fiyat teklifi anlaşmazlığı çözecektir.

Alıcılar bir görev için istedikleri bir fiyatı, satıcılar da kaynakları için istedikleri bir fiyatı teklif edebilmeli, o zaman bir piyasa organize edilecektir.

Ancak bunların hepsi gelecekte, hizmet yaygınlaştığında ve uygunluğu bir soru olmayacak. Şimdi MQ'nun Bulut'un havalı olduğunu aktif bir şekilde kanıtlaması gerekiyor.

 

Benim deneyimim: Claude'da birçok test yaptım ve yapıyorum, ancak projenin başlangıcından bu yana sadece 44 dolar harcadım.

Bu, zaman zaman 2-3 bin ajanın kullanıldığı göz önüne alındığında çok az.

 
Renat:


Bulutta 14.672 / 1.508 = 9,7 kat genetiğin daha hızlı olduğu ortaya çıktı.

Sonuç bir önceki 8,8 kata yakın olsa da, yine de 10 kata ulaşıyor ve bu da bize "büyüklük sırasına göre daha hızlı" olduğunu beyan etme hakkı veriyor.

Toplamda, genetik 7 kattan 10 kata hızlandırılmıştır. Yani, bir büyüklük sırasına göre. Ve yerel testlerde zayıf çekirdekler kullanılmadığından, bazı kullanıcılar için hızlanma muhtemelen 40 kata ulaşacaktır.

Kendi güçlerimle optimizasyon bir günden fazla sürecekse bulutu kullanacağıma karar verdim.

+ istek - lütfen yavaş aracıları belirleme ve görevleri aralarında yerel + uzak aracılara yeniden dağıtma mekanizmalarını genişletin. Çünkü uzak + 10 daha zayıf + 2 zayıf yerel ajan ile aynı çekirdeklerle aynı testin sonuca götürdüğü ortaya çıktı:

Pratik olarak 2,5 kat daha yavaş. Ve her zaman maksimum performansı elde etmek için hangi ajanlarla ölçüm yapma isteği ve imkanı yoktur.

 

Bu hizmet için ödeme yapmanız gerektiğinden bahsediliyor mu?

MQL Bulut Ağı web sayfası(https://cloud.mql5.com/), başkalarının CPU'nuzu optimizasyon için kullanmasına izin vererek ekstra $$$ kazanmanın reklamını yapıyor. Bulut Ağını optimizasyon için kullanırsanız ödeme yapmanız gerektiğinden neden bahsedilmiyor? Siz ödeme yapmazsanız, CPU'larını ağa koyan ancak herhangi bir optimizasyon yapmayan kişilere kim ödeme yapıyor?

Distributed Computing in the MQL5 Cloud Network
  • cloud.mql5.com
Connect to the MQL5 Cloud Network (Cloud Computing) and earn extra income around the clock — there is much work for you computer!
 

Bulut güvenli mi? Yoksa bulut kullanırsam EA'm çalınır mı?

Teşekkürler

 
MyDream:

Bulut güvenli mi? Yoksa bulut kullanırsam EA'm çalınır mı?

Teşekkürler

MQ isterse, uzman geri test sonuçlarınız yeterince iyiyse, yerel bilgisayarınızdan hemen uzman + geri test raporları alabileceklerini söyleyebilirim. Ama ben böyle bir şey yaptıklarını düşünmüyorum.

Uzmanınızın gerçekten o kadar iyi olabileceğini düşünüyorsanız, o zaman sadece bölünmüş mühendislik yapın (tam olarak hatırlamıyorum): Temel olarak her şeyi ayrı ayrı test edersiniz ve gerçek sonuçları ancak daha önce elde ettiğiniz tüm sonuçları birleştirdiğinizde (bölmeler) görürsünüz.

 
MyDream:

Bulut güvenli mi? Yoksa bulut kullanırsam EA'm çalınır mı?

Teşekkürler

MetaTrader 5'te Test Yapmanın Temelleri makalesini okumalısınız:

Terminal ve Aracı Arasındaki Veri Alışverişi

...

Aracılar, terminalden elde edilen EX5 dosyalarını (EA, göstergeler, kütüphaneler, vb.) güvenlik nedeniyle asla sabit diske kaydetmez, böylece çalışan bir aracıya sahip bir bilgisayar gönderilen verileri kullanamaz. DLL de dahil olmak üzere diğer tüm dosyalar sandbox'a kaydedilir. Uzak aracılarda EA'ları DLL kullanarak test edemezsiniz.

Test sonuçları, ihtiyaç duyulduğunda hızlı erişim için terminal tarafından özel bir sonuç önbelleğine (sonuç önbelleği) eklenir. Her bir parametre seti için terminal, yeniden çalıştırmaları önlemek amacıyla sonuç önbelleğinde önceki çalıştırmalardan elde edilen mevcut sonuçları arar. Böyle bir parametre setine sahip sonuç bulunamazsa, aracıya testi gerçekleştirme görevi verilir.

Terminal ve aracı arasındaki tüm trafik şifrelenir.