OpenCL: testes internos de implementação em MQL5 - página 48
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
E pelo menos afixar ex5, deixar que outros se divirtam um pouco.
A nova construção requer recompilação (por causa de CLContextCreate(), obviamente). E antes de ter postado também ex5.
E pelo menos afixar ex5, deixar os outros divertirem-se.
A nova construção precisa de ser recompilada (por causa de CLContextCreate(), obviamente). E já postou ex5 antes, também.
OK.
2012.04.08 02:03:33 ParallelTester_00-02-(16x7x3) (USDJPY,M30) CpuTime/GpuTime = 2330.657142857143
2012.04.08 02:03:33 ParallelTester_00-02-(16x7x3) (USDJPY,M30) Resultado no Cpu MachResult==4.02701 na passagem de 1529
2012.04.08 02:03:33 ParallelTester_00-02-(16x7x3) (USDJPY,M30) Contagem de inticadores = 16; Contagem de barras históricas = 50.000; Contagem de passes = 4096
2012.04.08 02:03:33 ParallelTester_00-02-(16x7x3) (USDJPY,M30) Tempo de CPU = 326292 ms
2012.04.08 01:58:07 ParallelTester_00-02-(16x7x3) (USDJPY,M30) Resultado sobre Gpu MachResult==4.02701 na passagem de 1529
2012.04.08 01:58:07 ParallelTester_00-02-(16x7x3) (USDJPY,M30) Contagem de inticadores = 16; Contagem de barras históricas = 50.000; Contagem de passes = 4096
2012.04.08 01:58:07 ParallelTester_00-(16x7x3) (USDJPY,M30) GPU time = 140 ms
2012.04.08 01:58:07 ParallelTester_00-02-(16x7x3) (USDJPY,M30) OpenCL init OK!
OK.
2012.04.08 02:03:33 ParallelTester_00-02-(16x7x3) (USDJPY,M30) CpuTime/GpuTime = 2330.657142857143
2012.04.08 02:03:33 ParallelTester_00-02-(16x7x3) (USDJPY,M30) Resultado no Cpu MachResult==4.02701 na passagem de 1529
2012.04.08 02:03:33 ParallelTester_00-02-(16x7x3) (USDJPY,M30) Contagem de inticadores = 16; Contagem de barras históricas = 50.000; Contagem de passes = 4096
2012.04.08 02:03:33 ParallelTester_00-02-(16x7x3) (USDJPY,M30) Tempo de CPU = 326292 ms
2012.04.08 01:58:07 ParallelTester_00-02-(16x7x3) (USDJPY,M30) Resultado sobre Gpu MachResult==4.02701 na passagem de 1529
2012.04.08 01:58:07 ParallelTester_00-02-(16x7x3) (USDJPY,M30) Contagem de inticadores = 16; Contagem de barras históricas = 50.000; Contagem de passes = 4096
2012.04.08 01:58:07 ParallelTester_00-(16x7x3) (USDJPY,M30) GPU time = 140 ms
2012.04.08 01:58:07 ParallelTester_00-02-(16x7x3) (USDJPY,M30) OpenCL init OK!
É um negócio estranho. Sem queixas sobre si, claro. Mas a questão é esta.
Eu dirijo o seu guião e recebo isto:
2012.04.08 03:11:28 ParallelTester_00-02-d16x7x3w_new (EURUSD,H1) OpenCL not found.
Executando o seu primeiro guião histórico (ajustei-o com as últimas modificações CLContextCreate()):
2012.04.08 03:13:01 ParallelTester_00-01x (EURUSD,H1) CpuTime/GpuTime = 24.39193381592554
2012.04.08 03:13:01 ParallelTester_00-01x (EURUSD,H1) Result on Cpu МахResult==1.20315 at 21 pass
2012.04.08 03:13:01 ParallelTester_00-01x (EURUSD,H1) Соunt indicators = 16; Count history bars = 144000; Count pass = 1280
2012.04.08 03:13:01 ParallelTester_00-01x (EURUSD,H1) CPU time = 23587 ms
2012.04.08 03:12:37 ParallelTester_00-01x (EURUSD,H1) Result on Gpu МахResult==1.20315 at 21 pass
2012.04.08 03:12:37 ParallelTester_00-01x (EURUSD,H1) Соunt indicators = 16; Count history bars = 144000; Count pass = 1280
2012.04.08 03:12:37 ParallelTester_00-01x (EURUSD,H1) GPU time = 967 ms
2012.04.08 03:12:36 ParallelTester_00-01x (EURUSD,H1) OpenCL init OK!
Maravilhoso... O que fazer, onde escrever? Tenho de voltar ao Service Desk?
P.S. A propósito, é melhor fazer os cálculos da GPU não tão depressa, pelo menos 300-400 ms. Talvez tenha uma aceleração real de 100500 (lembre-se, é o único número maior que o infinito!), e não sabe disso? Tenho apenas uma suspeita de que 140 ms é um dos poucos números que não podem ser menores no GetTickCount() (e mesmo que isso aconteça, é raro).
Isso é espantoso! Diga-nos de que planeta é. Fala a mesma língua que os seus criadores. Está a fazer cálculos super-rápidos. Há uma razão para tudo isto. :))))
Não sei. Aqui em Kazan todos o escrevem dessa forma.
1. negócios estranhos. Sem queixas sobre si, claro. Mas a questão é esta.
Quando eu corro o teu guião, é assim:
2012.04.08 03:11:28 ParallelTester_00-02-d16x7x3w_new (EURUSD,H1) OpenCL not found.
2. P.S. A propósito, certifique-se de que os cálculos na GPU não foram tão rápidos, pelo menos 300-400 ms. Talvez a sua verdadeira velocidade seja 100500 (lembre-se, é o único número maior do que o infinito!) e não sabe disso? Tenho apenas uma suspeita de que 140 ms é um dos poucos números que GetTickCount() nunca fica mais baixo (e se ficar, é raro).
1. experimente a versão no trailer. recompilei-a com CLContextCreate(CL_DEVICE_ANY);
2. não, não. Está tudo bem cerca de 140ms. (E muito mais também:))
zy. A aceleração é alcançada através de operações vectoriais em OpenCL. Fumar o manual - insere. ;)
2012.04.08 09:15:51 ParallelTester_00-02-d16x7x3w (EURUSD,H1) Result on Cpu МахResult==4.07621 at 824 pass
2012.04.08 09:15:51 ParallelTester_00-02-d16x7x3w (EURUSD,H1) Соunt inticators = 16; Count history bars = 50000; Count pass = 4096
2012.04.08 09:15:51 ParallelTester_00-02-d16x7x3w (EURUSD,H1) CPU time = 208418 ms
2012.04.08 09:12:23 ParallelTester_00-02-d16x7x3w (EURUSD,H1) Result on Gpu МахResult==4.07621 at 824 pass
2012.04.08 09:12:23 ParallelTester_00-02-d16x7x3w (EURUSD,H1) Соunt inticators = 16; Count history bars = 50000; Count pass = 4096
2012.04.08 09:12:23 ParallelTester_00-02-d16x7x3w (EURUSD,H1) GPU time = 1280 ms
2012.04.08 09:12:21 ParallelTester_00-02-d16x7x3w (EURUSD,H1) OpenCL init OK!
Radeon governa!!!
;)
Radeon governa!!!
;)