박창현 군은 파일 컴퓨터 시스템 및 시뮬레이션 분야에서의 최신 연구 동향을 파악하고 “Practical Implication of Analytical Models for SSD Write Amplification”을 발표하고자 ICPE(International Conference on Performance Engineering)에 참석하였다.
ICPE는 성능 측정, 모델링, 벤치마크 디자인, 실시간 성능 공학 등을 포함한 소프트웨어와 시스템의 성능 공학의 연구원들과 산업 종사자들이 함께 그들의 경험, 문제점 토론, 첨단 기술, 진행 중인 연구 등을 공유하고 발표하는 자리이다.
나는 그동안 연구했던 내용을 논문 (Practical Implication of Analytical Models for SSD Write Amplification)으로 제출하였고, 연구논문 분야 24편중 1편으로 accept 되어 논문 발표를 위해 이탈리아의 라퀼라에 방문하였다. 한편 ICPE 2017은 연구 논문 24편을 포함하여, industry and experience 5편, work in progress 14편, demo and poster 14편, tutorial 4편 등 다양한 연구 및 경험들을 공유하고 발표하는 자리가 되었다.
학회는 데모 세션을 제외하고 총 8개의 세션으로 구성되었다. 내 논문을 제외하고 관심 있던 논문이 몇 가지 있었다.
먼저 Electroric Arts의 Drew Zagieboylo와 Kazi A. Zaman의 논문인 “Cost-Efficient and Reliable Reporting of Highly Bursty Video Game Crash Data” 라는 제목의 논문이 관심을 끌었다. 비디오 게임을 서비스 할 때 crash가 발생하면 서버로 해당 crash의 대한 보고서가 전송되어 처리된다. 이러한 서비스를 Crash Reporting System(CRS)라고 한다. 이 CRS는 게임 서비스 중에 의도하지 않은 버그를 처리하기 위한 매우 중요한 시스템인데, 처리 속도의 문제로 CRS 구현에 문제가 있다. 클라이언트에서 crash가 발생하여 서버에 보고서를 보낼 때 시간이 오래 걸리면 사용자가 긴 시간 동안 기다려야 하거나 기다리지 않고 강제 종료를 하여 보고서가 전송되지 않는 문제가 발생하고, 심한 경우 아예 사용자가 더 이상 게임 서비스를 이용하지 않는 상황이 된다. 기존 방법은 capture와 persistence 서비스를 싱글 티어로 구현하였는데, 과도한 CRS 트래픽 발생시의 속도저하를 막기는 부족하였고, 비용적인 측면에서도 효율적이지 않은 방법이다. 이들은 Kafka와 Couchbase를 사용하여 capture와 persistence서비스를 분리하는 형태로 CRS를 개발하였다. 기존의 방법보다 CPU와 메모리 사용을 기존대비 약 60%정도로 줄였다.
다음은 인도의 TCS Innovation Labs에서 발표한 “Cloning IO Intensive Workloads Using Synthetic Benchmark” 라는 논문이다. 기존의 벤치마크 툴은 시간 소모와 프로세스의 사용이 크지만, 높은 동시성을 가진 시스템에서의 예측이 정확하지 않다는 단점이 있다. 이 논문은 서로 다른 스토리지 시스템을 사용하는 여러 플랫폼에서 쉽게 사용할 수 있는 synthetic benchmark를 사용하여 일반적이고 대표적인 IO intensive workload를 생성하여, 동시성이 더 높더라도 정확한 벤치마킹을 할 수 있도록 하였다. 서로 다른 레벨의 동시성을 가진 응용 프로그램의 워크로드를 실행하고 DB서버의 시스템 콜 레벨에서 IO trace를기록한다. 모든 중요 요소는 추출엔진이 trace로부터 추출하고, 통계 모델을 통하여 모델러가 추론한다. 추론된 요소의 값들은 벤치마크의 작업파일로 변환되고, 이것을 통하여 벤치마크를 실행하여 더 높은 동시성의 성능을 연구한다. 이러한 방식으로 높은 동시성에서의 에러바운드를 20% 이내가 되도록 하였다.
마지막으로 “HyperStar2: Easy Distribution Fitting of Correlated Data”라는 논문이 관심이 갔다. 독일의 Free University(Freie Universität) 에서 발표한 논문이다. Markov Arrival Processes를 실험 데이터에 fitting하는 툴인 HyperStar2를 개발한 내용이다. 이 툴은 기본 이론은 관심 없지만 피팅을 해야하는 엔지니어나 과학자를 대상으로 하였다. 그래서 GUI기능이 포함되어 있다고 한다. HyperStar2는 2단계의 접근법을 사용하였다. 1단계는 phase-type 분포의 클러스터 기반 피팅, 2단계는 correlation matrix를 구성하는 단계이다. HyperStar2는 ProFiDo라는 툴과 비교하였을 때, 실험결과의 분포 모양을 잘 포착한다. 하지만 ProFiDo가 더 잘 포착하는 경우도 몇 가지 있어서, 앞으로 피팅 정확성을 높이고 사용자 적합도에 대한 메트릭을 제공할 예정이다.
내 논문은 5번째 세션인 Analytic Models 세션으로 4월 25일 오후에 발표를 하였다. 많은 사람들 앞에서 긴장을 했는지 발표시간이 연습했던 것 보다 길어졌고, 결국 나에게 주어진 발표시간을 넘겨 버렸다. 시간이 초과된 탓인지 좌장이 질문을 받지 않고 내 차례를 마쳐서 약간의 아쉬움을 남기게 되었다.
라퀼라는 로마에서 북동쪽으로 약100KM정도 떨어진 소도시이다. 그런데 어떤 이유인지 도심의 거의 모든 건물들이 공사를 하고 있었다. 안내표지에 따르면 대부분의 건물들은 2015년 말부터 2016년 초에 공사가 시작되었고, 2017년 6월~ 12월 사이에 공사가 완료될 예정이라고 한다. 대부분의 건물이 공사 중이라 라퀼라의 도심의 모습을 보지 못한 것은 아쉬웠으나, 도시 외곽의 공원과 다양한 모양과 색감을 가진 집들, 그리고 멀리 보이는 눈 쌓인 산의 모습은 매우 아름다웠다. 많은 사람들이 이탈리아에 가면 무조건 가봐야 한다고 할 정도로 유명하고 아름다운 관광지인 로마와 바티칸을 일정상 방문하지 못한 것은 조금 아쉬웠다. 그러나 라퀼라도 한국에서 볼 수 없던 아름다운 풍경을 가진 도시임은 분명하였다. 학회는 대부분 유명한 대도시나 휴양지에서 많이 열리는데, 이러한 소도시에서 하는 것도 매우 분위기 있고 마음의 여유를 가질 수 있는 기회가 되는 것 같다.

