4.최종 보고

                    종합설계 프로젝트 최종보고서 요약

팀명

 Communication

제출일

2013 5 28

프로젝트 제목

 에너지 절감을 위한 PRAM 기반 File System 시뮬레이터 개발

설계 프로젝트 개요

프로젝트 수행 내용 및 중간 결과

프로젝트 요약문

본 프로젝트에서는 차세대 메모리인 PRAM을 target으로 하는 파일 시스템의 Access model을 에너지 절감 측면을 고려하여 구현한다. 구현된 Software 모델은 디스크 시뮬레이터를 통해 테스트 해보고 그 결과를 SSD와 비교,분석하여 성능평가 한다. Disksim 오픈소스를 기반으로 PRAM특성에 적합한 Software 모델을 구현한다. 기존에 SSD에 사용되는 NAND Flash 메모리는 PRAM과 다른 주소 체계를 가진다. NAND Flash 메모리는 Page-level mapping 방식이고 Pram은 Byte - level mapping 방식이다. 또한 Erase연산이 존재하지 않는다. 이러한 PRAM의 특성을 고려하여 구현한 모델은 Simulator을 바탕으로 에너지 값을 측정한다.측정된 에너지 값들은 실시간으로 Memory Energy- Consumption Monitor에 의해 그래프를 산출한다. 위 연구에서는 기존의 SSD에서 사용되는 NAND Flash 메모리, Page-level mapping방식의 PRAM과 Byte -level mapping방식의 PRAM을 다양한 Application을 통하여 효율적인 에너지 소비량을 비교 분석한다.


마일스톤 수행 내용

1. Disksim extension PRAM 구현

 - Access 단위 변경

HDD와 Nand Flash는 page(4Kbyte) 단위로 접근 가능한 주소체계를 가지고   지만 PRAM은 byte 단위로 접근이 가능하기 때문에 주소 체계에 맞게 소스를 변경해야 한다. 또한 1Byte단위의 translation은 큰 overhead가 예상되기 때문에 64~2K등 분할하여 최적의 offset을 채택하도록 계획한다.

2. Memory Energy-Consumption Monitor 구현

Disk I/O 를 처리하는데 소비되는 에너지 양을 그래프로 보기 위한 프로그램이다. 각각의 Memory Energy-Consumption Monitor의 하단 부에는 이벤트를 처리하는 데 걸리는 simulation time과 소비전력(power)를 수치화 해서 나타내고 현재 처리 중인 operation의 종류를 표현하였다. 그래프의 X 축으로 simulation time, Y 축으로 소비전력을 사용한다. 또한 에너지의 절감 효과를 효율적으로 비교하기 위하여 동일한 Disk I/O를 처리를 통하여 Cumulative Energy-Consumption Graph를 구현하였다. 이 그래프 아래에서는 각각의 메모리에서의 Operation 종류와 처리한 Operation count및 현재까지 사용된 누적 에너지 등을 보여준다.

3. 수집된 데이터를 통한 효율적 offset 구성, 최적의 access model 구현


상기 그래프는 일정시간의 web search workload 20가지를 분석하여 하나의 그래프로 평균한 그림이다. Offset의 크기가 증가할수록 응답시간은 빠른 반면 에너지의 사용량은 급증하는 형태를 보인다. 반면, Offset 크기가 적을수록 적은 에너지를 사용하는 반면 응답시간의 오버헤드는 급증한다. 이점을 고려해서 두 특징을 trade off할 수 있는 offset인 128byte를 연구 기준 offset으로 설정 할 수 있다.

 타 데이터도 종합해 보았을 때 128byte의 경우 256과의 에너지 사용량 차이가 급감함을 확인 할 수 있었고 64byte offset과의 응답시간 비교를 통해 128byte단위가 연구의 최적 offset임을 알 수 있었다.

4. Disk simulator model별 결과 데이터 및 분석.

Simulator model별 request에 대한 에너지 측정에 대한 결과로서 상기와 같은 데이터를 얻을 수 있었다. 위 그래프는 여러 개의 데이터 중 본 프로젝트의 특징을 가장 잘 보여 줄 수 있는 case들로 구성된 그래프로서 다음과 같은 특징을 보여준다.

첫 번째, csae2와 case3를 살펴보면, simulation 시간이 짧을 때와 길 때의 차이가 명확하다. 즉, Nand-Flash와 Pram의 초기 에너지 차이는 적지만 시간이 지날수록 그 에너지량의 차이를 확인 할 수 있었다. 이는 확률적인 pram의 상대적 에너지를 유추해낼 수 있다.

두 번째로는 pram(page)와 Nand-flash의 에너지 비교를 통해 Nand-flash에서 erase로 소모되는 에너지보다 pram에서 write latency(상대적으로 큰)로 인한 에너지 소모가 더 크다는 것을 확인 할 수 있었다. 

마지막으로 비슷한 데이터 양상을 보이는 그래프들 속에서도 pram이 확률적으로 더 적은 에너지를 소모함을 case4를 통해 알 수 있었다.

결론적으로, 각 case에서 목표했던 에너지 절감을 달성했음을 알 수 있었다.


최종 보고 요약

1. 시스템 구조도

어플리케이션에서 read, write 요청이 발생하면 파일 시스템에 의해 disk I/O가 전달되는데 그 정보를 Hooking하여 디스크 시뮬레이터의 input으로 사용한다.
Disksim extension SSD를 이용하여 Disksim extension PRAM을 구현하였고 서로 다른 하드웨어 환경에서 같은 workload를 주었을 때 소비되는 에너지 량을 측정하였다. 각 장치별 에너지 사용량을 한 눈에 비교해 보기 위한 그래프 툴을 개발하였으며 실시간 시뮬레이션 시스템을 개발하여 모든 과정들이 실시간으로 가능하게 하였다. 최종적으로 여러 workload에 따른 에너지 소비량을 수치화 하여 통계를 냈다.


2. 시스템 기능
  1)  Disksim 
       : Trace 파일을 input으로 하여 Disk access 시 소비되는 에너지 측정

  2) blkTrace
      : Disk I/O Hooking
 
  3) Memory Energy-Consumption Monitor
실시간 그래프는 오실로스코프의 형태를 본 떠 만든 프로그램으로 각 그래프 영역마다 메모리 별 전력과 누적 에너지량을 측정할 수 있도록 함. 서로 다른 offset이기에 같은 workload에도 하달되는 request량도 달라지기 때문에 simulator간의 간격을 monitor에서 버퍼에 저장하여 자동적으로 조정 가능하도록 구현.


프로젝트 결과  

<첨부파일> 최종 ppt 참조

동영상

YouTube 동영상


Ċ
12조 캡스톤,
2013. 5. 28. 오전 6:59
Ċ
12조 캡스톤,
2013. 5. 28. 오전 7:00
Ċ
12조 캡스톤,
2013. 5. 28. 오전 6:58
Comments