2 research outputs found
๊ณ ์ฑ๋ฅ ์ปดํจํ ์์คํ ์์ ๋ฒ์คํธ ๋ฒํผ๋ฅผ ์ํ I/O ๋ถ๋ฆฌ ๊ธฐ๋ฒ์ ์ค์ฆ์ ๊ตฌํ
ํ์๋
ผ๋ฌธ(์์ฌ)--์์ธ๋ํ๊ต ๋ํ์ :๊ณต๊ณผ๋ํ ์ปดํจํฐ๊ณตํ๋ถ,2019. 8. ์ํ์.To meet the exascale I/O requirements in the High-Performance Computing (HPC), a new I/O subsystem, named Burst Buffer, based on non-volatile memory, has been developed. However, the diverse HPC workloads and the bursty I/O pattern cause severe data fragmentation to SSDs, which creates the need for expensive garbage collection (GC) and also increase the number of bytes actually written to SSD. The new multi-stream feature in SSDs offers an option to reduce the cost of garbage collection. In this paper, we leverage this multi-stream feature to group the I/O streams based on the user IDs and implement this strategy in a burst buffer we call BIOS, short for Burst Buffer with an I/O Separation scheme. Furthermore, to optimize the I/O separation scheme in burst buffer environments, we propose a stream-aware scheduling policy based on burst buffer pools in workload manager and implement the real burst buffer system, BIOS framework, by integrating the BIOS with workload manager. We evaluate the BIOS and framework with a burst buffer I/O traces from Cori Supercomputer including a diverse set of applications. We also disclose and analyze the benefits and limitations of using I/O separation scheme in HPC systems. Experimental results show that the BIOS could improve the performance by 1.44ร on average and reduce the Write Amplification Factor (WAF) by up to 1.20ร, and prove that the framework can keep on the benefits of the I/O separation scheme in the HPC environment.Abstract
Introduction 1
Background and Challenges 5
Burst Buffer 5
Write Amplification in SSDs 6
Multi-streamed SSD 7
Challenges of Multi-stream Feature in Burst Buffers 7
I/O Separation Scheme in Burst Buffer 10
Stream Allocation Criteria 10
Implementation 12
Limitations of User ID-based Stream Allocation 14
BIOS Framework 15
Support in Workload Manager 15
Burst Buffer Pools 16
Stream-Aware Scheduling Policy 18
Workflow of BIOS Framework 20
Evaluation 21
Experiment Setup 21
Evaluation with Synthetic Workload 21
Evaluation with HPC Applications 25
Evaluation with Emulated Workload 27
Evaluation with Different Striping Configuration 29
Evaluation on BIOS Framework 30
Summary and Lessons Learned 33
An I/O Separation Scheme in Burst Buffer 33
Evaluation with Synthetic Workload 33
Evaluation with HPC Applications 33
Evaluation with Emulated Workload 34
Evaluation with Striping Configurations 34
A BIOS Framework 34
Evaluation with Real Burst Buffer Environments 34
Discussion 36
Limited Number of Nodes 36
Advanced BIOS Framework 37
Related work 38
Conclusions 40
Bibliography 42
์ด๋ก 48Maste
Xeon Phi๋ฅผ ํ์ฉํ ๋ณ๋ ฌ ํ๋ก๊ทธ๋๋ฐ
ํ์๋
ผ๋ฌธ (์์ฌ)-- ์์ธ๋ํ๊ต ๋ํ์ : ์ ๊ธฐยท์ปดํจํฐ๊ณตํ๋ถ, 2015. 8. ์ค์ฑ๋ก.๋ณธ ๋
ผ๋ฌธ์ Intel์ ๋ณ๋ ฌ์ฐ์ฐ์ ์ํ ๋ณด์กฐ ํ๋ก์ธ์ฑ ์ฅ์น(Co-Processor)์ธ Xeon Phi๋ฅผ ์ด์ฉํ ๊ฐ์ํ ์๊ณ ๋ฆฌ์ฆ ์ค๊ณ ๋ฐ ๊ตฌํ์ ์ฃผ์ ์ด์์ Xeon Phi๋ก ๊ตฌํ ๊ฐ๋ฅํ ๋ณ๋ ฌํ ๋ชจ๋ธ์ ์ ์ํ๋ค. ํจ๊ณผ์ ์ธ ๋ณ๋ ฌํ๋ก๊ทธ๋๋ฐ์ ์ํด์๋ ์ฌ์ฉํ๊ณ ์ํ๋ ๊ฐ์๊ธฐ์ ๊ตฌ์กฐ์ ์ธ ํน์ง๊ณผ ํ๋ก๊ทธ๋๋ฐ ๋ชจ๋ธ์ ๋ํ์ฌ ๊ฐ๋ฐ์๊ฐ ๊ตฌ์ฒด์ ์ธ ์ดํด๋ฅผ ํ ํ์๊ฐ ์๋ค. ๊ทธ๋ฆฌ๊ณ ๊ฐ์๊ธฐ๋ก ๊ตฌํ์ด ๊ฐ๋ฅํ ๋ณ๋ ฌํ ๋ชจ๋ธ์ ํ์
ํ์ฌ ๋์ ์ดํ๋ฆฌ์ผ์ด์
์ ํจ๊ณผ์ ์ธ ์ ์ฉ์ ํ์ฌ์ผํ๋ค.
๋ฐ๋ผ์ ๋ณธ ๋
ผ๋ฌธ์ ๋จผ์ ํจ๊ณผ์ ์ธ ํ๋ก๊ทธ๋๋ฐ์ ์ํด ์์๋์ด์ผ ํ Xeon Phi์ ๊ตฌ์กฐ์ ํน์ง, ํ๋ก๊ทธ๋๋ฐ ๋ชจ๋ธ์ ์ค๋ช
ํ๋ค. ๋๋ถ์ด ํ๋ก๊ทธ๋๋จธ ๊ด์ ์์ GPGPU (General-Purpose computing on Graphics Processing Units)์์ ์ฐจ์ด๋ ์ธ๊ธํ์ฌ ์ด๋ฏธ GPGPU์ ์ต์ํด์ง ๊ฐ๋ฐ์๋ Xeon Phi์ ์ฝ๊ฒ ์ ์ํ ์ ์๋๋ก ํ์๋ค. ๋ค์์ผ๋ก Xeon Phi๋ก ๊ตฌํํ ์ ์๋ ๋ณ๋ ฌํ ๋ชจ๋ธ์ ์ ์ํ๊ณ ๊ตฌ์ฒด์ ์ธ ์ฌ๋ก์ ํจ๊ป ์ ์ํ๋ค. ๊ธฐ์กด์ ๋ฉํฐ์ฝ์ด CPU (Central Processing Unit)๋ฅผ ์ํด ๊ตฌํ์ด ๋์๋ Strassen-Winograd ์๊ณ ๋ฆฌ์ฆ๊ณผ SHRINK (SHaRed-memory SLINK)์๊ณ ๋ฆฌ์ฆ์ Xeon Phi๋ฅผ ์ ์ฉํ์ฌ ๊ตฌํํ ๋ค ์คํ์ ํตํด ๊ฐ์ํ ํจ๊ณผ๋ฅผ ๋ณด์๊ณ , ์ด๋ฅผ ํตํด Xeon Phi๋ GPGPU์ ๋์ผํ ํํ์ ๋ณ๋ ฌํ ๋ชจ๋ธ์ ๊ตฌํํ ์ ์์ ๋ฟ ์๋๋ผ GPGPU๋ก๋ ํจ๊ณผ์ ์ผ๋ก ๊ตฌํํ๊ธฐ ํ๋ ๋ณ๋ ฌํ ๋ชจ๋ธ๋ ๊ตฌํํ ์ ์์์ ํ์ธํ์๋ค.
์ด๋ฌํ ๊ตฌ์ฒด์ ์ธ ์ฌ๋ก์ ํจ๊ป ๋ณธ ๋
ผ๋ฌธ์ ์๊ฐ๋์ง ์์ ์ดํ๋ฆฌ์ผ์ด์
์๋ ๊ฐ์ํ๋ฅผ ์ํด ์ ์ฉํ ์ ์๋ ๋ ๊ฐ์ง ๋ณ๋ ฌํ ๋ชจ๋ธ์ ์ ์ํด ๊ฐ๋ฐ์๊ฐ ์ฃผ์ด์ง ์ดํ๋ฆฌ์ผ์ด์
์ ์ฑ๋ฅ ํฅ์์ ์ํด ํจ๊ณผ์ ์ผ๋ก Xeon Phi๋ฅผ ์ ์ฉํ ์ ์๋๋ก ํ์๋ค.์ 1 ์ฅ ์ ๋ก 1
์ 2 ์ฅ Xeon Phi ์๊ฐ 3
์ 1 ์ ๊ฐ์ ๋ฐ ๋ฑ์ฅ ๋ฐฐ๊ฒฝ 3
์ 2 ์ ๊ตฌ์กฐ์ ํน์ง 5
์ 3 ์ ํ๋ก๊ทธ๋๋ฐ ๋ชจ๋ธ 9
์ 4 ์ GPGPU ๋๋น ํน์ง 11
์ 3 ์ฅ Xeon Phi๋ฅผ ํตํ ๊ฐ์ํ 15
์ 1 ์ Simple ๋ชจ๋ธ ๊ฐ์ํ 17
1. Strassen-Winograd ์๊ณ ๋ฆฌ์ฆ ์๊ฐ 18
2. ์๊ณ ๋ฆฌ์ฆ ๊ฐ์ํ 20
3. Xeon Phi์ ์ ์ฉ 21
์ 2 ์ Complex ๋ชจ๋ธ ๊ฐ์ํ 22
1. SHRINK (SHaRed-memory SLINK) ์๊ณ ๋ฆฌ์ฆ ์๊ฐ 23
2. Xeon Phi์ ์ ์ฉ 25
3. Hybrid SHRINK 26
์ 4 ์ฅ ์ค ํ 29
์ 1 ์ Strassen-Winograd ์๊ณ ๋ฆฌ์ฆ ๊ฐ์ํ 29
1. ์คํ ํ๊ฒฝ 29
2. ์คํ ๊ฒฐ๊ณผ 30
์ 2 ์ SHRINK ์๊ณ ๋ฆฌ์ฆ ๊ฐ์ํ 33
1. ์คํ ํ๊ฒฝ 33
2. ์คํ ๊ฒฐ๊ณผ 34
์ 4 ์ฅ ๊ฒฐ ๋ก 38
์ฐธ๊ณ ๋ฌธํ 40
Abstract 47Maste