Script para teste de THP no sistema

Publicado por Sidnei Serra (última atualização em 04/10/2025)

[ Hits: 1.468 ]

Homepage: https://www.youtube.com/@alquimistaTI

Download thp




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.

  



Esconder código-fonte

#!/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"

Scripts recomendados

Monitorando memória RAM

Inversor de links de download (ou qualquer outra String)

Configurar data e hora em Xdialog

Script em bash para compilação do kernel 3.3.2 para Ubuntu 11.10 com patch 3.3.0-ck1

Backup de algumas databases, Remotamente.


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts