Minha abordagem. O núcleo é o motor. - página 123
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
...
ZS. É possível, no entanto, que o processador esteja sendo sobrecarregado por um novo desenho. Ou seja, desenhando dentro de uma matriz de pixels. Em outras palavras, inicialização constante da matriz com valores, ocorrendo em alta freqüência (16ms) de tempo.
Não, o redesenho não carrega o processador de forma alguma; são necessários alguns nano- ou no máximo microssegundos para que ele envie um comando para o driver gráfico. O processador da placa de vídeo realiza a pintura em si, pixel a pixel, enquanto que geralmente há centenas delas e elas trabalham simultaneamente com o processador em paralelo. Ou seja, o processador emite o comando para o driver gráfico: exibir um círculo com o centro nas coordenadas Xc, Yc e raio R em modo CopyPut. Para o processador, esta é apenas uma chamada de função com parâmetros passados. Não vai mais longe do que isso. Tais chamadas não fazem mais do que, por exemplo, 2 vezes por segundo, caso contrário o usuário simplesmente não consegue entender nada na tela, não pode ser puxado com tanta freqüência. Para uma lista de negociações abertas, você pode imaginar que pode levar uma hora ou um dia ou mais.
E o algoritmo (google "Bresenham Algorithm", por exemplo) de coloração pixel por pixel é executado pela placa gráfica, e o processador não permanece sobre ela. Também é executado muito rapidamente. E... uma vez por chamada. Nenhuma reinicialização a 16ms é necessária, a imagem da tela é mantida constante na memória de vídeo até que uma nova mudança seja feita sob o comando do processador. Além disso, para acelerar a resposta da tela visível, a memória de vídeo também é mantida em duas instâncias, as mudanças são feitas na invisível, e então a página de vídeo é trocada imediatamente.
Se sua abordagem da saída da tela ainda tiver a " inicialização constante da matriz" de pixels que você descreve - você deve se livrar dela, não é o caso.
Clique para ver.
Há algo errado com os dados da coluna Tempo de Abertura na figura.
Não, o redesenho não carrega o processador de forma alguma; são necessários no máximo alguns nano- ou microssegundos para que ele envie um comando para o driver gráfico. Os processadores da placa de vídeo executam a pintura em si, pixel a pixel, enquanto normalmente há centenas deles e trabalham simultaneamente com o processador, em paralelo. Ou seja, o processador emite o comando para o driver gráfico: exibir um círculo com o centro nas coordenadas Xc, Yc e raio R em modo CopyPut. Para o processador, esta é apenas uma chamada de função com parâmetros passados. Não vai mais longe do que isso. Tais chamadas não fazem mais do que, por exemplo, 2 vezes por segundo, caso contrário o usuário simplesmente não consegue entender nada na tela, não pode ser puxado com tanta freqüência. Para uma lista de negociações abertas, você pode imaginar que pode levar uma hora ou um dia ou mais.
E o algoritmo (google "Bresenham Algorithm", por exemplo) de coloração pixel por pixel é executado pela placa gráfica, e o processador não permanece sobre ela. Também é executado muito rapidamente. E... uma vez por chamada. Nenhuma reinicialização a 16ms é necessária, a imagem da tela é mantida constante na memória de vídeo até que uma nova mudança seja feita sob o comando do processador. Além disso, para acelerar a resposta da tela visível, a memória de vídeo também é mantida em duas cópias, as mudanças são feitas na invisível, e então a página de vídeo é trocada imediatamente.
Se sua abordagem para a saída da tela ainda tiver a " inicialização permanente da matriz" de pixels que você descreve - você deve se livrar dela, não é o caso.
Que bagunça...
É uma miscelânea de conhecimentos fragmentados.
No final das contas, não é assim que funciona.
Não, o redesenho não carrega o processador de forma alguma; são necessários no máximo alguns nano- ou microssegundos para que ele envie um comando para o driver gráfico. Os processadores da placa de vídeo executam a pintura em si, pixel a pixel, enquanto normalmente há centenas deles e trabalham simultaneamente com o processador, em paralelo. Ou seja, o processador emite o comando para o driver gráfico: exibir um círculo com o centro nas coordenadas Xc, Yc e raio R em modo CopyPut. Para o processador, esta é apenas uma chamada de função com parâmetros passados. Não vai mais longe do que isso. Tais chamadas não fazem mais do que, por exemplo, 2 vezes por segundo, caso contrário o usuário simplesmente não consegue entender nada na tela, não pode ser puxado com tanta freqüência. Para uma lista de negociações abertas, você pode imaginar que pode levar uma hora ou um dia ou mais.
E o algoritmo (google "Bresenham Algorithm", por exemplo) de coloração pixel por pixel é executado pela placa gráfica, e o processador não permanece sobre ela. Também é executado muito rapidamente. E... uma vez por chamada. Nenhuma reinicialização a 16ms é necessária, a imagem da tela é mantida constante na memória de vídeo até que uma nova mudança seja feita sob o comando do processador. Além disso, para acelerar a resposta da tela visível, a memória de vídeo também é mantida em duas instâncias, as mudanças são feitas na invisível, e então a página de vídeo é trocada imediatamente.
Se sua abordagem da saída ainda tiver a " inicialização constante da matriz" de pixels - você precisa se livrar dela.
Você tem uma teoria interessante, embora não se encaixe bem com os resultados de minhas experiências, que agora vou postar abaixo.
Como o teste mostra, é a inicialização da matriz de pixels que mais carrega a CPU.
Verifique o teste EA abaixo.
Tenho que admitir que fiquei um pouco surpreso com os resultados do teste.
E assim, estamos falando de chamadas de funções constantes a uma freqüência de 16 ms.
Acontece que é a inicialização da matriz de pixels durante o desenho que mais carrega o processador.
Mas o mais estranho foi que a repetida chamada de função
carregaria o processador em 10 a 15%.
Além disso, as chamadas
carregar o processador pelos mesmos 10-15%.
Ao mesmo tempo, chamadas simultâneas de todas as três funções
Não causa empilhamento de carga. A carga ainda é de 10-15%.
Entretanto, se você adicionar um loop de reinicialização constante de um milhão de células a essas chamadas
então a carga da CPU sobe para 50%.
//-----------------------------------------------------------------------------------------------------------------------------------------------------
A função em si
não carrega o processador.
A função
será carregado de 0 a 5%, dependendo do tamanho da matriz Arr[].
Aqui está um assessor de testes. Você precisa comentar sobre as linhas e verificar a carga da CPU no gerenciador de tarefas.
Aqui está seu código:
Há algo errado com os dados da coluna Tempo de Abertura na figura.
Sim. Eu usei TimeToStr(OrderOpenPrice(),TIME_MINUTES|TIME_SECONDS);
Eu não sei por que é assim.
Tenho que admitir que fiquei um pouco surpreso com os resultados do teste.
E assim, estamos falando de chamadas de funções constantes a uma freqüência de 16 ms.
Acontece que é a inicialização da matriz de pixels durante o desenho que mais carrega o processador.
Mas o mais estranho foi que a repetida chamada de função
carregaria o processador em 10 a 15%.
Além disso, as chamadas
carregar o processador pelos mesmos 10-15%.
Ao mesmo tempo, chamadas simultâneas de todas as três funções
Não causa empilhamento de carga. A carga ainda é de 10-15%.
Entretanto, se você adicionar um loop de reinicialização constante de um milhão de células a essas chamadas
então a carga da CPU sobe para 50%.
//-----------------------------------------------------------------------------------------------------------------------------------------------------
A função em si
não carrega o processador.
A função
cargas de 0 a 5%, dependendo do tamanho da matriz Arr[].
Devo admitir que fiquei um pouco surpreso com os resultados do teste.
Portanto, estamos falando de chamadas de funções constantes a 16 msec.
Acontece que é a inicialização de um conjunto de pixels durante o desenho que carrega o processador mais do que tudo.
Mas o mais estranho foi que a repetida chamada de função
carregaria o processador em 10 a 15%.
Além disso, as chamadas
carregar o processador pelos mesmos 10-15%.
Ao mesmo tempo, chamadas simultâneas de todas as três funções
Não causa empilhamento de carga. A carga ainda é de 10-15%.
Entretanto, se você adicionar um loop de reinicialização constante de um milhão de células a essas chamadas
então a carga da CPU sobe para 50%.
//-----------------------------------------------------------------------------------------------------------------------------------------------------
A função em si
não carrega o processador.
A função
será carregado de 0 a 5%, dependendo do tamanho da matriz Arr[].
Peter, há um forte sentimento de que você não escuta nada do que lhe foi dito durante centenas de páginas.
Reler o fio - há respostas para a pergunta "por que assim é".
Sim. Eu usei TimeToStr(OrderOpenPrice(),TIME_MINUTES|TIME_SECONDS);
Eu não sei por que.
Porque ao invés de OrderOpenPrice colocar OrderOpenTime()