bencher run을 사용한 테스트베드 & Specs
테스트베드는 리포트를 실행할 때 사용되는 테스트 환경의 이름입니다.
bencher run CLI 하위 명령어를 사용할 때,
--testbed 옵션 또는 BENCHER_TESTBED 환경 변수로 테스트베드를 선택하세요.
둘 다 지정되지 않은 경우, 호스트 운영 체제를 기준으로 Linux, macOS, 또는 Windows가 기본값으로 사용됩니다.
bencher CLI가 다른 운영 체제용으로 컴파일되었다면, localhost가 사용됩니다.
테스트베드가 베어 메탈 벤치마킹에 사용될 때 Spec이 할당됩니다.
베어 메탈 벤치마킹 중에 --testbed 옵션과 BENCHER_TESTBED 환경 변수가 모두 설정되지 않은 경우, Spec의 이름이 사용됩니다.
리포트가 생성되면, 해당 시점의 테스트베드의 현재 Spec이 리포트에 기록됩니다.
동일한 테스트베드와 Spec의 결과만 임계값에 사용됩니다.
이를 통해 테스트베드의 Spec이 시간이 지남에 따라 변경되더라도
벤치마크 결과가 기반 하드웨어와 어떻게 관련되는지 추적할 수 있습니다.
--spec 옵션을 사용하여 테스트베드의 Spec을 설정하거나 업데이트하고,
--spec-reset 플래그를 사용하여 초기화하세요.
--testbed <TESTBED>
--testbed 옵션 또는 BENCHER_TESTBED 환경 변수를 테스트베드의 이름, 슬러그 또는 UUID로 설정할 수 있습니다. 지정된 값이 이름 또는 슬러그이며 테스트베드가 아직 존재하지 않는 경우, 테스트베드가 자동으로 생성됩니다. 그러나 지정된 값이 UUID인 경우에는 테스트베드가 이미 존재해야 합니다. 둘 다 지정된 경우에는 --testbed 옵션이 BENCHER_TESTBED 환경 변수보다 우선합니다. 둘 다 지정되지 않은 경우에는 호스트 운영 체제를 기준으로 Linux, macOS, 또는 Windows가 사용됩니다. bencher CLI가 다른 운영 체제용으로 컴파일된 경우에는 기본 테스트베드로 localhost가 사용됩니다.
--spec <SPEC>
Spec의 슬러그 또는 UUID를 지정합니다. Spec은 Runner에서 사용할 수 있는 리소스를 설명하는 하드웨어 사양입니다:
- 운영 체제 (OS)
- Linux
- macOS
- Windows
- CPU 아키텍처
- x86_64
- ARM64
- Sandbox
- Firecracker microVM
- Sandbox 없음
- CPU 수
- 메모리 크기 (RAM)
- 디스크 크기
- 네트워크 접근
현재 Bencher Cloud에서 다음 Spec을 사용할 수 있습니다:
| 이름 | 슬러그 | OS | 아키텍처 | Sandbox | CPU | 메모리 | 디스크 | 네트워크 |
|---|---|---|---|---|---|---|---|---|
| Intel v1 | intel-v1 | Linux | x86_64 | Firecracker microVM | 4 | 48.0 GiB | 128.0 GiB | 없음 |
Spec은 서버 범위 또는 조직 범위를 가지므로, 동일한 Spec을 같은 서버의 여러 테스트베드 또는 같은 조직 내에서 공유할 수 있습니다.
bencher run을 사용할 때 Spec 선택 우선순위는 다음과 같습니다:
--spec옵션- 테스트베드에 할당된 Spec
- 기본 조직 범위 Spec
- 기본 서버 범위 Spec
선택된 Spec은 현재 테스트베드에 할당됩니다.
이 옵션을 사용하려면 --image 옵션이 설정되어 있어야 합니다.
--spec-reset
Testbed의 Spec을 초기화하여 하드웨어 사양을 제거합니다.
실행이 제출되면 Testbed에 연결된 spec이 지워집니다.
--testbed 옵션이 필요합니다.
--image 옵션과 충돌합니다.
🐰 축하합니다! 테스트베드 & Specs에 대해 모두 배웠습니다! 🎉