Por que você deveria comprar uma CPU mais rápida
(blog.howardjohn.info)- Nos últimos anos, o desempenho das CPUs melhorou drasticamente, mas muitos desenvolvedores ainda usam chips móveis antigos, o que reduz a produtividade
- Serviços de assinatura de codificação com IA, com custo anual de cerca de US$ 500, são considerados justificáveis, o que sinaliza que o mercado atribui esse valor à produtividade de engenheiros de software
- Em contrapartida, uma CPU topo de linha (AMD Ryzen 9 9950X) pode ser comprada por US$ 500 e, considerando depreciação em 3 anos, custa cerca de US$ 170 por ano, sendo muito mais econômica do que uma assinatura de IA
- Segundo benchmarks, uma CPU desktop moderna entrega mais de 10x o desempenho de uma CPU antiga de laptop, melhorando radicalmente a velocidade de builds e testes
- Portanto, se uma assinatura de IA pode ser justificada, então o melhor investimento para maximizar a produtividade de desenvolvimento é uma CPU rápida
CPU e produtividade
- As CPUs mais recentes são cerca de 3x melhores do que há 3 anos, e CPUs desktop são cerca de 3x mais rápidas do que CPUs de notebook
- VMs na nuvem também melhoram de 2x a 3x a cada nova geração, com preços semelhantes
- Portanto, fazer upgrade de CPU é a forma mais segura de garantir produtividade no longo prazo
Comparação de custo-benefício
- Serviços por assinatura de ferramentas de codificação com IA (ex.: Cursor) estão em alta, e o plano para equipes custa cerca de US$ 480~500 por ano
- Outros serviços têm preços em faixa parecida, mostrando que a produtividade de engenharia vale pelo menos US$ 500 por ano
- O preço da CPU topo de linha AMD Ryzen 9 9950X é de US$ 500
- Assumindo que a empresa faça a amortização linear da máquina de desenvolvimento em 3 anos, isso dá cerca de US$ 170 por ano
- Em comparação com o salário de um engenheiro, até mesmo 1% de ganho de produtividade já faz o investimento valer a pena
Resultados dos benchmarks
- Foram medidos benchmarks de compilação do kernel Linux e operações de TLS em três tipos de máquina
- notebook fornecido pela empresa em 2024 (i7-1165G7, lançado em 2020)
- o ThinkPad mais rápido disponível para compra em 2024 (AMD Ryzen 7840U)
- a CPU desktop mais rápida disponível para compra em 2025 (AMD Ryzen 9950X)
-
Compilação do kernel Linux 6.15 (em segundos, quanto menor melhor)
- AMD Ryzen 9 9950X (16 núcleos): 48 segundos
- AMD Ryzen 7 7840U: 194 segundos
- Intel Core i7-1165G7: 349 segundos
→ o desktop moderno é cerca de 7x mais rápido do que o notebook antigo
-
OpenSSL 3.3 (AES-256-GCM, em throughput, quanto maior melhor)
- AMD Ryzen 9 9950X: 386,1 bilhões de bytes/s
- AMD Ryzen 7 7840U: 69,6 bilhões de bytes/s
- Intel Core i7-1165G7: 33,4 bilhões de bytes/s
→ o desktop moderno é 11~12x mais rápido do que o notebook antigo
- Resultado: foi confirmada uma diferença de desempenho superior a 10x tanto na compilação do kernel Linux quanto em operações de TLS
- Ex.: reduzir o tempo de build de 30 segundos → 3 segundos, ou de 3 segundos → 300 ms, muda a própria experiência de trabalho
Conclusão
- Em termos gerais de experiência
- CPUs desktop são cerca de 3x mais rápidas do que CPUs de notebook
- CPUs topo de linha são cerca de 3x mais rápidas do que modelos equivalentes de 3 anos atrás
- Em VMs na nuvem, essa tendência também se repete; a cada geração, elas ficam de 2x a 3x mais rápidas na maioria das cargas de trabalho, com preços quase inalterados
- Se uma assinatura de IA é um investimento racional, então comprar uma CPU topo de linha pelo mesmo custo — ou até menos — também é justificável
- A ferramenta mais eficaz para aumentar a produtividade de desenvolvedores é uma CPU rápida
10 comentários
Compilar o kernel em menos de 1 minuto... que felicidade.
Nossa... parece que foi ontem que eu deixava a compilação rodando e ficava batendo papo por 10, 20 minutos... 1 minuto, hein...
No fim das contas, um CPU mais rápido traz muitos custos ocultos
Pra mim, o que mais dá para perceber é a falta de RAM do que de CPU.
Fico me perguntando se faz sentido comparar um desktop mais recente com um notebook antigo.
A proposta do texto não é realmente defender seriamente que você deve comprar um 9950X, certo? É mais uma brincadeira, não é? kkk
Ainda assim, CPU antiga demais realmente atrapalha o desenvolvimento.
De vez em quando eu desenvolvo com uma CPU parecida com a desse notebook antigo mencionado no texto, e a diferença na imersão é realmente enorme.
Acho exagerado falar em ganho de desempenho 3x em 3 anos sem nem apresentar dados de benchmark
Acho que a intenção era falar da eficiência de acordo com a CPU, e não tanto comparar especificações. rsrs
Ah.. 9950X.. comprei por 1 milhão de won...
Comentários do Hacker News
Quando eu trabalhava numa FAANG, já cheguei a calcular, com base no trabalho real, a redução de tempo de espera e o ROI em relação ao custo da mão de obra dos desenvolvedores ao fornecer máquinas de 16 GB e 64 GB; especialmente para desenvolvedores sêniores, o retorno do investimento aparecia em poucas semanas. Com base nessa experiência, acho que, ao prover hardware para engenheiros de software, quase sempre faz sentido trocar pelo Macbook Pro topo de linha a cada 2–3 anos. Vale lembrar que isso pode não se aplicar fora do contexto de desktops ou para outras funções.
Numericamente parece plausível, mas fico em dúvida se a produtividade de desenvolvedores pode mesmo ser quantificada de forma tão simples. Alguns estudos de psicologia sugerem que cada pessoa tem uma quantidade total de concentração disponível por dia. Na prática, já vivi a experiência de usar esse tempo de espera para fazer uma pausa leve e poupar energia para a próxima sessão de raciocínio profundo.
A maioria dos meus amigos em FAANG trabalha em servidores remotos. Edição remota e build remoto são o padrão, e os builds são processados em centenas ou milhares de builders em rede. Tornar a máquina local mais rápida quase não faz diferença na prática.
A FAANG gerencia os PCs de forma centralizada. Deixando de lado as questões éticas desse nível de monitoramento, para validar o efeito real eu gostaria de limitar o uso de memória do SO e rastrear métricas concretas, como número de PRs e tempo real de atividade no teclado.
Em vez de Macbook Pro, eu queria trabalhar num desktop Linux de verdade. Estou cansado de usar, no PC de trabalho, chip móvel que perde desempenho por causa do calor.
Entendo a intenção, mas na prática é difícil até prever com precisão o tempo de conclusão de um projeto. É raro um computador mais rápido realmente “economizar tempo”; no fim, normalmente é uma questão binária do tipo “roda ou não roda”, ou então um fator ambiental que causa frustração repetida por causa de esperas desnecessárias. Com apenas US$ 1.000 dá para eliminar aqueles 10 minutos de espera por dia.
Estou pensando se vale a pena continuar usando um CPU antigo. Ainda uso um 6600 (65W), lançado em 2016, como PC principal. Também troquei o SSD (um SSD SLC de 2011, pela expectativa de durabilidade) e fiz upgrade para 32 GB de memória de forma barata pelo aliexpress. No monitor, troquei um Eizo FlexScan 1932 que usei por 15 anos por um RadiForce 191M. Combina bem com softwares de redução de luz azul como f.lux e redshift. Com uma única GPU 3050 de baixo consumo, jogos lançados este ano rodam tranquilamente a 60 fps. Compilar também não é problema. Acho razoável continuar usando até a placa-mãe quebrar primeiro.
Eu também uso um E5-2650v2 há vários anos, comprado por US$ 50 já retirado de servidor, numa placa mATX chinesa. Tem SSD 970 Evo, 24 GB de DDR3 sem paridade entre os módulos, e cobre tanto meu home server quanto meu ambiente dev (Incus em contêineres). Todo ano penso em trocar, mas na prática ele aguenta bem o suficiente e nunca sinto necessidade real de mudar.
Em vez de um SSD SLC puro de 2011, dá para comprar um SSD moderno com cache SLC maior por menos dinheiro.
Isso varia muito conforme o uso real. Eu consigo cobrir tarefas do dia a dia tranquilamente com um laptop Core 2 Duo de 2,4 GHz com 17 anos e 4 GB de RAM. Se muita gente não aceita um ambiente desses, geralmente é porque o trabalho delas é bem mais pesado.
Depende do jogo. Eu usava um 7700k, mas troquei por um 5700X3D porque Factorio estava pesando. Em Path of Exile 2, mesmo com CPU recente, mal consigo manter 30 fps em combates grandes.
Eu prefiro máquinas com menos calor, então fiz upgrade para um Ryzen 5700 há 2 anos. Raramente uso todos os núcleos, e graças à capacidade de refrigeração quase não se ouve o barulho das ventoinhas.
Existe um ponto de inflexão no valor do CPU. 1) Existem CPUs com desempenho bom o bastante para dar conta da maioria dos trabalhos por 10 anos. 2) Às vezes surgem CPUs que, por muito tempo, são vistas como tendo desempenho real melhor do que os modelos sucessores. O i7-4770 foi um caso emblemático e seguia sendo melhor de usar do que seus sucessores até antes da 10ª geração. Só com o i7-12700 apareceu um substituto parecido, e o i5-12400 dá para recomendar pelo custo-benefício. A partir da 13ª geração, a Intel mudou para a estrutura de núcleos E/P, e até hoje sinto que a 12ª geração é mais adequada para desktops novos. O AMD Ryzen 9950x também é um chip impressionante; usei num PC customizado de um amigo e parece algo que ele vai usar até 2035.
Grandes empresas querem economia de escala. Compram de uma vez muitas máquinas com a mesma especificação e distribuem a mesma máquina para todo mundo por vários anos. Assim, fabricantes como Dell e HP entregam com preço unitário bem mais baixo. Dá para comprar PCs de especificação muito alta por menos da metade do preço do consumidor comum, mas, com a configuração congelada, com o passar do tempo eles inevitavelmente vão ficando mais lentos.
O artigo original pulou algumas etapas importantes — faltou explicar o quanto um CPU mais rápido impacta de fato o desempenho do desenvolvedor. Se a compilação leva 30 segundos, o desenvolvedor vai checar e-mail ou redes sociais e perde o fluxo; se isso cai para 3 segundos, o efeito para manter o “flow” é enorme. Mas faltou a metodologia para reduzir o tempo de compilação aumentando a velocidade do CPU. Por exemplo, se o gargalo do compilador for I/O ou RAM, aumentar só o CPU tem limite. No fim, quando um gargalo é removido, aparece o próximo, e há um limite para o ganho de desempenho geral.
Meu chefe me comprou o servidor mais potente que havia, custou US$ 15 mil. Quando passei a usar mais de 40 dos 56 núcleos, o tempo de build aumentou ou o efeito foi mínimo. Acabamos concluindo que o gargalo provavelmente era largura de banda de memória, embora eu não saiba como provar isso.
Acho raro o compilador ficar limitado por I/O. RAM pode virar gargalo, mas CPUs modernos também melhoram a velocidade de troca de dados com a RAM, então em parte isso pode ser resolvido. Só dobrar a velocidade de resposta do LSP (Language Server Protocol) já ajuda enormemente a manter o foco.
Mesmo aumentando bastante a quantidade de núcleos para compilação, é preciso lembrar que o linker (tempo de linkedição) na prática depende só de um único núcleo, e é aí que está o verdadeiro gargalo.
Hoje em dia, mais do que ambientes em que o compilador é o gargalo, o problema são outros tempos de espera, como ter de pegar o celular por causa do Microsoft MFA ou aguardar permissão temporária via PIM. Já passou a época em que esperar 30 segundos por uma compilação era a pior lentidão do dia.
Hoje em dia não é tão comum conseguir transformar 30 segundos em 3 segundos apenas com upgrade de hardware, a menos que a compra inicial tenha sido realmente de baixíssimo nível. Como o artigo compara laptop com desktop, talvez a conclusão devesse mesmo ser “vamos comprar dois computadores”.
Sempre preferi desempenho de ponta quando monto um desktop novo, considerando também cache e consumo de energia (houve épocas em que eu me importava bastante com consumo). Desde os tempos de dual Pentium Pro até um Xeon E3-1245 v3, que montei em 2012 com 32 GB de RAM topo de linha, só recentemente comecei a sentir lentidão, e acho que isso se deve principalmente aos patches de segurança do Windows. Mesmo gastando algumas centenas de dólares a mais no início, dá para usar por muito mais tempo.
Um ponto importante que o autor deixou passar: ao falar de CPUs de notebook, ele não mencionou algo essencial. Em notebooks avançados, o maior limitador é o limite térmico. Mesmo com um CPU melhor, o lado mais eficiente leva vantagem. Na hora de escolher a marca, é importante optar por quem tem projeto de refrigeração decente.
É fisicamente impossível colocar em um notebook refrigeração e energia equivalentes às de um CPU desktop topo de linha. Quase a única forma seria conectar uma porta para loop externo de refrigeração líquida, mas, nesse caso, eu acho melhor usar logo um desktop. Também é preciso considerar a praticidade dos periféricos, multimonitores etc. Acho difícil entender por que tantos desenvolvedores insistem em trabalhar de laptop. Talvez o logo da maçã pese bastante.
(eu, timidamente, desenvolvendo num Macbook Air fanless...)
Depende do tipo de trabalho. Recentemente montei um PC novo de vários milhares de reais com CPU de 24 núcleos, e os builds de gcc em docker ficaram muito mais rápidos. Mas, curiosamente, o build de app Angular ficou um pouco mais lento do que no meu Macbook antigo. Dividi bibliotecas e até fiz otimização paralela com turbo, mas, se uma alteração em CSS leva de 6 a 10 segundos para aparecer no navegador, isso é realmente doloroso. Quando isso se acumula, o incômodo e a fadiga também se acumulam.
Em trabalhos como C/C++, que aproveitam múltiplos núcleos, dá para sentir claramente a diferença de desempenho. Ainda assim, o desempenho single-core de um AMD Ryzen 9 9950X de 16 núcleos é apenas 1,8x mais rápido que o de um velho laptop i5 de 4 núcleos, veja a comparação de benchmarks de CPU. Seria ótimo se no futuro chegasse a era dos PCs ARM com 1000 núcleos e 1 TB de memória, capazes de treinar ou testar LLMs grandes. Se alguém fizer isso, por favor me avise.
Eu também dei um salto direto de um i3770 antigo (CPU de 12 anos) para um 9900x. No benchmark, a diferença de single-core é só de 50%, mas na sensação de uso real parece duas vezes mais rápido. Em multithread, chega perto de três vezes. Também usei recentemente um Mac Mini M4 e, na prática, ele pareceu muito mais lento do que esses dois desktops (principalmente por questão de UI/software, ao que parece). Uso o M4 só quando preciso do Xcode.
Eu também pulei tudo acima da 5ª geração da Intel e comprei um laptop novo, mas o mais significativo não foi o desempenho e sim a mudança de uma workstation antiga, pesada e barulhenta, para um laptop pequeno e leve, sem ruído de ventoinha e que carrega bem com adaptador USB-C. O desempenho é parecido, mas a usabilidade é claramente diferente.
Empresas, especialmente as FANG, também tendem a ser obcecadas demais por economizar no hardware dos desenvolvedores: limite na quantidade/tamanho de monitores, exigência de aprovação ou laudo médico para equipamento ergonômico, processo de aprovação para solicitar hardware mais potente, limites de viagem/hospedagem/passagem sem refletir a inflação etc. Claro, também existem pessoas que não fazem praticamente nada e só ficam com um MacBook de alta especificação e 500 abas do Chrome abertas; esse abuso realmente acontece. Ainda assim, mesmo isso é um custo muito pequeno perto do salário anual de um desenvolvedor.
As startups bem-sucedidas por onde passei, no começo, davam tudo o que a pessoa quisesse: equipamento, monitor, cadeira, mesa com ajuste de altura, SaaS, DoorDash em caso de hora extra etc. Só que chega um momento em que uns 25% dos funcionários passam a abusar seriamente, e, quando a empresa olha os custos, começam as restrições. MacBook Pro, monitor caro, mesa em pé, iPad, cadeira de escritório — tudo isso junto facilmente vira milhares ou dezenas de milhares de dólares por pessoa. As políticas da empresa acabam sendo exploradas até o limite por alguém. Também aumentam as perdas de equipamento e até pequenas fraudes, como atrasar de propósito a saída para conseguir entrega de comida.
Em um time de TI de uma FAANG, usam há anos a desculpa de que SSDs acima de 250 GB estão “em falta”. Dizem que é problema de fornecimento global, mas na prática parece incompetência do time de compras. Muitos engenheiros reclamam nos chats, e desenvolvedores que ganham mais de US$ 300 mil por ano compram SSD com o próprio dinheiro e instalam sem avisar o time de TI. Ao mesmo tempo, nessa empresa dá para subir uma VM em nuvem com 100 TB com um clique. A contradição é engraçada, mas todo mundo já aceitou.
Quando a empresa tem dezenas ou centenas de milhares de funcionários, despesas totalmente sem limite com hardware e viagens acabam se acumulando em valores enormes, então acho necessário haver certas restrições. Uma minoria sem noção com dinheiro pode gerar prejuízo para a empresa.
Se forem 500 abas do Chrome relacionadas ao trabalho, então isso ajuda na produtividade e não é abuso. Meu custo de mão de obra é 100 vezes maior que o preço do laptop, então, se o laptop pode aliviar meu trabalho, prefiro que essa máquina faça mais da carga.
O abuso com equipamentos topo de linha pode rapidamente escalar para dezenas ou centenas de milhares de dólares. Só um MacBook Pro de 14 polegadas na configuração máxima, segundo a Apple Store, já passa de US$ 7.000. Uma configuração intermediária de US$ 2.600–3.000 já é suficiente para o trabalho, e a diferença acima disso pode quase não gerar ganho real de produtividade. Quando essa diferença é multiplicada por times de 20 a 60 pessoas, pesa bastante para uma startup. Se ainda somar monitor/cadeira etc., gastar em média só US$ 2.000 desnecessários por pessoa já significa US$ 120 mil de despesa extra de uma vez. Já vi empresa manter a política de “compre qualquer coisa que precisar” até chegar a 150 pessoas.
Tem tanta coisa escrita que parece sonho que dá até tontura.