Conteúdo original nessa thread do Twitter
Ei dev,
Já ouviu falar que um programa é cpu bound, memory bound, i/o bound, etc.? Não? Então cola aí pra que da próxima vez que você falar com seu crush devops, ele te note.
cc @sseraphini
↓
O termo "bound" pode soar complexo, mas é simples de entender na verdade. "Bound" pode significar "limite", que pode ser uma boa tradução livre pro nosso contexto.
Dessa forma, "cpu bound" poderia ser traduzido como "limitado pela cpu" e assim por diante, por exemplo.
A tradução já explicou boa parte desse conceito. Então, quando dizemos que determinado programa é, por exemplo, memory bound estamos dizendo que sua performance está atrelada/limitada primordialmente à memória disponível. Ou seja, melhoraríamos sua performance com mais memória.
O mesmo se aplica para cpu (performance limitada pela cpu), gpu, tamanho do disco, i/o (input/ouput ou entrada/saída), etc.
Aliás, i/o é um termo meio vago que pode significar i/o em disco, rede, periféricos externos, etc. É legal saber sobre isso.
Ah, I/O se pronuncia "Ai-Ou".
É meio que isso o conceito. Não falei que era simples?
Se você quiser explorar um pouco mais esse assunto na prática, dá pra facilmente restringir recursos com o docker em relação a memória e cpu com as flags --memory e --cpus.
Dá uma olhada aqui ↓
https://docs.docker.com/config/containers/resource_constraints/
Vai lá, escreve algum programa simples e tenta descobrir se ele é memory ou cpu bound.
Se chegou até aqui, não preciso nem dizer, né? Dá um abraço sem love bound aqui ó 🫂 ♥️
Obrigado demais pela moral!
Top comments (0)