5 pontos por GN⁺ 2023-07-04 | 1 comentários | Compartilhar no WhatsApp
  • Fizz Buzz é um desafio de programação comum dado em entrevistas.
  • Este artigo apresenta várias implementações de FizzBuzz em diferentes linguagens de programação.
  • Até agora, a maior taxa de processamento obtida é de cerca de 57,2 GiB/s em assembly.
  • Este artigo fornece instruções de compilação e uso para a implementação em assembly.
  • A versão multithread do programa não trouxe um ganho de velocidade significativo.
  • Este artigo destaca os desafios e as otimizações para uma implementação de FizzBuzz de alto desempenho.
  • Este artigo discute um programa em assembly AVX2 que implementa o algoritmo FizzBuzz.
  • O programa usa formato de números primos altos e a chamada de sistema vmsplice para desempenho mais rápido.
  • O programa inclui várias etapas de inicialização e rotinas para escrever Fizz, Buzz e os números de linha.
  • Este artigo menciona um interpretador de bytecode que gera saída contínua de FizzBuzz.
  • O programa em bytecode é interpretado usando instruções SIMD para processamento eficiente.
  • Este artigo discute seções específicas de código relacionadas ao loop principal que interpreta o bytecode e gera a saída.
  • O código fornecido é uma submissão para um desafio de programação focado em otimizar o desempenho do FizzBuzz.
  • Este código alcança alto desempenho e aproveita técnicas e instruções avançadas.
  • Este artigo discute um programa em C que gera a sequência FizzBuzz usando técnicas otimizadas.
  • O código foi otimizado ainda mais por outros desenvolvedores, mostrando desempenho melhor.
  • Este artigo discute uma submissão de código que usa compilação JIT para gerar um assembly FizzBuzz mais rápido.
  • Esta implementação inclui um pré-processador e código C vetorizado para saída eficiente.
  • O código foi otimizado e testado em vários sistemas para oferecer desempenho superior ao de submissões anteriores.
  • Este artigo discute uma implementação em C que usa instruções AVX2 para otimização.
  • Esta implementação inclui um compilador JIT e alcança alta velocidade e uso eficiente de memória.
  • Este artigo apresenta uma implementação em Rust para demonstrar a velocidade do FizzBuzz.
  • A implementação em Rust usa conversão eficiente de inteiro para string e técnicas de fragmentação de código.
  • Este artigo discute um programa em C que implementa FizzBuzz usando técnicas avançadas e otimizações.
  • O programa foi projetado para rodar mais rápido do que todos os demais e inclui explicações e trechos de código.
  • O autor fornece dicas e avisos sobre o uso da chamada de sistema vmsplice e inclui um módulo de testes.
  • Este texto inclui trechos de código relacionados a uma função chamada fizzbuzz que gera a saída de forma eficiente.

1 comentários

 
GN⁺ 2023-07-04
Comentários no Hacker News
  • O Linux é um projeto de arquitetura de sistema impressionante, capaz de manter totalmente no cache L2 os dados canalizados de um programa para outro.
  • O autor do artigo resolve problemas relacionados ao ASLR trocando comentários bem elaborados com uma pessoa que não está executando o programa.
  • O desempenho da implementação de FizzBuzz em Rust é inesperado, ficando em um nível semelhante ao do Python 3.
  • Escrever código em assembly pode tornar tudo mais rápido.
  • Avaliar a velocidade de resolução de problemas complexos é falho, porque isso testa principalmente a eficiência da extração de memória e da transferência entre processos.
  • O uso de vmsplice pode não estar de acordo com os requisitos da disputa, pois fornece a outros processos acesso à memória de um processo.
  • A importância de ".S" e ".s" nas extensões de arquivo passa a ser questionável.
  • O Java é surpreendentemente rápido em comparação com outras linguagens, como C, C++, assembly, Go e Rust.