A fast fsync() design for F2FS in flash-based Android devices
碩士 === 國立交通大學 === 資訊科學與工程研究所 === 104 === Nowadays, more and more users start to use hand-held device. They care about not only the price but also the application performance. Therefore, programmers always try their best to improve application performance and concern other design issues. To maintai...
Main Authors: | , |
---|---|
Other Authors: | |
Format: | Others |
Language: | zh-TW |
Published: |
2015
|
Online Access: | http://ndltd.ncl.edu.tw/handle/31740391112227808323 |
id |
ndltd-TW-104NCTU5394001 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-TW-104NCTU53940012017-09-15T04:40:04Z http://ndltd.ncl.edu.tw/handle/31740391112227808323 A fast fsync() design for F2FS in flash-based Android devices 用於使用快閃儲存的Android裝置上F2FS檔案系統之快速檔案同步設計 Chen, Po-Tsang 陳柏蒼 碩士 國立交通大學 資訊科學與工程研究所 104 Nowadays, more and more users start to use hand-held device. They care about not only the price but also the application performance. Therefore, programmers always try their best to improve application performance and concern other design issues. To maintain the consistency of data, many popular applications manage their data using SQLite. However, Recent research pointed out that the SQLite involves frequent file synching operations (i.e., fsync() calls). Fsync() calls have many shortcomings which may degree the application performance: First, fsync() is a blocking call that applications could suffer from poor response if the fsync() implementation is inefficient. Second, fsync() is a synchronous call that would cause a lot of small-sized and random write operations. These write operations might incur frequent garbage collections as well as shorten the lifetime of flash-storage-based Android device. This work purposes an efficient design of fsync() called eager synching. We have implemented eager synching on F2FS file system. By increasing the size of average block request and decreasing write streams, we can alleviate I/O overhead and improve write sequential ratio respectively. Besides, the lifetime of the underlying NAND flash storage would be extended by reducing block write traffic. We conducted a series of experiments on Google Nexus 7 tablet. Our experimental results show that, under the workloads of popular Android applications, the average and max fsync() latencies were reduced by up to 68% and 82%, respectively, and the block-level write traffic was reduced by up to 20%. Chang, Li-Ping 張立平 2015 學位論文 ; thesis 36 zh-TW |
collection |
NDLTD |
language |
zh-TW |
format |
Others
|
sources |
NDLTD |
description |
碩士 === 國立交通大學 === 資訊科學與工程研究所 === 104 === Nowadays, more and more users start to use hand-held device. They care about not only the price but also the application performance. Therefore, programmers always try their best to improve application performance and concern other design issues. To maintain the consistency of data, many popular applications manage their data using SQLite. However, Recent research pointed out that the SQLite involves frequent file synching operations (i.e., fsync() calls). Fsync() calls have many shortcomings which may degree the application performance: First, fsync() is a blocking call that applications could suffer from poor response if the fsync() implementation is inefficient. Second, fsync() is a synchronous call that would cause a lot of small-sized and random write operations. These write operations might incur frequent garbage collections as well as shorten the lifetime of flash-storage-based Android device.
This work purposes an efficient design of fsync() called eager synching. We have implemented eager synching on F2FS file system. By increasing the size of average block request and decreasing write streams, we can alleviate I/O overhead and improve write sequential ratio respectively. Besides, the lifetime of the underlying NAND flash storage would be extended by reducing block write traffic. We conducted a series of experiments on Google Nexus 7 tablet. Our experimental results show that, under the workloads of popular Android applications, the average and max fsync() latencies were reduced by up to 68% and 82%, respectively, and the block-level write traffic was reduced by up to 20%.
|
author2 |
Chang, Li-Ping |
author_facet |
Chang, Li-Ping Chen, Po-Tsang 陳柏蒼 |
author |
Chen, Po-Tsang 陳柏蒼 |
spellingShingle |
Chen, Po-Tsang 陳柏蒼 A fast fsync() design for F2FS in flash-based Android devices |
author_sort |
Chen, Po-Tsang |
title |
A fast fsync() design for F2FS in flash-based Android devices |
title_short |
A fast fsync() design for F2FS in flash-based Android devices |
title_full |
A fast fsync() design for F2FS in flash-based Android devices |
title_fullStr |
A fast fsync() design for F2FS in flash-based Android devices |
title_full_unstemmed |
A fast fsync() design for F2FS in flash-based Android devices |
title_sort |
fast fsync() design for f2fs in flash-based android devices |
publishDate |
2015 |
url |
http://ndltd.ncl.edu.tw/handle/31740391112227808323 |
work_keys_str_mv |
AT chenpotsang afastfsyncdesignforf2fsinflashbasedandroiddevices AT chénbǎicāng afastfsyncdesignforf2fsinflashbasedandroiddevices AT chenpotsang yòngyúshǐyòngkuàishǎnchǔcúndeandroidzhuāngzhìshàngf2fsdàngànxìtǒngzhīkuàisùdàngàntóngbùshèjì AT chénbǎicāng yòngyúshǐyòngkuàishǎnchǔcúndeandroidzhuāngzhìshàngf2fsdàngànxìtǒngzhīkuàisùdàngàntóngbùshèjì AT chenpotsang fastfsyncdesignforf2fsinflashbasedandroiddevices AT chénbǎicāng fastfsyncdesignforf2fsinflashbasedandroiddevices |
_version_ |
1718533709989150720 |