Exploiting Non-Volatile RAM to Enhance Flash File System Performance EMSOFT ’07 2008. 2. 20 Speaker: Yunjung Yoo
Introduction <ul><li>NVRAM(Non-volatile Random Access Memory): </li></ul><ul><ul><li>The next generation memory that retai...
Introduction <ul><li>NVRAMs Advantages over Flash memory </li></ul><ul><ul><li>The access time is faster than flash memory...
Design of the MiNV File System Information for managing the NVRAM The current status of each of the blocks The hash table ...
Metadata in MiNVFS
NVRAM Space Requirement for MiNVFS 16KB 512B 28B 16B 3072B 140B 32 140B
NVRAM Space Requirement for MiNVFS <ul><li>NVRAM Space Requirement Model </li></ul><ul><ul><li>Need to model the space use...
NVRAM Space Requirement for MiNVFS KB Worst case Best case
NVRAM Space Requirement for MiNVFS <ul><li>The NVRAM space requirement increases linearly as the flash memory capacity inc...
NVRAM Space Requirement for MiNVFS <ul><li>Case of 1%(10MB) </li></ul><ul><ul><li>For 4MB(MP3) </li></ul></ul><ul><ul><li>...
Performance Evaluation <ul><li>Experimental Setup </li></ul><ul><ul><li>Implemented in Linux 2.4.x </li></ul></ul><ul><ul>...
Performance Evaluation <ul><li>Correctness of the Model </li></ul>
Performance Evaluation <ul><li>Mount time : compared to YAFFS </li></ul><ul><ul><li>YAFFS : The mount time increases linea...
Performance Evaluation <ul><li>With synthetic workloads </li></ul><ul><ul><li>Sequentially creating files and then deletin...
Performance Evaluation <ul><li>* The way YAFFS creates files : </li></ul><ul><ul><li>Create & Write the metadata for the f...
Performance Evaluation <ul><li>With realistic workloads : TFFS benchmark program </li></ul><ul><ul><li>The FAX workload : ...
Summary <ul><li>Presented the design and implementation of the MiNVFS </li></ul><ul><li>Exploiting NVRAM to store all of m...
Upcoming SlideShare
Loading in …5
×

Exploiting Non-Volatile RAM to Enhance Flash File System ...

752 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
752
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
13
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Exploiting Non-Volatile RAM to Enhance Flash File System ...

  1. 1. Exploiting Non-Volatile RAM to Enhance Flash File System Performance EMSOFT ’07 2008. 2. 20 Speaker: Yunjung Yoo
  2. 2. Introduction <ul><li>NVRAM(Non-volatile Random Access Memory): </li></ul><ul><ul><li>The next generation memory that retains both non-volatile storage and random access memory </li></ul></ul><ul><ul><li>PRAM (Phase-change RAM) </li></ul></ul><ul><ul><li>FeRAM (Ferroelectric RAM) </li></ul></ul><ul><ul><li>MRAM (Magnetroresistive RAM) </li></ul></ul><ul><li>MiNVFS (Metadata in Non-Volatile RAM File System) </li></ul><ul><ul><li>File system that puts all metadata of the file system in NVRAM as maintaining metadata safely, and stores all the file data in Flash memory </li></ul></ul>
  3. 3. Introduction <ul><li>NVRAMs Advantages over Flash memory </li></ul><ul><ul><li>The access time is faster than flash memory (Write access) </li></ul></ul><ul><ul><li>Overwrite existing data </li></ul></ul><ul><ul><li>No erasure limitation </li></ul></ul>2005 년 2 월 전자통신경향분석 제 20 권 제 1 호
  4. 4. Design of the MiNV File System Information for managing the NVRAM The current status of each of the blocks The hash table that links all existing Inode
  5. 5. Metadata in MiNVFS
  6. 6. NVRAM Space Requirement for MiNVFS 16KB 512B 28B 16B 3072B 140B 32 140B
  7. 7. NVRAM Space Requirement for MiNVFS <ul><li>NVRAM Space Requirement Model </li></ul><ul><ul><li>Need to model the space used by data structures </li></ul></ul><ul><ul><li>(1) the amount of NVRAM required by MiNVFS </li></ul></ul><ul><ul><li>(2) the fixed space required by NVRAM_Manager, Superblock, and Inode_Table </li></ul></ul><ul><ul><li>(3) the space needed for the Inode structures </li></ul></ul><ul><ul><li>(4) the space needed for the File_Offset structures </li></ul></ul>
  8. 8. NVRAM Space Requirement for MiNVFS KB Worst case Best case
  9. 9. NVRAM Space Requirement for MiNVFS <ul><li>The NVRAM space requirement increases linearly as the flash memory capacity increases </li></ul><ul><li>MP3 : about 4MB </li></ul><ul><li>Photo : about 330KB </li></ul><ul><li>Both the “MP3 case” and “Photo case” are very similar to that of the “Best case” </li></ul>
  10. 10. NVRAM Space Requirement for MiNVFS <ul><li>Case of 1%(10MB) </li></ul><ul><ul><li>For 4MB(MP3) </li></ul></ul><ul><ul><li>20,000 metadata </li></ul></ul><ul><ul><li>250 contents </li></ul></ul><ul><ul><li>15,667KB NVRAM </li></ul></ul><ul><ul><li>For 330KB(Photo) </li></ul></ul><ul><ul><li>20,000 metadata </li></ul></ul><ul><ul><li>3,000 contents </li></ul></ul><ul><ul><li>16,223KB NVRAM </li></ul></ul><ul><li>In common case </li></ul><ul><ul><li>A few hundreds of metadata </li></ul></ul><ul><ul><li>10~20MB for CE today </li></ul></ul>
  11. 11. Performance Evaluation <ul><li>Experimental Setup </li></ul><ul><ul><li>Implemented in Linux 2.4.x </li></ul></ul><ul><ul><li>Including the file system formatting tool and all the basic fs ops </li></ul></ul><ul><ul><li>Motherboard : EZ-M28 </li></ul></ul><ul><ul><ul><li>Processor : S3C2800 (ARM920T) </li></ul></ul></ul><ul><ul><ul><li>32MB SDRAM </li></ul></ul></ul><ul><ul><ul><li>64MB NAND flash memory </li></ul></ul></ul><ul><ul><li>NVRAM Daughter board : 12MB FeRAM </li></ul></ul><ul><ul><ul><li>Accessed via memory mapped addressing </li></ul></ul></ul>
  12. 12. Performance Evaluation <ul><li>Correctness of the Model </li></ul>
  13. 13. Performance Evaluation <ul><li>Mount time : compared to YAFFS </li></ul><ul><ul><li>YAFFS : The mount time increases linearly with utilization </li></ul></ul>
  14. 14. Performance Evaluation <ul><li>With synthetic workloads </li></ul><ul><ul><li>Sequentially creating files and then deleting the files (5 times) </li></ul></ul><ul><ul><li>No updates on the files </li></ul></ul><ul><ul><li>The files created are all of the same particular size for each experiment </li></ul></ul><ul><ul><li>For YAFFS, the # presented in the table is not exact </li></ul></ul>
  15. 15. Performance Evaluation <ul><li>* The way YAFFS creates files : </li></ul><ul><ul><li>Create & Write the metadata for the file </li></ul></ul><ul><ul><li>Then, write out the file data </li></ul></ul><ul><ul><li>Finally, create and the write a newly updated metadata, and invalidate the old metadata </li></ul></ul>
  16. 16. Performance Evaluation <ul><li>With realistic workloads : TFFS benchmark program </li></ul><ul><ul><li>The FAX workload : managing the relatively large files </li></ul></ul><ul><ul><li>The Mobile Phone workload : managing the small files </li></ul></ul><ul><ul><li>The Event Recorder workload : Creating records and updating </li></ul></ul>Especially efficient for small file size and for the frequently updated files 152% 559% 600%
  17. 17. Summary <ul><li>Presented the design and implementation of the MiNVFS </li></ul><ul><li>Exploiting NVRAM to store all of metadata </li></ul><ul><li>Modeling the NVRAM space requirement </li></ul><ul><ul><li>The amount of NVRAM required is in the 10’s of megabytes </li></ul></ul><ul><li>Conduct a series of experiments on a real board </li></ul><ul><ul><li>Mount time is drastically reduced (No scanning) </li></ul></ul><ul><ul><li>Significantly improved execution time (compared to YAFFS) </li></ul></ul><ul><li>Future work </li></ul><ul><ul><li>The energy consumption by NVRAM </li></ul></ul><ul><ul><li>Wear-leveling in flash memory (simplified??) </li></ul></ul><ul><ul><li>Further optimization in the design and implementation </li></ul></ul>

×