Articles of otimização de

Ler grande quantidade de dados do arquivo em Java

Eu tenho um arquivo de texto que contém 1 000 002 números na seguinte formação: 123 456 1 2 3 4 5 6 …. 999999 100000 Agora eu preciso ler esses dados e alocá-los para variables int (os dois primeiros números) e todo o resto ( 1.000.000 números) para um array int[] . Não é […]

Java: Como verificar se há pointers nulos com eficiência

Existem alguns padrões para verificar se um parâmetro para um método recebeu um valor null . Primeiro, o clássico. É comum em código próprio e óbvio para entender. public void method1(String arg) { if (arg == null) { throw new NullPointerException(“arg”); } } Em segundo lugar, você pode usar um framework existente. Esse código parece […]

Função inline v. Macro em C – Qual é a sobrecarga (memory / velocidade)?

Eu pesquisei o Stack Overflow para os prós / contras de macros semelhantes a funções e funções inline. Eu encontrei a seguinte discussão: Prós e contras de diferentes funções macro / methods inline em C … mas não respondeu a minha principal questão de gravação. Ou seja, qual é a sobrecarga em c de usar […]

Acelerar a inserção em massa usando o ORM do Django?

Estou planejando fazer o upload de um bilhão de registros de ~ 750 arquivos (cada ~ 250MB) para um database usando o ORM do django. Atualmente, cada arquivo leva ~ 20min para processar, e eu queria saber se há alguma maneira de acelerar esse processo. Tomei as seguintes medidas: Use @ transaction.commit_manually e confirme uma […]

Práticas recomendadas, dicas e truques de otimização de desempenho de canvas HTML5

VOCÊ SABE ALGUMAS MAIS MELHORES PRÁTICAS PARA A LONA? Por favor, adicione a este tópico o que você sabe, aprendeu ou leu on-line sobre todas as práticas recomendadas, dicas / truques para desempenho Com o Canvas ainda sendo muito novo na Internet, e nenhum sinal de que ele esteja envelhecendo que eu possa ver no […]

Práticas de Codificação que permitem ao compilador / otimizador fazer um programa mais rápido

Muitos anos atrás, os compiladores C não eram particularmente inteligentes. Como solução alternativa, a K & R inventou a palavra-chave register , para sugerir ao compilador, que talvez seja uma boa idéia manter essa variável em um registro interno. Eles também fizeram o operador terciário para ajudar a gerar um código melhor. Com o passar […]

Os JITers JavaScript modernos precisam de um cache de tamanho de array em loops?

Eu acho a prática de armazenar em cache uma propriedade de length de array dentro de um loop for bastante desagradável. Como em, for (var i = 0, l = myArray.length; i < l; ++i) { // … } Pelo menos aos meus olhos, isso prejudica muito a legibilidade em comparação com o simples for […]

Por que o memcmp é muito mais rápido que uma verificação de loop?

Por que o memcmp(a, b, size) é muito mais rápido que: for(i = 0; i < nelements; i++) { if a[i] != b[i] return 0; } return 1; É memcmp uma instrução da CPU ou algo assim? Deve ser bem profundo, porque eu tenho uma aceleração massiva usando memcmp no loop.

Qual é mais rápido: limpar a coleção ou instanciar novos

Eu tenho algumas listas genéricas no meu código, que possuem dezenas ou centenas de elementos. Às vezes, preciso preencher essas listas com outros objects, então a pergunta é: o que será mais rápido, chamar o método Clear() ou criar uma new List() ?

Desempenho inesperadamente pobre e estranhamente bimodal para o loop de loja na Intel Skylake

Estou vendo um desempenho inesperadamente fraco para um loop de loja simples que possui dois armazenamentos: um com um avanço de 16 bytes e outro sempre no mesmo local 1 , assim: volatile uint32_t value; void weirdo_cpp(size_t iters, uint32_t* output) { uint32_t x = value; uint32_t *rdx = output; volatile uint32_t *rsi = output; do […]