AMD ou Intel, assim como a marca de memória - página 11

 
Mathemat >>:
Спасибо, four2one. Короче, число ядер для МТ4 не играет абсолютно никакой рояли :)

Concordo plenamente, é a quantidade de memória que conta e não é pela velocidade.

 
four2one >> :

>> Concordo plenamente, mais importante é o tamanho da memória e não a velocidade.

Não é a quantidade de memória que importa, mas a velocidade tanto da CPU como do bus de memória.

O Celeron é bom porque tem um ônibus de 800MHz

 
keekkenen >> :

Não é a quantidade de memória que importa, mas a velocidade tanto da CPU quanto da memória.

O Celeron é bom porque tem um ônibus de 800MHz


Não tenho certeza se estava se comunicando com a memória durante a execução do roteiro. Todo o código nativo (máquina) poderia ter ido para o cache. É por isso que estou falando da EA. Se a EA for otimizada, a SAR será crucial. E assim ... Isso prova o que já disse: i7 e Pentium têm basicamente o mesmo núcleo.

 
Svinozavr >> :

Não tenho certeza se ele estava se comunicando com a memória enquanto o roteiro estava sendo executado. Todo o código nativo (máquina) poderia ter ido para o cache.

Engraçado... duvido que o terminal se comunique diretamente com o cache da CPU, contornando a memória onde o próprio script está registrado...

 
keekkenen >> :

Engraçado... Duvido que o terminal funcione diretamente com o cache da CPU, contornando a memória, onde o próprio script é registrado...

O que há de tão legal nisso? O processador carrega o código (comandos de máquina) em seu cache. É para isso que serve. Ele pode ser carregado de memória ou de qualquer lugar. Se ele recebe todo o código, não está mais se comunicando com a memória, mas recebe instruções de seu cache e o kernel as corta. Se recuperasse as instruções da memória, seria muito mais lento.

Portanto, quanto mais cache, mais rápido os programas são normalmente executados. E programas como o script de teste, ou melhor, código nativo gerado a partir de bytes de código MT4, podem caber na porra do meu cache de 1 mb.

 
Quero dizer que não se comunica com a memória... porque por execução quero dizer não só executar o roteiro, mas também carregá-lo e devolver o resultado...
 
keekkenen >> :
Quero dizer que não se comunica com a memória... porque por execução quero dizer não só a execução do roteiro, mas também seu carregamento e retorno do resultado...

Mas eu estou falando apenas do processo de execução!

Como nem o carregamento do script no cache, nem o retorno do resultado em nosso caso não tem efeito sobre a velocidade. Carregar o código para o cache a partir da memória de uma só vez é uma operação muito rápida. Mas é lento escolhê-lo um comando de cada vez. É nisto que se baseia a idéia de cache. E eu estou até mesmo em silêncio quando se trata de emitir dados. Que tipo de produção existe?

Porque - mais uma vez!!! - este teste não é representativo! Você precisa da pedra para se comunicar com a memória. O histórico das citações, por exemplo, não precisa ir para o cache.

 
Svinozavr >> :

E eu estou falando exclusivamente do processo de execução!

Uma vez que nem o carregamento do script no cache, nem a saída do resultado em nosso caso tem qualquer efeito sobre a velocidade. Carregar o código para o cache a partir da memória de uma só vez é uma operação muito rápida. Mas é lento escolhê-lo um comando de cada vez. É nisto que se baseia a idéia de cache. E eu estou até mesmo em silêncio quando se trata de emitir dados. Que tipo de produção existe?

Porque - mais uma vez!!! - este teste não é representativo! Você precisa da pedra para se comunicar com a memória. A história das cotações, por exemplo, não precisa ir para o cache.

Bem, vamos entrar: uma das operações do teste é atribuir uma variável através de looping

você pode dividir em pedidos, por exemplo... ;)

start=GetTickCount();
for( i=0; i<1000000; i++) { tt=iOpen[ i];} 
test2=GetTickCount()- start; 


 

ou não, não por garras, mas por hora local!

start=GetTickCount();
for( i=0; i<1000000; i++) { tt=TimeLocal();} 
test2=GetTickCount()- start; 
É compreensível que não mude muito dentro de um segundo ou dois, mas o apelo mudará. ?
 
kombat >> :

Bem, vamos entrar: uma das operações do teste é atribuir uma variável através de looping

você pode dividir em pedidos, por exemplo... ;)

Bem... >> você poderia. Mas por quê? Olhe, qual é o problema em aceitar um Expert Advisor padrão da MT4? Estamos interessados na otimização, não em scripts abstratos. Salvar a história no arquivo e publicá-la junto com o teste EA, para que todos a testem no mesmo. Falaremos sobre parâmetros otimizáveis no Expert Advisor e suas faixas. E todos...