[IT세상 화제와 이슈](12)제구실못하는 벤치마크테스트

 “A기업 유닉스서버 벤치마크테스트서 1위”

 “B기업 운용체계(OS) RAS부문서 1위”

 “C기업 벤치마크테스트서 DB 성능 1위”

 최근 서버업계나 DB업계서 벤치마크 테스트 결과를 속속 발표하면서 내놓는 문구다. 한 업체가 벤치마크 테스트 결과를 내놓은 지 얼마안돼 다른 업체가 새로운 벤치마크 테스트 결과를 내놓고 또다른 업체가 벤치마크 테스트 결과를 내놓곤 한다. 물론 성능 테스트 결과는 모두 1위다.

 그러나 이를 자세히 들여다 본 고객이라면 모두 고개를 갸우뚱하게 된다. 일반적으로 벤치마크는 TPC-C나 TPC-D, TPC-H, TPC-R 등의 수치를 업무에 따라 기준치로 삼아야 하나 업무에 상관없이 자사에 유리한 수치만을 일방적으로 내놓고 있기 때문이다. 벤치마크의 종류와 이에 따른 업무별 적용 여부를 모르는 고객으로서는 현혹될 수밖에 없다. 벤치마케팅에 소비자들이 속을 수밖에 없는 이유가 바로 여기에 있다.

 그렇다면 벤치마케팅은 어떻게 활용되고 있는 것인가. 벤치마케팅은 정보기술(IT)업계에서 두 가지 개념으로 통용되고 있다. 우선 경영적 관점에서 비교대상기업과의 마케팅수익효과를 벤치마크하는 것과 하드웨어 벤치마크 수치를 마케팅과 영업에 적당히 활용하는 개념이다.

 고객은 자사의 시스템 도입을 고려할 때 대부분 공인받은 TPC(Transaction Processing Council) 수치를 벤더에게 요구한다. 즉, TPC 수치 산출과정의 합리성 여부를 따지지 않고 단순히 수치 자체만을 원한다는 얘기다. 물론 TPC 자체의 공신력이나 수치에 대한 신뢰성을 전적으로 부인할 필요는 없다.

 그러나 벤치마크의 측정기준에 대한 자세한 검증절차에 대해서는 알아야 할 필요가 있다. TPC-C 벤치마크는 제조업체의 발주·지불·출하·주문조회·재고조회 등 5가지 업무에 대한 측정기준을 갖고 있다. 하지만 문제는 TPC-C 벤치마크가 이기종간 벤치마크시스템 구성요소에 대한 비교가 사실상 불가능하다는 데 있다.

 동일한 벤치마크라 하더라도 DB의 종류 여하에 따라 수십에서 수백% 이상의 성능차이가 발생할 수 있기 때문이다. 즉, 하드웨어와 소프트웨어의 구성을 하드웨어업체의 의지에 따라 유리한 형태로 자유롭게 조합할 수 있다는 얘기다. 물론 그 반대의 경우도 가능하다. 따라서 업체에 따라서는 벤치마크 수치를 전략적으로 이용하기 위해 아직 출시되지 않은 베타버전의 제품에 대한 수치를 내놓을 수도 있다.

 왜냐하면 TPC 벤치마크 수치 발표 이후 6개월 이내에 제품을 판매해야 한다는 단서가 붙을 수도 있지만 이것이 불가능할 경우에는 6개월 이내에 해당 시스템 구성에 대한 수치를 취소하면 된다는 조항때문이다.

 TPC-C의 가격 대비 성능을 나타내는 $/tpmC의 경우도 문제가 있다. 이는 사용자가 지불하는 5년간의 총 전산비용을 비교하는 수치에 다름아니다. 그러나 수치의 단가를 낮추기 위해 하드웨어업체가 더욱 저렴한 제3자의 주문자상표부착생산(OEM)방식의 부품을 활용할 수도 있다. 얼마든지 조작이 가능하다는 얘기가 여기서도 가능하다.

 그렇다면 TPC 수치는 어떻게 나오는 것일까. 일반적으로 TPC는 기하평균 혹은 이외의 변형된 산출공식을 이용한다. 업계 관계자들은 이 때문에 수리학상 기하평균은 인수간의 균등한 비율을 가정하며 최고치와 최저치의 편차가 산술평균보다 적다고 말한다.

 예를 들어 A컴퓨터의 응답시간(response time)이 2+2초이고 B컴퓨터의 경우 15+0.2초로 측정됐다면 TPC 결과는 고른 분포를 보인 A컴퓨터(2초)에 비해 편차가 큰 B컴퓨터(1.73초)가 오히려 16% 더 좋은 수치를 나타내게 된다. 사실상 사용자의 목적에 합당한 벤치마크 산출공식은 각 응용업무의 사용비중을 고려한 가중산출평균인 셈이다.

 그러면 위의 두 가지 예에서 가중치를 각각 60%와 40%로 가정하고 가중산술평균을 계산해 보기로 하자. 이때 A컴퓨터는 2초, B컴퓨터는 무려 9.08초의 가중산술평균이 나온다. 오히려 기하평균과 반대의 경우가 생기는 것이다. 이같은 결과치는 무엇을 의미하는 것일까. 이는 바로 기하평균이 인수들의 곱셈으로 표현된다는 것이다.

 만약 하드웨어업체들이 벤치마크 구성세트 중 몇개의 트랜잭션에 대해 응답성을 최대한 0에 가깝게 단축시키도록 하드웨어와 소프트웨어를 디자인하면 비록 나머지 응답시간이 타사제품에 비해 아무리 나쁜 응답성을 보인다 해도 최종 결과치를 모두 0에 가깝게 만들어 버리는 것이 기하평균공식이다.

 그럼에도 불구하고 국제공인 TPC조직이 현실에 가까운 가중산술평균 대신 기하평균을 사용할 수밖에 없는 이유는 모든 회사의 업무에 공통으로 적용되는 가중치를 계산할 수 없기 때문이다. 게다가 기하평균의 수치에 비해 가중산술평균은 수리학상 최고치와 최저치의 편차를 크게 만들어 버린다.

 따라서 벤더별로는 제품개발 초기부터 TPC-C 벤치마크의 메커니즘을 연구, 이에 가장 최적화된 제품을 내놓기도 한다. 이는 물론 TPC-C 벤치마크를 마케팅 및 영업에 적극 활용하기 위해서다. 벤치마크 결과를 무시할 필요는 없지만 맹신할 필요도 없다는 이율배반적인 논리가 여기서도 성립된다.

 결국 TPC-C 자체는 아주 단순한 환경에서 OLTP(Online Transaction Processing) 성능을 측정하는 테스트이기 때문에 좀더 복잡하고 또 정교한 오늘날의 현업 애플리케이션 구동환경에서는 비현실적이라는 결론이 나온다. 즉, TPC-C 수치만을 믿고 상당한 비용을 들여 시스템을 구입했을 경우 실질적으로 운용하고자 하는 애플리케이션에서는 낭패를 볼 수 있다는 사실을 명심해야 한다는 결론이 자연스럽게 도출된다.

<박승정기자 sjpark@etnews.co.kr>