본문으로 이동

벤치마크 (컴퓨팅)

위키백과, 우리 모두의 백과사전.

오거(OGRE) 엔진의 벤치마크로 실행되는 그래픽 데모

벤치마크(benchmark)는 컴퓨팅에서 특정 오브젝트(하드웨어 또는 소프트웨어 등)에 대해 일반적으로 수많은 표준 테스트와 시도를 수행함으로써 오브젝트의 상대적인 성능 측정을 목적으로 컴퓨터 프로그램을 실행하는 행위이다.[1]

'벤치마크'라는 용어는 정교하게 설계된 벤치마킹 프로그램 자체의 목적으로 일반적으로 사용된다.

벤치마킹은 일반적으로 컴퓨터 하드웨어의 성능 특성(예: CPU의 부동 소수점 연산 성능)을 평가하는 것과 관련이 있지만 이 기술이 소프트웨어에도 적용되는 경우가 있다. 예를 들어 소프트웨어 벤치마크는 컴파일러데이터베이스 관리 시스템(DBMS)에 대해 실행된다.

벤치마크는 다양한 칩/시스템 아키텍처 전반에 걸쳐 다양한 하위 시스템의 성능을 비교하는 방법을 제공한다. 지속적 통합의 일부인 벤치마킹을 지속적 벤치마킹(Continuous Benchmarking)이라고 한다.[2]

기능[편집]

벤치마킹 소프트웨어의 기능에는 성능 과정을 스프레드시트 파일로 기록/내보내기, 선 그래프 그리기 또는 색상으로 구분된 타일과 같은 시각화, 다시 시작하지 않고도 재개할 수 있도록 프로세스 일시 중지 등이 포함될 수 있다. 소프트웨어는 해당 목적에 맞는 추가 기능을 가질 수 있다. 예를 들어, 디스크 벤치마킹 소프트웨어는 선택적으로 전체 디스크가 아닌 디스크의 지정된 범위 내에서 디스크 속도 측정을 시작하고, 무작위 액세스 읽기 속도 및 레이턴시를 측정하고, 지정된 간격과 크기의 샘플을 통해 속도를 측정하고 데이터 블록 크기(읽기 요청당 요청된 바이트 수를 의미)를 지정할 수 있는 "빠른 스캔" 기능이 있다.[3]

벤치마킹 원칙[편집]

벤치마크에는 7가지 중요한 특성이 있다.[4] 이러한 주요 속성은 다음과 같다.

  1. 관련성: 벤치마크는 상대적으로 중요한 기능을 측정해야 한다.
  2. 대표성: 벤치마크 성과 지표는 업계와 학계에서 널리 받아들여져야 한다.
  3. 형평성: 모든 시스템은 공정하게 비교되어야 한다.
  4. 반복성: 벤치마크 결과를 확인할 수 있다.
  5. 비용 효율성: 벤치마크 테스트는 경제적이다.
  6. 확장성: 벤치마크 테스트는 낮은 리소스부터 높은 리소스까지 다양한 리소스를 보유한 시스템 전반에서 작동해야 한다.
  7. 투명성: 벤치마크 지표는 이해하기 쉬워야 한다.

벤치마크 유형[편집]

  1. 실제 프로그램
  2. 부품 벤치마크/마이크로벤치마크
    • 코어 루틴은 상대적으로 작고 구체적인 코드 조각으로 구성된다.
    • 컴퓨터 기본 부품의 성능 측정[5]
    • 레지스터 수, 캐시 크기, 메모리 레이턴시 등 컴퓨터의 하드웨어 변수를 자동으로 감지하는 데 사용될 수 있다.
  3. 커널
    • 키 코드가 포함된다.
    • 일반적으로 실제 프로그램에서 추상화된다.
    • 대중화된 커널: 리버모어(Livermore) 루프
    • 린팩(linpack) 벤치마크(FORTRAN 언어로 작성된 기본 선형 대수 서브루틴 포함)
    • 결과는 Mflop/s로 표시된다.
  4. 합성 벤치마크
    • 합성 벤치마크 프로그래밍 절차:
      • 많은 응용 프로그램에서 모든 유형의 작업에 대한 통계를 얻는다.
      • 각 작업의 비율을 구한다.
      • 위의 비율에 따라 프로그램을 작성한다.
    • 종합 벤치마크 유형은 다음과 같다.
    • 이것은 최초의 범용 산업 표준 컴퓨터 벤치마크였다. 현대 파이프라인 컴퓨터에서 반드시 높은 점수를 얻는 것은 아니다.
  5. 입출력(I/O) 벤치마크
  6. 데이터베이스 벤치마크
    • 데이터베이스 관리 시스템(DBMS)의 처리량과 응답 시간을 측정한다.
  7. 병렬 벤치마크
    • 다중 코어 및 프로세서가 있는 시스템 또는 다중 시스템으로 구성된 시스템에 사용된다.

공통 벤치마크[편집]

일반적으로 하드웨어의 주요한 부품인 CPU, 램 등에 대한 밴치마크에 사용되는 테스트 프로그램으로는 pov-ray 등이 있다. 잘 알려진 하드웨어 벤치마크(benchmark)사이트로는 탐스 하드웨어(Tom's Hardware)가 있다.[6]

같이 보기[편집]

각주[편집]

  1. Fleming, Philip J.; Wallace, John J. (1986년 3월 1일). “How not to lie with statistics: the correct way to summarize benchmark results”. 《Communications of the ACM》 29 (3): 218–221. doi:10.1145/5666.5673. ISSN 0001-0782. S2CID 1047380. 
  2. Grambow, Martin; Lehmann, Fabian; Bermbach, David (2019). 〈Continuous Benchmarking: Using System Benchmarking in Build Pipelines〉. 《2019 IEEE International Conference on Cloud Engineering (IC2E)》. 241–246쪽. doi:10.1109/IC2E.2019.00039. ISBN 978-1-7281-0218-4. 2023년 12월 3일에 확인함. 
  3. Software: HDDScan, GNOME Disks
  4. Dai, Wei; Berleant, Daniel (December 12–14, 2019). 〈Benchmarking Contemporary Deep Learning Hardware and Frameworks: a Survey of Qualitative Metrics〉 (PDF). 《2019 IEEE First International Conference on Cognitive Machine Intelligence (CogMI)》. Los Angeles, CA, USA: IEEE. 148–155쪽. arXiv:1907.03626. doi:10.1109/CogMI48466.2019.00029. 
  5. Ehliar, Andreas; Liu, Dake. “Benchmarking network processors” (PDF). 
  6. tomshardware- AMD Ryzen 9 5900X vs Intel Core i9-11900K: Rocket Lake and Ryzen 5000 CPU Face Off,By Paul Alcorn April 20, 2021

참고 자료[편집]

외부 링크[편집]