Script para teste de THP no sistema
Publicado por Sidnei Serra (última atualização em 04/10/2025)
[ Hits: 65 ]
Homepage: https://www.youtube.com/channel/UCRgokKtNlttdmg2RJEa2VYw
Nesse artigo - https://www.vivaolinux.com.br/artigo/O-que-o-THP-na-configurao-de-RAM-do-Linux-e-quando-desabilit-lo - mostro o que é THP (Transparent Huge Pages) e aqui coloco um script para testar o seu sistema para ver se vale a pena ou não desabilitá-lo. Instale o pacote bc antes de fazer o teste.
#!/bin/bash # thp_compare_final2.sh # Teste de THP - instale o pacote bc no seu sistema SIZE_MB=1024 run_test() { local thp_state="$1" # Ajusta THP echo "$thp_state" | sudo tee /sys/kernel/mm/transparent_hugepage/enabled > /dev/null echo "$thp_state" | sudo tee /sys/kernel/mm/transparent_hugepage/defrag > /dev/null START=$(date +%s.%N) python3 - << PYTHON import time SIZE_MB = $SIZE_MB a = bytearray(SIZE_MB * 1024 * 1024) time.sleep(2) del a PYTHON END=$(date +%s.%N) # Calcula tempo ELAPSED=$(echo "$END - $START" | bc -l) echo "$ELAPSED" } # Salva estado atual do THP CURRENT_THP=$(cat /sys/kernel/mm/transparent_hugepage/enabled | grep -oP '\[.*?\]' | tr -d '[]') echo "Estado atual do THP: $CURRENT_THP" # Teste com THP ativo TIME_ON=$(run_test always) # Teste com THP desativado TIME_OFF=$(run_test never) # Mostra resultados echo "" echo "Tempo com THP=always : $TIME_ON s" echo "Tempo com THP=never : $TIME_OFF s" # Comparação correta usando bc IS_ON_BETTER=$(echo "$TIME_ON < $TIME_OFF" | bc -l) IS_OFF_BETTER=$(echo "$TIME_ON > $TIME_OFF" | bc -l) if [ "$IS_ON_BETTER" -eq 1 ]; then echo "THP ativo foi mais rápido" elif [ "$IS_OFF_BETTER" -eq 1 ]; then echo "THP desativado foi mais rápido" else echo "Não houve diferença significativa" fi # Restaura estado original echo "$CURRENT_THP" | sudo tee /sys/kernel/mm/transparent_hugepage/enabled > /dev/null echo "$CURRENT_THP" | sudo tee /sys/kernel/mm/transparent_hugepage/defrag > /dev/null echo "Estado do THP restaurado para: $CURRENT_THP"
Menu no terminal usando Shell Script
Mover e redimensionar janelas para os cantos da tela
Minha solução para monitorar múltiplos termômetros no Slackware
Nenhum comentário foi encontrado.
Kernel turbinado e GNOME 49 dominam o giro do dia no mundo Linux
Novidades Linux: Kernel 6.17, distros em ebulição e segurança em foco
Kernel ganha novos linters Rust e distros avançam com recursos de IA
Firewire resiste, Bcachefs sai: destaques Linux do dia
Kernel 6.18 em foco, betas fervilhando e avanços em IA no Linux
Adicionando o repositório backports no Debian 13 Trixie
Como definir um IP estático no Linux Debian
Orientação para instalar o Warsaw - módulo de proteção do Banco do Bra... (2)
systemd-resol... precisa ser reiniciado periodicamente (5)
Alguém que utilize o Warsaw do BB no Ubuntu 24.04 [RESOLVIDO] (6)
Fedora não reconhece James Donkey 102 Wireless Gaming Mouse (2)