55 lines
2.2 KiB
Bash
Executable File
55 lines
2.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
# Script mestre de execução e consolidação de benchmarks de performance do CyberCore Signer
|
|
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
|
|
cd "$ROOT_DIR"
|
|
|
|
JAVA_BIN="${JAVA_HOME:-/home/claudecio/.jdks/jdk-25.0.4.1+1}/bin/java"
|
|
JAVAC_BIN="${JAVA_HOME:-/home/claudecio/.jdks/jdk-25.0.4.1+1}/bin/javac"
|
|
JAR_FILE="modules/cybercore-app/target/cybercore-signer.jar"
|
|
|
|
echo "======================================================================="
|
|
echo " CYBERCORE SIGNER — SUÍTE DE MEDIÇÃO DE PERFORMANCE"
|
|
echo "======================================================================="
|
|
echo "Ambiente: $(uname -s) $(uname -m)"
|
|
echo "Java: $("$JAVA_BIN" -version 2>&1 | head -n 1)"
|
|
echo
|
|
|
|
# 1. Medições de Tempo de Inicialização e RSS (Média de 3 execuções)
|
|
echo "-----------------------------------------------------------------------"
|
|
echo "[1/2] Medindo Tempo de Inicialização do Servidor CCSP e Memória RSS..."
|
|
echo "-----------------------------------------------------------------------"
|
|
|
|
STARTUP_SUM=0
|
|
RSS_SUM=0
|
|
RUNS=3
|
|
|
|
for i in $(seq 1 $RUNS); do
|
|
echo -n " -> Execução $i de $RUNS: "
|
|
OUT=$(./scripts/bench/bench_startup_rss.sh)
|
|
S_MS=$(echo "$OUT" | grep "STARTUP_MS=" | cut -d'=' -f2)
|
|
R_MB=$(echo "$OUT" | grep "RSS_MB=" | cut -d'=' -f2)
|
|
echo "Startup = ${S_MS} ms | RSS = ${R_MB} MB"
|
|
STARTUP_SUM=$((STARTUP_SUM + S_MS))
|
|
RSS_SUM=$(awk "BEGIN {print $RSS_SUM + $R_MB}")
|
|
sleep 1
|
|
done
|
|
|
|
AVG_STARTUP=$((STARTUP_SUM / RUNS))
|
|
AVG_RSS=$(awk "BEGIN {printf \"%.2f\", $RSS_SUM / $RUNS}")
|
|
|
|
echo
|
|
echo "=> Média de Inicialização CCSP: ${AVG_STARTUP} ms"
|
|
echo "=> Média de Memória (RSS) em Idle: ${AVG_RSS} MB"
|
|
echo
|
|
|
|
# 2. Compilação e Execução do BenchmarkRunner (Certificados e PAdES)
|
|
echo "-----------------------------------------------------------------------"
|
|
echo "[2/2] Medindo Enumeração de Certificados e Latência PAdES..."
|
|
echo "-----------------------------------------------------------------------"
|
|
|
|
mkdir -p target/bench-classes
|
|
"$JAVAC_BIN" -cp "$JAR_FILE" -d target/bench-classes scripts/bench/BenchmarkRunner.java
|
|
"$JAVA_BIN" -cp "target/bench-classes:$JAR_FILE" scripts.bench.BenchmarkRunner
|