Articles of otimização de

Resultado de ponto flutuante diferente com otimização ativada – bug do compilador?

O código abaixo funciona no Visual Studio 2008 com e sem otimização. Mas só funciona em g ++ sem otimização (O0). #include #include #include double round(double v, double digit) { double pow = std::pow(10.0, digit); double t = v * pow; //std::cout << "t:" << t << std::endl; double r = std::floor(t + 0.5); //std::cout […]

O que é o Stream Fusion do Haskell?

O que é o Stream Fusion do Haskell e como usá-lo?

Por que o lambdas pode ser melhor otimizado pelo compilador do que funções simples?

Em seu livro The C++ Standard Library (Second Edition) Nicolai Josuttis afirma que lambdas podem ser melhor otimizados pelo compilador do que funções simples. Além disso, os compiladores de C ++ otimizam os lambdas melhor do que as funções comuns. (Página 213) Por que é que? Eu pensei que quando se trata de inlining não […]

Combine e minimize vários arquivos CSS / JS

Estou tentando otimizar o desempenho de um site consolidando e compactando os arquivos CSS e JS. Minha pergunta é mais sobre os passos (concretos) sobre como conseguir isso, dada uma situação real que eu estava enfrentando (deve ser típico entre outros desenvolvedores também, no entanto). Minha página faz referência a vários arquivos CSS e JS, […]

C # otimiza a concatenação de literais de string?

Por exemplo, o compilador sabe traduzir string s = “test ” + “this ” + “function”; para string s = “test this function”; e assim evitar o impacto no desempenho com a concatenação de string?

Como fazer com que o IOStream funcione melhor?

A maioria dos usuários de C ++ que aprenderam C preferem usar a família de funções printf / scanf mesmo quando estão codificando em C ++. Embora eu admita que eu ache a interface melhor (especialmente formato e localização semelhantes a POSIX), parece que uma grande preocupação é o desempenho. Tomando a olhar para esta […]

Reduzindo o uso de memory de aplicativos .NET?

Quais são algumas dicas para reduzir o uso de memory de aplicativos .NET? Considere o seguinte programa C # simples. class Program { static void Main(string[] args) { Console.ReadLine(); } } Compilado no modo de liberação para x64 e executando fora do Visual Studio, o gerenciador de tarefas relata o seguinte: Working Set: 9364k Private […]

O que é um algoritmo eficiente para encontrar a área de retângulos sobrepostos

Minha situação Entrada: um conjunto de retângulos cada rect é composto por 4 duplas como esta: (x0, y0, x1, y1) eles não são “girados” em qualquer ângulo, todos eles são retângulos “normais” que vão “para cima / baixo” e “esquerda / direita” em relação à canvas eles são colocados aleatoriamente – eles podem estar tocando […]

É seguro ler além do final de um buffer na mesma página em x86 e x64?

Muitos methods encontrados em algoritmos de alto desempenho poderiam ser (e são) simplificados se tivessem permissão para ler uma pequena quantidade após o fim dos buffers de input. Aqui, “pequena quantidade” geralmente significa até W – 1 bytes após o final, onde W é o tamanho da palavra em bytes do algoritmo (por exemplo, até […]

Quais são as mecânicas da otimização de strings curtas em libc ++?

Essa resposta fornece uma boa visão geral de alto nível da otimização de seqüência curta (SSO). No entanto, gostaria de saber com mais detalhes como funciona na prática, especificamente na implementação libc ++: Quão curta a string tem que ser para se qualificar para o SSO? Isso depende da arquitetura de destino? Como a implementação […]