본문 바로가기

Research Log

(26)
BTF, CO-RE Brendan Greeg's Blog [link] BTF: BPF Type Format, which provides struct information to avoid needing Clang and kernel headers. CO-RE: BPF Compile-Once Run-Everywhere, which allows compiled BPF bytecode to be relocatable, avoiding the need for recompilation by LLVM. PingCAP Article [link] BCC 단점 BCC(BPF Compiler Collection) toolkilt은 효과적인 kernel tracing을 지원하기 위해 만들어졌지만 여러 단점이 있다. BCC는 LLVM 이나 Cla..
[12 SYSTOR] Analytic Modeling of SSD Write Performance Abstract SSD는 기존 데이터를 덮어쓰는것 대신 새로운 복사본을 기록하는 방식으로 데이터를 업데이트하고 이전의 동일한 데이터는 무효화(invalidate)한다. 이러한 write 동작은 page 단위로 수행되는 반면, erase 동작은 multi-page로 이루어진 block 단위로 수행된다. 그러므로 erase가 동작하기 전에 block에 남아있는 valid page들을 복사해둘 필요가 있다. 이러한 cleaning process의 효율성은 random workload에서 큰 영향을 끼친다. 더 자세하게 말하자면, SSD의 write bottleneck은 대부분 intermal media throughput과 write amplification으로 인해 발생하고 이러한 추가적인 copy 동작이 ..
[14 SIMULTECH] Analytical Model of SSD Parallelism 0 Abstract SSD는 IO 성능을 높이기 위해 channel parallelism, way parallelism, plane pallelism과 같은 여러 IO 병렬 메커니즘을 지원한다. 시뮬레이션을 통해 SSD의 성능을 측정하기 위해서 시뮬레이터는 내부 IO 동작을 모델링하여 SSD의 병렬 IO 작업을 지원해야한다. 이 논문에서는 multiple channel 및 multiple way로 설계된 SSD의 IO 대기 시간을 계산하는 분석 모델을 개발하였다. SSD의 IO 유형을 단일 페이지 읽기/쓰기 작업과 다중 페이지 읽기/쓰기 작업의 두 가지 작업으로 분류하여 IO 대기 시간에 대한 공식을 만들었다. IO 대기 시간 모델을 사용하여 실제 SSD인 Intel X25-M의 IO성능을 3.8% 오차..
PCI dmidecode 명령어로 H/W 정보 많이 알 수 있음 (sudo 권한 필요) Scanning /dev/mem for entry point. 로 시작함 - OEM-specific Type (?) - BIOS setting - System Information - Base Board Information - Chassis Information - Processor Information - Cache Information (L1, L2, L3) - Port Connector Information - System Slot Information ... Memory Device Array Handle: 0x003E Error Information Handle: Not Provided Total Width: 64..
[18 CLOUD] Estimating Cloud Application Performance Based on Micro-Benchmark Profiling 0. ABSTRACT 클라우드 컴퓨팅 시장의 지속적인 성장은 클라우드 서비스의 전례없는 다양성으로 이어졌다. 마이크로 벤치마크는 적절한 서비스를 선택하기 위해 널리 사용된다. 하지만 이러한 합성(synthetic) 마이크로 벤치마크가 실제 어플리케이션의 성능에 대한 통찰을 얻는데 얼마나 관련이 있는지가 불분명하다. 그러므로 이 논문에서는 마이크로 벤치마크를 사용하여 어플리케이션을 프로파일링 하고 어플리케이션의 성능을 예측하는데 사용하는 클라우드 벤치마킹 방법을 개발한다. Amazon EC2 환경에서 23개 마이크로 벤치마크의 38개 메트릭과 서로 다른 도메인의 2개의 어플리케이션을 사용하여 성능 추정 모델을 정량적으로 평가하기 위한 연구를 진행하였다. 그 결과 클라우드 서비스 성능 변동성(performa..
[17 SOSP] Canopy: An End-to-End Performance Tracing And Analysis System Evaluation Canopy는 Facebook의 production 환경에서 지난 2년 동안 배포 및 사용되어 왔다. 이번 장에서는 Facebook 엔지니어가 성능 문제를 진단하기 위해 Canopy가 어떻게 사용되어 왔는지를 보여준다. Canopy의 오버헤드와 load-shedding 속성들을 평가한뒤 2.2장에서 설명한 챌린지들을 해결하기 위한 방법을 보여준다. Canopy는 - 서로 다른 동작을 하는 여러 이기종 시스템에서 신속한 성능 진단 및 성능 모델을 만들 수 있게 한다. - 많은 사용자가 동시에 서로 다른 목적의 용례를 위한 커스터마이징을 가능하게 한다. - 새로운 용례 및 실행 조건에 맞게 독립적으로 trace model을 개선할 수 있게 한다. - 적은 오버헤드로 많은 수의 trace를..
[17 SOSP] Resource Central: Understanding and Predicting Workloads for Improved Resource Management in Large Cloud Platforms 0 Abstract 현재까지의 클라우드 연구에는 클라우드 제공업체의 VM 워크로드의 특성에 대한 데이터가 부족했다. 효과 적인 자원 관리 시스템(resource management system)을 위해서는 이러한 특성에 대한 이해가 필요하다. 여기에는 VM scheduler, power manager, server health manager 등이 포함된다. 이 논문에서는 먼저 distributions of VM lifetime, deployment size, resource consumption을 정보를 사용하여 Microsoft Azure VM 워크로드의 chracteristic을 보여준다. 그런 다음 특정 VM 동작이 여러 lifetime 동안 상당히 일관성 있게 나타나는 것을 보여준다. 즉, 기록 ..
[20 ATC] Serverless in the Wild: Characterizing and Optimizing the Serverless Workload at a Large Cloud Provider FaaS(Function as a Service)는 클라우드의 서버리스 백엔드에 compuation을 제공하는 방식으로 배포된다. 이 패러다임에서는 클라우드 공급자에게 리소스를 할당하고 프로비저닝하는 복잡성을 전환하여 가능한 가장 낮은 리소스 비용으로 항상 사용 가능한 리소스(즉, cold start가 ​​없는 빠른 function call)를 제공하는 것이 중요하다. 이를 위해서 클라우드 공급자는 FaaS 워크로드의 특성을 깊이 이해해야 한다. 하지만 이러한 특성에 대해 공개된 정보는 거의 또는 전혀 없었다. 따라서 이 논문에서는 먼저 Azure Functions의 전체 프로덕션에서 FaaS 워크로드를 특성화한다. 예를 들어 대부분의 함수가 매우 드물게 호출된다는 것을 보여주지만 호출 빈도는 8단계로 ..
[17 SoCC] (PARIS) Selecting the best VM across multiple public clouds: a data-driven performance modeling approach 클라우드 서비스 사용자는 VM 유형을 선택해야 되며, VM의 선택은 성능과 비용에 상당한 영향을 미친다. 이 논문에서는 주어진 워크로드와 사용자 목표에 가장 적합한 VM을 정확하고 경제적으로 선택하는 문제를 다룬다. 최적의 VM 선택 문제를 해결하기 위해 새로운 하이브리드 오프라인 및 온라인 데이터 수집 및 모델링 프레임워크를 사용하여 최소한의 데이터 수집으로 정확한 성능 추정치를 제공하는 데이터 기반 시스템인 PARIS를 제시한다. PARIS는 다양한 사용자 지정 메트릭에 대한 워크로드 성능을 예측할 수 있으며, 여러 클라우드 제공업체의 광범위한 VM 유형 및 워크로드에 대한 결과 비용을 예측할 수 있다. 두개의 VM 유형에서 워크로드의 성능을 측정하여 기존 기술인 collaborative filter..
[21 Transactions on Cloud Computing] PerfSim: A Performance Simulator for Cloud Native Computing 클라우드 네이티브 컴퓨팅 패러다임은 마이크로서비스 기반 애플리케이션을 확장 가능하고 재사용 가능하며 상호 운용 가능한 방식으로 클라우드 인프라를 활용할 수 있도록 한다. 그러나 클라우드 네이티브 시스템의 방대한 수의 구성 매개변수와 매우 세분화된 리소스 할당 정책은 애플리케이션의 성능 및 배포 비용에 상당한 영향을 미칠 수 있다. 이러한 영향을 easy, quick, and cost-effective way로 이해하고 분석하기 위해 사용자 정의 시나리오에서 클라우드 네이티브 서비스 체인의 성능을 근사화하고 예측하기 위한 이산 이벤트 시뮬레이터인 PerfSim을 제시한다. 이를 위해 마이크로서비스 엔드포인트에 위치한 function의 성능을 성능 메트릭과 네트워크 추적을 수집하고 분석하여 모델링하는 방법을..