실험실 수치와 실환경 숫자

1.
아래 글에서 New Exture를 다루었습니다. Exture는 Tibco의 Rendevous를 근간으로 개발하였다고 합니다. 몇 달전에 Tibco Rendevous의 Low Latency제품인 FTL을 아주 간단히 소개하였습니다.

세계는 나노시대, 한국은 밀리시대

보도자료에 나온 FTL의 Latency는 나노초수준이었습니다.

TIBCO FTL takes the next step in extreme low-latency messaging by offering sub-microsecond intra-host communication and inter-host communication at single-digit microsecond latency. Performance benchmarks have demonstrated average end-to-end one-way application latencies of 384 nanoseconds for intra-host communication using shared memory transport and 3.1 microseconds using RDMA transport over InfiniBand.

Tibco의 보도자료가 나왔을 때 29West는 반박자료를 내려고 할 정도로 충격이었습니다. 보통 경쟁업체를 반박할 때 실험실 자료라고 깍아 내립니다. ?이럴 경우 한국은 서로 싸우다가 끝납니다. 검증할 기관이 없습니다. 미국은 STAC가 검증을 합니다. 물론 BMT를 의뢰하고 결과보고서를 받습니다. 공개하고 수요자들은 STAC를 신뢰하기때문에 보고서를 기준으로 평가합니다. STAC가 Tibco FTL을 평가한 보고서를 발표하였습니다.

?STAC Report Highlights

Tibco가 광고용으로 사용한 연구실 자료와 STAC 측정치를 간단히 비교하도록 하죠. 우선 시험환경입니다.

STAC has just published an audited STAC-M2(TM) Benchmark of the following stack

– TIBCO FTL 1.1
– Red Hat Enterprise Linux AS 5.5
– 2 x Intel Xeon x5670 2.93GHz
– Dell c61000 server
– Mellanox MNPH29C-XTR ConnectX-2 EN
– OFED 1.5.3 drivers (RoCE)
– Arista 7124SX 10Gbps switch

다음은 결과입니다. ?글과 표를 같이 참고하시면 됩니다.

Using standard Ethernet and RoCE protocols, at the maximum rate tested of 2.5 million messages/second, the mean latency of the solution was 13 microseconds. At base message rates in all but two of the use cases, mean latency was 6 microseconds, while standard deviation of latency did not exceed 1 microsecond. ?At the base message rate in the FLEXIBLE use case, the latency had a mean of 7 microseconds and a standard deviation of 2 microseconds.

2.
STAC 요약 보고서를 보면 가장 놀라운 점은 평균이 6 마이크로초인데 99%기준 값이 8마이크로초입니다. 편차가 2마이크로초밖에 나지 않습니다. 저는 이점을 보고 놀랐습니다. 물론 실험실 수치와 비교하면 최소 6배의 차이가 있습니다.

현재 국내에 외국산 메시징 제품들이 많이 들어와 있습니다. 하드웨어방식인 Arista, 전통적인 강자인 Tibco와 IBM , 신흥세력인 29West. 덧붙여 우리 팀이 만든 ZeroM도 살짝 밥상위에 올려놓습니다.(^^) 제품들 마다 자신들이 가장 빠르다고 Latency값을 고객에게 제시합니다. 시험판을 받아서 시험을 하면 생각과 다른 결과를 나타냅니다. 미국과 달리 한국지사 혹은 한국자회사는 시험을 최적화된 조건에서 할 수 있는 기술적 지원이 불가능하기 때문입니다. 위의 실험도 STAC 환경에 맞도록 FTL Adaptor는 Tibco가 개발공급하였습니다. 당연히 최적화도 Tibco몫입니다.

몇 달전에 Low Latency를 구현하기 위하여 BIOS를 어떻게 설정할 지를 다룬 적이 있습니다.

BIOS 셋팅과 레이턴시

마이크로초를 기준으로 측정을 하기 때문에 미세한 설정이 아주 큰 차이를 만들 수 있습니다. 마찬가지입니다. 제품도 제품이지만 제품을 이용한 개발을 어떻게 할지, 그리고 환경을 어떻게 설정할지도 성능에 많은 영향을 줍니다. 만약 외산 제품을 도입한다고 할 때 가능하면 STAC를 검색하여 관련 자료를 검토하였으면 합니다. 그리고 경쟁제품들을 객관적으로 = 같은 환경에서 비교할 수 있습니다.

덧붙여 가능하면 BMT를 하는 것이 좋을 듯 합니다. 아주 작은 차이를 놓고 경쟁하기 때문입니다. 아울러 작은 차이를 측정하려면 소프트웨어가 아니라 별도로 Latency측정장비가 있어야 정확한 결과를 얻을 수 있다는 점을 잊지 말았으면…

3.
8월 초에 지난 2달동안 개발한 제품들을 공개하려고 합니다. 물론 ?ZeroDMA 시험판(Trial Version)입니다. 실행파일 및 사용설명서등을 제공하려고 합니다. 이 때 ZeroM(메시징), ZeroFeeder(Market Data Feed Hanlder) 및 ZeroTable(공유메모리를 이용한 Hash Table). 아울러 전략시험을 위한 ZeroMAG, ZeroFEP, ZeroEXCHANGE도 공개합니다. ?이상의 제품구성이면 ?원장(가원장)을 제외한 대부분의 기반서비스를 얻을 수 있기 때문에 자동매매시스템을 구축하는데 어려움이 없을 듯 합니다. 다만 소프트웨어 개발기술은 필요로 합니다. ?메시징제품인 ZeroM은 시험판 공개이후 대폭 기능개선을 하여 버전 1.1로 공개합니다. 공개시험판이지만 기능제한은 없습니다.

ZeroDMA를 기반으로 다양한 서비스를 구축할 생각합니다. 최초의 구상중 일부분이고 시작입니다. 많은 피드백을 바랍니다.

2 Comments

  1. 지나가는 사람

    smallake님 블로그에서 좋은 정보를 많이 접하고 있고,

    항상 감사하게 생각하고 있습니다.

    BIOS설정을 바꾸면

    interrupt table이 메모리에 setting된후

    일시적으로 INTERRUPT 0 루틴을 가로채거나

    14.318mhz에 미세한 편차를 발생시킬수도… -.-a

    Reply
    1. smallake

      14.318Mhz라고 해서 무슨 의미인가 찾아보니까…

      “A clock on a motherboard is generated by a clock crystal, or crystal oscillator. Typically these run at 14.318MHz, a rating that has not changed since the dawn of PCs.”

      이럴 때맏 느낍니다. 비전공자의 한계를..(^^)

      하여튼 또하나 머리속에 기억합니다. 건강하세요.

      Reply

Leave a Comment

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.