Lustre는 대용량 분산파일 시스템의 일종으로 슈퍼컴퓨팅 분야에서 널리 사용되고 있다. 최근 SSD의 등장으로 인해, 고성능 스토리지를 구성할 수 있는 하드웨어적인 발전은 이루어졌으나, 이에 따른 소프트웨어적인 발전은 아직 따라가지 못하고 있다. 본 논문에서는 SSD를 이용한 Lustre시스템의 성능을 실험을 통해 측정하고 분석하였다. 하드디스크로 구성된 Lustre와 SSD로 구성된 Lustre를 각각 비교실험을 통해, 전체 대역폭 및 메타데이터 접근 성능에 대해서 분석하고, 장단점을 비교한다. 실험결과, 1) 랜덤 접근에 강한 SSD를 메타데이터용 저장공간에 사용하는 것이 효율적이며, 2) 스레드 수가 많거나, 작은 파일이 많은 경우 SSD를 데이터 저장 디스크로 사용하는 것이 성능의 이점이 있다.
Lustre는 대용량 분산파일 시스템의 일종으로 슈퍼컴퓨팅 분야에서 널리 사용되고 있다. 최근 SSD의 등장으로 인해, 고성능 스토리지를 구성할 수 있는 하드웨어적인 발전은 이루어졌으나, 이에 따른 소프트웨어적인 발전은 아직 따라가지 못하고 있다. 본 논문에서는 SSD를 이용한 Lustre시스템의 성능을 실험을 통해 측정하고 분석하였다. 하드디스크로 구성된 Lustre와 SSD로 구성된 Lustre를 각각 비교실험을 통해, 전체 대역폭 및 메타데이터 접근 성능에 대해서 분석하고, 장단점을 비교한다. 실험결과, 1) 랜덤 접근에 강한 SSD를 메타데이터용 저장공간에 사용하는 것이 효율적이며, 2) 스레드 수가 많거나, 작은 파일이 많은 경우 SSD를 데이터 저장 디스크로 사용하는 것이 성능의 이점이 있다.
Lustre is a scalable, distributed file system, which is popular in the field of high-performance computing. Recently, the advent of SSD has enabled high-performance storage hardware, but software development requires further improvement. In this paper, we analyzed performance of the Lustre system us...
Lustre is a scalable, distributed file system, which is popular in the field of high-performance computing. Recently, the advent of SSD has enabled high-performance storage hardware, but software development requires further improvement. In this paper, we analyzed performance of the Lustre system using SSD via extensive experimentation. We compared performance of Lustre on SSDs and HDDs in terms of file read/write throughputs and metadata access latencies. Our experimental results showed that 1) SSDs improve metadata access performance due to fast random read/write access of SSD characteristics, and 2) SSD are benefited to a greater extent under multiple threads and large numbers of small sized files.
Lustre is a scalable, distributed file system, which is popular in the field of high-performance computing. Recently, the advent of SSD has enabled high-performance storage hardware, but software development requires further improvement. In this paper, we analyzed performance of the Lustre system using SSD via extensive experimentation. We compared performance of Lustre on SSDs and HDDs in terms of file read/write throughputs and metadata access latencies. Our experimental results showed that 1) SSDs improve metadata access performance due to fast random read/write access of SSD characteristics, and 2) SSD are benefited to a greater extent under multiple threads and large numbers of small sized files.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
본 논문에서는 Lustre 파일 시스템에 SSD를 적용하였을 때의 성능을 비교 분석하였다. 현실적으로 모든 OST를 SSD로 대체하는 것이 어렵기 때문에, 소수의 SSD를 활용하여 Lustre 의 전체적인 성능을 증가 시키는 방안과 SSD 활용 기초자료를 위한 방향으로 실험을진행하였다.
본 논문에서는 슈퍼컴퓨팅에서 자주 사용되는 병렬파일 시스템 중에 하나인 Lustre 파일시스템의 성능을 SSD도입시 비교 분석하도록 한다. 본 논문에서 새롭게제시되는 내용은 다음과 같다.
가설 설정
분석 결과, 스레드 갯수가 증가하고, 클라이언트 노드갯수가 증가하였을 때, 즉 보편적인 슈퍼 컴퓨터 환경일때 MDT를 SSD로 변경 시 큰 성능향상을 보일 것으로 나타났다.<실제로 MDT는 랜덤 I/O가 많기 때문에 SSD를 사용하는 것이 효과적일 것이다. 뿐만 아니라 MDT는 적은 양의 공간만 요구하기 때문에 MDT를 HDD대신 SSD로 대체하여 사용하는 것은 비용을 고려한 성능향상에 있어서 충분한 대안으로 여겨진다.
첫째, 노드 갯수에 따른 성능 변화이다. 모든 워크로드에 대하여, 1x3의 경우 1><1일 때에 비해 성능이 향상되지만, 3><1에 비하여 현격하게 떨어지는 것을 볼 수 있다.
제안 방법
노드) 환경의 실험이다. 각각 환경별로 l(SSD), 2(SSD), 2(SSD) 2threads 그리고 2(SSD) 2clients 로 표기하고, Write/Read 성능을 표시하였다. 현재 10Gbit 이더넷을 사용중이므로, 3개 이상의 SSD를 구성하더라도네트워크에서 병목현상이 일어나 성능향상을 기대할 수없는 관계로, 2개의 SSD 환경까지만 실험하였다.
다수의 스레드 환경에서 성능 실험은 l(HDD), 4(HDD) 그리고 l(SSD)를 타겟으로 스레드 수를 1개부터 16개까지 변경하며 실험을 수행하였다. 스레드 수는 MPI의 np (Number of Process) 옵션을 사용하여 조절하였고 실험 결과는 그림 8과 같다.
뿐만 아니라 MDT는 적은 양의 공간만 요구하기 때문에 MDT를 HDD대신 SSD로 대체하여 사용하는 것은 비용을 고려한 성능향상에 있어서 충분한 대안으로 여겨진다.>둘째, 실제 데이터를 저장하는 Object Storage Target(OST) 에 SSD및 HDD 사용 시 비교 분석 실험을 하였다. 먼저단일 클라이언트일 때 1개의 SSD로 4개의 HDD를 대체할 수 있는 Write/Read 성능을 보여주는 것을 확인하였다.
먼저단일 클라이언트일 때 1개의 SSD로 4개의 HDD를 대체할 수 있는 Write/Read 성능을 보여주는 것을 확인하였다. 또한, 슈퍼컴퓨팅 환경인 다수의 클라이언트/스레드 환경에서 디스크 종류와 스레드 수를 변경해가며비교 분석 실험을 하였다. 스레드 수의 증가는 무작위함을 증가시켜 랜덤 I/O를 초래하며 그 결과 랜덤 I/O에취약한 HDD는 스레드 수가 증가함에 따라 성능이 감소하였다.
본 실험에서는 10Gbit 이더넷 환경에서 OST의 디스크 종류와 스트라이프 개수에 대한 값 변경 실험 그리고 스레드 수와 파일 크기를 변경해가며 실험을 진행하였고 고정 변수로 스트라이프 크기와 IOR의 파일 전송크기 는 1MB로 고정하였다.
단위는 ops/sec을 사용한다. 본 실험에서는 Metadata Server에서 메타데이터를저장하는 Metadata Target의 디스크를 HDD.SSD 일때 스레드 수와 클라이언트 노드 수를 변경해가며 실험을 진행하였다. n개의 스레드 수와 m개의 클라이언트노드의 수는 (nxm) 으로 표현했으며 하나의 클라이언트에서 스레드 수가 1, 3개인 경우, 세개의 클라이언트에서각각 스레드 수가 1, 2, 4, 8개인 경우로 실험을 진행하였다 그림 4는 HDD일 때의 실험값을 나타내며, 그림 5는 SSD일 때의 실험값을 나타낸다.
이와 같이 슈퍼컴퓨터 환경에서 Lustre 성능 향상을위해 MDT로 SSD를 활용하는 방안 및, SSD를 OST 로 활용하는 방안을 제시하였다. 본 결과에서 볼 때, 소수의 SSD를 효율적으로 OST에 활용하기 위해, SSD와 HDD를 함께 사용하되 단순한 병렬적인 합성이 아닌새로운 방법이 요구된다.
본 논문에서 새롭게제시되는 내용은 다음과 같다. 첫째, Lustre 파일 시스템의 가장 큰 성능 문제점으로 지적되고 있는 메타데이터관리용 스토리지 디바이스인 MetaData Target(MDT) 에 SSD와 HDD사용시 비교 실험 및 성능 분석을 하였다. 분석 결과, 스레드 갯수가 증가하고, 클라이언트 노드갯수가 증가하였을 때, 즉 보편적인 슈퍼 컴퓨터 환경일때 MDT를 SSD로 변경 시 큰 성능향상을 보일 것으로 나타났다.
파일 크기에 따른 성능을 알아보기 위해 l(HDD), 4(HDD) 그리고 l(SSD)를 타겟으로 파일 크기를 1MB부터 1024MB까지 변화를 주어 실험을 수행하였다. 본실험에서, 파일사이즈가 작아 OSS 메모리에 캐쉬 효과가 발생하므로 Read 성능을 제외한 Write 성능만을 나타냈다.
때의 성능을 비교 분석하였다. 현실적으로 모든 OST를 SSD로 대체하는 것이 어렵기 때문에, 소수의 SSD를 활용하여 Lustre 의 전체적인 성능을 증가 시키는 방안과 SSD 활용 기초자료를 위한 방향으로 실험을진행하였다. 실험 결과 MDT가 SSD로 변경됐을 때 큰성능향상이 보일 것으로 예상되는더〕, 이는 MDT는 적은양의 공간만 요구하기 때문에 MDT를 SSD로 대체하여사용하는 것이 효율적인 방안으로 제시될 수 있다.
각각 환경별로 l(SSD), 2(SSD), 2(SSD) 2threads 그리고 2(SSD) 2clients 로 표기하고, Write/Read 성능을 표시하였다. 현재 10Gbit 이더넷을 사용중이므로, 3개 이상의 SSD를 구성하더라도네트워크에서 병목현상이 일어나 성능향상을 기대할 수없는 관계로, 2개의 SSD 환경까지만 실험하였다. 실험결과 2(SSD)의 Write 성능은 약 600MB/sec, Read 성능은 약 1000MB/sec의 성능을 보인다.
대상 데이터
실험에 사용된 클러스터의 구성은 기본적으로 Metadata Server(MDS), Object Storage Server(OSS), Client로 구성되어 있으며, 실험에 따라 Client 머신을 3대까지 늘려 사용하였다. MDS와 Client 머신은 Inter(R) Xeon(R) CPU E3-1240 v3 @ 3.
이론/모형
Lustre 파일 시스템의 기본 성능을 측정하기 위해 고성능 파일시스템의 테스트에서 주로 사용되는 벤치마크 도구인 IOR과 메타데이터 서버 성능을 테스트 해주는 Mdtest를 사용하였다[2].
성능/효과
실험 결과 l(HDD), 4(HDD) 그리고 l(SSD) 모두 파일 크기가 커질 수록그림 7의 각 Write 성능에 점점 수렴하는 것을 확인할수 있다. 그리고 비슷한 Write 성능을 가진 l(SSD)와 4(HDD)는 512MB 이하의 크기를 가진 파일에서 l(SSD) 가 4(HDD)보다 평균 100MB/sec 이상의 성능을 보여주며 최대 170MB/sec 이상의 성능 차이를 보인다. 이는 512MB이하의 파일 처리에 있어서 SSD가 HDD보다효과적임을 보여준다.
둘째, 전체적으로 SSD 사용 시 성능이 HDD 사용시성능에 비해 크게 차이가 나지 않는다. 이는 현 실험 환경의 경우, 클라이언트 노드의 수가 3개 이하이므로 MDT 에 충분한 로드를 주지 못하고 있기 때문이다.
그 이유는 Lustre 내부적으로 동일한 노드에 위치한 다른 스레드에서 오는 요청들은 하나의 큐에 저장하여 직렬화하여 처리하기 때문에 노드의 개수가 IOPs를늘리는데 중요하다(3). 따라서, create/remove의 경우는 read only 작업이 아니므로, 같은 노드 개수에서 스레드 숫자 증가는 큰 성능 변화가 없고, 노드 개수의 증가에 따라 선형적으로 그 성능이 향상되는 것을 볼 수 있다. 다만, file/directory stat의 경우, read only 작업이므로, 스레드 개수 증가에 따라 선형적으로 성능이 증가하는 것을 볼 수 있다.
이는 노드 및 스레드 갯수가 어느정도이상이 되서 디스크에 대한 랜덤 I/O 증가에 따른 부하가 충분히 이루어졌기 때문에 발견되는 증상으로 생각할 수 있다. 따라서, 클라이언트 노드 수 및 스레드 수가증가함에 따라, MDT에 대한 랜덤 I/O 부하가 늘어날것이므로, SSD를 사용 시 성능 개선 도가 급격하게 증가할 것으로 예상된다. 즉, MDT의 경우는 SSD를 사용하는것이 큰 효과를 거둘 수 있을 것으로 예상할 수 있다.
l(SSD)의경우 Write/read가 약 500MB의 성능을 보이고, l(HDD) 의 경우 Write가 으扌 150MB/sec, Read가 약 200MB/sec 의 성능을 보여주고 있다. 또한, 2(HDD), 4(HDD)의 결과값을 볼 때 HDD의 수가 증가함에 따라 선형적으로성능이 향상되는 것을 확인할 수 있다. 그리고 l(SSD) 와 4(HDD)의 성능을 비교해보면 Write 성능에 경우 l(SSD)와 4(HDD)가 500MB/sec 정도의 비슷한 성능을 보이며 Read 성능에 경우 4(HDD)가 l(SSD)에 비해 1.
이는 SSD와 HDD의 디스크 특성 차이에서 나타나는 결과이다. 스레드 수의 증가는 디스크 입장에서 랜덤 V。를 초래하게 되는데, 그 결과 랜덤 I/O에 강한 SSD는 스레드 수에 상관없이 일정한 성능을 보이고, 랜덤 V0에 취약한 HDD는 스레드 수 증가에 따른 성능 감소를 보인다 이는 스레드가 많은 슈퍼컴퓨팅 환경에서 SSD가 효과적임을 보여준다.
>둘째, 실제 데이터를 저장하는 Object Storage Target(OST) 에 SSD및 HDD 사용 시 비교 분석 실험을 하였다. 먼저단일 클라이언트일 때 1개의 SSD로 4개의 HDD를 대체할 수 있는 Write/Read 성능을 보여주는 것을 확인하였다. 또한, 슈퍼컴퓨팅 환경인 다수의 클라이언트/스레드 환경에서 디스크 종류와 스레드 수를 변경해가며비교 분석 실험을 하였다.
본실험에서, 파일사이즈가 작아 OSS 메모리에 캐쉬 효과가 발생하므로 Read 성능을 제외한 Write 성능만을 나타냈다. 실험 결과는 그림 9와 같다.
첫째, Lustre 파일 시스템의 가장 큰 성능 문제점으로 지적되고 있는 메타데이터관리용 스토리지 디바이스인 MetaData Target(MDT) 에 SSD와 HDD사용시 비교 실험 및 성능 분석을 하였다. 분석 결과, 스레드 갯수가 증가하고, 클라이언트 노드갯수가 증가하였을 때, 즉 보편적인 슈퍼 컴퓨터 환경일때 MDT를 SSD로 변경 시 큰 성능향상을 보일 것으로 나타났다.<실제로 MDT는 랜덤 I/O가 많기 때문에 SSD를 사용하는 것이 효과적일 것이다.
또한, 슈퍼컴퓨팅 환경인 다수의 클라이언트/스레드 환경에서 디스크 종류와 스레드 수를 변경해가며비교 분석 실험을 하였다. 스레드 수의 증가는 무작위함을 증가시켜 랜덤 I/O를 초래하며 그 결과 랜덤 I/O에취약한 HDD는 스레드 수가 증가함에 따라 성능이 감소하였다. 이를 통해서 랜덤 I/O에 뛰어난 SSD가 스레드 수 증가에 따른 I/O 환경에서 효과적임을 보였다.
현실적으로 모든 OST를 SSD로 대체하는 것이 어렵기 때문에, 소수의 SSD를 활용하여 Lustre 의 전체적인 성능을 증가 시키는 방안과 SSD 활용 기초자료를 위한 방향으로 실험을진행하였다. 실험 결과 MDT가 SSD로 변경됐을 때 큰성능향상이 보일 것으로 예상되는더〕, 이는 MDT는 적은양의 공간만 요구하기 때문에 MDT를 SSD로 대체하여사용하는 것이 효율적인 방안으로 제시될 수 있다. SSD 를 Lustre의 OST로 사용할 경우, 하나의 SSD는 4개의 HDD에 해당하는 성능을 보이게 된다.
실험 결과는 그림 9와 같다. 실험 결과 l(HDD), 4(HDD) 그리고 l(SSD) 모두 파일 크기가 커질 수록그림 7의 각 Write 성능에 점점 수렴하는 것을 확인할수 있다. 그리고 비슷한 Write 성능을 가진 l(SSD)와 4(HDD)는 512MB 이하의 크기를 가진 파일에서 l(SSD) 가 4(HDD)보다 평균 100MB/sec 이상의 성능을 보여주며 최대 170MB/sec 이상의 성능 차이를 보인다.
현재 10Gbit 이더넷을 사용중이므로, 3개 이상의 SSD를 구성하더라도네트워크에서 병목현상이 일어나 성능향상을 기대할 수없는 관계로, 2개의 SSD 환경까지만 실험하였다. 실험결과 2(SSD)의 Write 성능은 약 600MB/sec, Read 성능은 약 1000MB/sec의 성능을 보인다. 이는 l(SSD)와비교하여 Write는 120%, Read는 200% 증가한 수치를보여주는데, Write 성능에 경우 SSD 개수에 비례한 성능증가 현상을 보이지 않는다.
스레드 수의 증가는 무작위함을 증가시켜 랜덤 I/O를 초래하며 그 결과 랜덤 I/O에취약한 HDD는 스레드 수가 증가함에 따라 성능이 감소하였다. 이를 통해서 랜덤 I/O에 뛰어난 SSD가 스레드 수 증가에 따른 I/O 환경에서 효과적임을 보였다.
4배의 성능을 보인다. 즉, 단일 스레드 환경에서 하나의 SSD로 4개의 HDD 성능을 충분히 감당할 수 있음을 보여준다.
HDD일 때와 SSD일때의 디스크 사용 도를 비교해보면 HDD가 SSD보다 디스크 사용도의 비율이 높고 디스크 사용도가 100%가되는 경우가 많다. 하지만 HDD의 디스크 사용 도가 SSD보다 전체적으로 높지만 성능에 영향을 줄만큼의 부하가 주어지지 않기 때문에 본 실험에서 HDD와 SSD의 성능차이가 크게 나타나지 않았다. 하지만 같은 작업에 대해서 HDD가 더 많은 부하가 걸리고, 디스크사용 도가 100%가 되는 경우가 많기 때문에 더 무거운 작업이 수행될 경우, 즉 노드 및 스레드 개수 증가에 따라 HDD와 SSD의 성능 차이가 현저해질 것으로 예상된다.
SSD 를 Lustre의 OST로 사용할 경우, 하나의 SSD는 4개의 HDD에 해당하는 성능을 보이게 된다. 하지만 HDD의특성인 랜덤 I/O에 대한 취약성 때문에, 스레드 수가 많은 환경 및 작은 파일이 많이 사용되는 환경에서 SSD 를 사용시 비교 성능이 비약적으로 증가하는 것을 실험을 통해 확인하였다.
후속연구
본 결과에서 볼 때, 소수의 SSD를 효율적으로 OST에 활용하기 위해, SSD와 HDD를 함께 사용하되 단순한 병렬적인 합성이 아닌새로운 방법이 요구된다. 따라서, Burst Buffer와 같은컴퓨팅 노드 내부 혹은 I/O 노드 단에서 SSD를 캐시 및버퍼의 형태로 이용하는 연구가 기대되는 바이다.
활용하는 방안을 제시하였다. 본 결과에서 볼 때, 소수의 SSD를 효율적으로 OST에 활용하기 위해, SSD와 HDD를 함께 사용하되 단순한 병렬적인 합성이 아닌새로운 방법이 요구된다. 따라서, Burst Buffer와 같은컴퓨팅 노드 내부 혹은 I/O 노드 단에서 SSD를 캐시 및버퍼의 형태로 이용하는 연구가 기대되는 바이다.
J. Fragalla, "Configure, Tune, and Benchmark a Lustre FileSystem," 2014 Oil & Gas HPC Workshop, 2014.
Shuichi Ihara, "Lustre Metadata Fundamental Benchmark and Performance," 2014 Lustre Admins & Developers Workshop, 2014.
Jogn L. Hammond, "Progressive File Layouts Prototype," Lustre User Group 2015, 2015.
T. Wang, S. Oral, Y. Wang, B. Settlemyer, S. Atchley, W. Yu, "BurstMem: A High-Performance Burst Buffer System for Scientific Applications," 2014 IEEE International Conference on Big Data, IEEE, 2014.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.