Phoronix Test Suite - 자동화된 벤치마킹 치트시트
Phoronix Test Suite (PTS)는 오픈소스 크로스플랫폼 자동화된 벤치마킹 프레임워크입니다. 수백 개의 다운로드 가능한 테스트 프로필(CPU, GPU, 디스크, 메모리, 컴파일러, 데이터베이스 등), 설치 및 종속성 처리, 재현 가능한 실행, 결과 집계를 제공하며, OpenBenchmarking.org를 통해 업로드/비교할 수 있습니다. “내 시스템 벤치마크”를 수동 작업에서 반복 가능하고 공유 가능한 턴키 프로세스로 바꿉니다.
설치
| 플랫폼 | 명령어 |
|---|
| Debian/Ubuntu | sudo apt install phoronix-test-suite |
| Fedora/RHEL | sudo dnf install phoronix-test-suite |
| Arch (AUR) | yay -S phoronix-test-suite |
| Generic | 릴리스 tarball 다운로드, ./install-sh 실행 |
| Requirement | PHP (CLI) 필요 |
| 확인 | phoronix-test-suite version |
핵심 개념
| 용어 | 의미 |
|---|
| Test profile | 단일 벤치마크 (예: pts/stress-ng) |
| Test suite | 관련 테스트 프로필 번들 |
| Result | 시스템의 저장된 벤치마크 출력 |
| OpenBenchmarking.org | 프로필 및 공유 결과의 클라우드 repo |
| Batch mode | 자동화용 비대화형 실행 |
테스트 찾기 & 설치
| 명령어 | 설명 |
|---|
phoronix-test-suite list-available-tests | 모든 다운로드 가능한 테스트 프로필 나열 |
phoronix-test-suite list-available-suites | 테스트 스위트 나열 |
phoronix-test-suite search compress | 테스트 검색 |
phoronix-test-suite info pts/stress-ng | 프로필의 세부사항 표시 |
phoronix-test-suite install pts/stress-ng | 테스트 다운로드 및 설치 |
벤치마크 실행
| 명령어 | 설명 |
|---|
phoronix-test-suite benchmark pts/stress-ng | 한 단계로 설치 + 실행 |
phoronix-test-suite run pts/c-ray | 설치된 테스트 실행 |
phoronix-test-suite default-run pts/cpu | 기본 옵션으로 실행 |
phoronix-test-suite benchmark build-linux-kernel | 커널 컴파일 스트레스 (CPU+RAM+bus) |
phoronix-test-suite finish-run RESULT | 저장된 실행 재개/완료 |
실행 중 PTS는 결과 이름을 묻고 신뢰할 수 있는 평균을 계산하기 위해 테스트를 반복할 수 있습니다.
결과 관리
| 명령어 | 설명 |
|---|
phoronix-test-suite list-saved-results | 로컬 결과 나열 |
phoronix-test-suite show-result RESULT | 결과 표시 |
phoronix-test-suite compare-results-to-baseline | 기준선과 비교 |
phoronix-test-suite merge-results A B | 결과 파일 병합 |
phoronix-test-suite result-file-to-csv RESULT | CSV로 내보내기 |
phoronix-test-suite remove-result RESULT | 결과 삭제 |
시스템 비교
# 두 머신에서 동일한 테스트 실행, 일치하는 결과 ID 제공, 그 후:
phoronix-test-suite merge-results machineA machineB
phoronix-test-suite show-result merged # 나란히 비교
Batch / 자동화
| 명령어 | 설명 |
|---|
phoronix-test-suite batch-setup | 비대화형 기본값 설정 |
phoronix-test-suite batch-benchmark pts/cpu | 프롬프트 없이 실행 |
TEST_RESULTS_NAME=run1 phoronix-test-suite ... | env로 결과 이름 설정 |
| Env vars | FORCE_TIMES_TO_RUN, BATCH_MODE 등 실행 제어 |
시스템 정보 & 모니터링
| 명령어 | 설명 |
|---|
phoronix-test-suite system-info | 상세 하드웨어/소프트웨어 인벤토리 |
phoronix-test-suite system-sensors | 이용 가능한 센서 읽기 |
phoronix-test-suite diagnostics | 환경 진단 |
일반적인 워크플로우
# 커널 빌드 테스트로 턴키 CPU + 메모리 soak
phoronix-test-suite benchmark build-linux-kernel
# 보고서용으로 내보낸 재현 가능한 스토리지 벤치마크
phoronix-test-suite benchmark pts/fio
phoronix-test-suite result-file-to-csv <result-name>
# PTS는 부하, dmesg/journal 감시로 안정성 검증
phoronix-test-suite batch-benchmark pts/stress-ng
Phoronix Test Suite vs 단일 도구
| 측면 | Phoronix Test Suite | sysbench | stress-ng |
|---|
| Scope | 수백 개 프로필, 많은 도메인 | CPU/mem/IO/DB | CPU/mem/IO stressors |
| 자동화 | 전체 (batch, 프로필, 결과) | 수동 스크립팅 | 수동 플래그 |
| 결과 공유 | OpenBenchmarking.org | 없음 | 없음 |
| 최적 | 비교 가능하고 재현 가능한 스위트 | 대상 마이크로 벤치마크 | 안정성/스트레스 부하 |
리소스