Contagem de palavras 494x mais rápida com SIMD e threads

2025-08-17

Este artigo detalha a jornada do autor na otimização de um programa de contagem de palavras, alcançando uma notável aceleração de 494x. Começando com uma implementação Python ingênua (89,6 segundos), o autor melhorou progressivamente o desempenho usando o módulo `re` do CPython (13,7 segundos), um loop escalar em C (1,205 segundos) e, finalmente, instruções SIMD e multithreading (181 milissegundos). Cada etapa de otimização é explicada, cobrindo o uso de extensões C, loops C eficientes e utilização de CPU multinúcleo. Embora o multithreading tenha produzido ganhos menores que o esperado, a versão final atingiu uma velocidade de processamento impressionante de 5,52 GiB/s. O autor convida os leitores a sugerir otimizações adicionais.

Leia mais
Desenvolvimento

Dumac: Melhorias significativas de desempenho em uma ferramenta de uso de disco macOS

2025-08-11

Dumac, um utilitário de uso de disco macOS mais rápido que `du -sh`, utiliza a chamada de sistema `getattrlistbulk` específica do macOS. Após incorporar o feedback da comunidade, o autor aumentou o desempenho em cerca de 33% mudando do Tokio para Rayon para melhor paralelismo e otimizando o particionamento do conjunto de hash inode. Resolver a contenção de inode por meio de uma estratégia de particionamento refinada resultou em ganhos adicionais de velocidade.

Leia mais
Desenvolvimento

Prototipagem rápida de jogos com LÖVE

2024-12-31

Um programador, com o objetivo de concluir um jogo completo em 2025, construiu protótipos de xadrez e jogos de cartas usando a framework LÖVE2D em Lua. A API simples, porém poderosa, do LÖVE permitiu interações complexas da IU com código mínimo, acelerado ainda mais pela geração de código assistida por LLM. O autor descobriu que o LÖVE é ideal para prototipagem, especialmente IU, mas observou a necessidade de melhorias no recarregamento a quente e na separação de lógica para projetos maiores. O plano é usar o LÖVE para desenvolver um MVP de jogo básico.

Leia mais