[논문 리뷰] Storage and Memory Characterization of Data Intensive Workloads for Bare Metal Cloud
이 논문은 바이러널 메탈 클라우드 환경에서 Hadoop, Spark, MPI 워크로드에 대한 메모리(DRAM 용량, 주파수, 채널 수)와 스토리지(HDD, SSD SATA, SSD PCIe)의 병합 영향을 조사한다. 통제된 실험을 통해 I/O 기반 워크로드(예: Hadoop)는 메모리 파라미터에 민감하지 않으며, 계산/메모리 기반 워크로드(예: 반복적 Spark 및 MPI 작업)는 고주파수, 다중 채널 DRAM에서 크게 이득을 보임을 발견하였다. 또한 SSD는 I/O 병목 현상을 줄이지만, 성능 한계를 메모리 서브시스템으로 이동시키지는 않는다.
As the cost-per-byte of storage systems dramatically decreases, SSDs are finding their ways in emerging cloud infrastructure. Similar trend is happening for main memory subsystem, as advanced DRAM technologies with higher capacity, frequency and number of channels are deploying for cloud-scale solutions specially for non-virtualized environment where cloud subscribers can exactly specify the configuration of underling hardware. Given the performance sensitivity of standard workloads to the memory hierarchy parameters, it is important to understand the role of memory and storage for data intensive workloads. In this paper, we investigate how the choice of DRAM (high-end vs low-end) impacts the performance of Hadoop, Spark, and MPI based Big Data workloads in the presence of different storage types on bare metal cloud. Through a methodical experimental setup, we have analyzed the impact of DRAM capacity, operating frequency, the number of channels, storage type, and scale-out factors on the performance of these popular frameworks. Based on micro-architectural analysis, we classified data-intensive workloads into three groups namely I/O bound, compute bound, and memory bound. The characterization results show that neither DRAM capacity, frequency, nor the number of channels play a significant role on the performance of all studied Hadoop workloads as they are mostly I/O bound. On the other hand, our results reveal that iterative tasks (e.g. machine learning) in Spark and MPI are benefiting from a high-end DRAM in particular high frequency and large number of channels, as they are memory or compute bound. Our results show that using SSD PCIe cannot shift the bottleneck from storage to memory, while it can change the workload behavior from I/O bound to compute bound.
연구 동기 및 목표
- 바이러널 메탈 클라우드 환경에서 데이터 집약적 워크로드의 성능에 영향을 미치는 메모리 및 스토리지 파라미터의 병합 영향을 이해하기 위해.
- HDD에서 SSD로 교체할 경우 스토리지 병목 현상이 메모리 서브시스템으로 이동하는지 확인하기 위해.
- Hadoop, Spark, MPI 프레임워크에 대한 DRAM 용량, 주파수, 채널 수의 영향을 평가하기 위해.
- 워크로드 유형(예: I/O 기반, 계산 기반, 메모리 기반)을 기반으로 하드웨어 선택을 안내하기 위해.
- 워크로드 유형과 성능 제약 조건에 따라 서버 구성 최적화를 위한 설계 지침을 제공하기 위해.
제안 방법
- IBM/SoftLayer의 바이러널 메탈 클라우드 환경에서 Hadoop MapReduce 2.7.1, Spark 2.1.0, MPICH2 3.2를 사용해 통제된 실험을 수행함.
- 주요 메모리 파라미터를 다양화함: DRAM 용량(128GB–512GB), 주파수(1866MHz–3200MHz), 채널 수(2–4).
- HDD, SSD SATA, SSD PCIe의 세 가지 스토리지 유형을 다양한 확장 구성에서 평가함.
- 마이크로아키텍처 분석 및 성능 병목 현상을 기반으로 워크로드를 I/O 기반, 계산 기반, 메모리 기반의 세 가지 유형으로 분류함.
- BigDataBench 및 HiBench의 다양한 워크로드(기계 학습, 그래프 분석, ETL 작업 포함)에서 종단 간 성능을 측정함.
- I/O 대역폭 포화로 인해 성능 향상이 줄어드는 코어 수를 추정하기 위한 실험 방정식을 개발함.
실험 결과
연구 질문
- RQ1바이러널 메탈 클라우드 환경에서 DRAM 용량, 주파수, 채널 수가 Hadoop, Spark, MPI 워크로드의 성능에 어떤 영향을 미치는가?
- RQ2HDD를 SSD로 교체하면 성능 병목 현상이 스토리지에서 메모리 서브시스템으로 이동하는가?
- RQ3어떤 종류의 데이터 집약적 워크로드(예: 반복적, I/O 집약적)가 고성능 메모리 구성에서 가장 큰 이점을 얻는가?
- RQ4I/O 대역폭이 빅데이터 워크로드에서 CPU 코어 수를 늘릴 경우 성능 향상에 어느 정도 제한을 둔다?
- RQ5워크로드 분류(I/O 기반, 계산 기반, 메모리 기반)는 메모리 및 스토리지 파라미터에 대한 민감도를 예측할 수 있는가?
주요 결과
- Hadoop 워크로드는 주로 I/O 기반이며, 용량, 주파수, 채널 수에 관계없이 고성능 DRAM에서 유의미한 성능 향상을 보이지 않는다.
- 반복적 Spark 및 MPI 워크로드는 메모리 또는 계산 기반이며, 고주파수, 다중 채널 DRAM을 사용할 경우 최대 2.4배의 성능 향상을 달성한다.
- HDD를 SSD로 교체하면 성능이 향상되며, Hadoop에서는 1.6배, Spark에서는 2.4배, MPI에서는 3.3배 향상됨을 확인하여 스토리지가 여전히 주요 병목 현상임을 시사한다.
- SSD 도입에도 불구하고, 다핵 CPU의 성능은 I/O 대역폭에 의해 제한되며, 임계점을 초과하면 코어 수를 늘여도 성능 향상이 감소한다.
- 본 연구는 I/O 대역폭 기반으로 실험 방정식을 사용해 CPU 코어의 성능 포화 지점을 예측할 수 있음을 규명하였다.
- 결과적으로 I/O 기반 워크로드의 경우 메모리 서브시스템 최적화만으로는 효과적이지 않으며, 고성능 메모리 투자 이전에 스토리지 업그레이드가 필수적임을 입증하였다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.