Differential Write-Conscious Software Design on Phase-Change Memory: An SQLite Case Study

Phase-change memory (PCM) has several benefits including low cost, non-volatility, byte-addressability, etc., and limitations such as write endurance. There have been several hardware approaches to exploit the benefits while minimizing the negative impact of limitations. Software approaches could gi...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:ACM transactions on design automation of electronic systems 2016-07, Vol.21 (3), p.1-25
Hauptverfasser: Lee, Sungkwang, Lee, Taemin, Park, Hyunsun, Ahn, Junwhan, Yoo, Sungjoo, Won, Youjip, Lee, Sunggu
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 25
container_issue 3
container_start_page 1
container_title ACM transactions on design automation of electronic systems
container_volume 21
creator Lee, Sungkwang
Lee, Taemin
Park, Hyunsun
Ahn, Junwhan
Yoo, Sungjoo
Won, Youjip
Lee, Sunggu
description Phase-change memory (PCM) has several benefits including low cost, non-volatility, byte-addressability, etc., and limitations such as write endurance. There have been several hardware approaches to exploit the benefits while minimizing the negative impact of limitations. Software approaches could give further improvements, when used together with hardware approaches, by taking advantage of write behavior present in the program, e.g., write behavior on dynamically allocated data, which is hardly captured by hardware approaches. This work proposes a software design methodology to reduce costly PCM writes. First, on top of existing hardware approach such as Flip-N-Write, we advocate exploiting the capability of PCM bit-level differential write in the software by judiciously reusing previously allocated memory resource. In order to avoid wear-out incurred by the reuse, we present software-based wear-leveling methods that distribute writes across PCM cells. In order to further reduce PCM writes, we propose identifying data, the loss of which does not affect the functionality of the underlying software, and then diverting write traffic for those data items to volatile memory. To evaluate the effectiveness of these methods, as a case study, we applied the proposed methods to the design of journaling in SQLite, which is an important database application commonly used in smartphones. For the experiments, we used an in-house PCM-based prototype board. Our experiments with four representative mobile applications show that the proposed design methods, which is applied on top of the hardware approach, Flip-N-Write, result in 75.2% further reduction in total bit updates in PCM, on average, without aggravating wear-out compared with the baseline of PCM-based journaling, which is based only on the hardware approach. Also, the proposed design methods result in 49.4% reduction in energy consumption and 52.3% reduction in runtime compared to a typical FIFO management of free resources.
doi_str_mv 10.1145/2842613
format Article
fullrecord <record><control><sourceid>proquest_cross</sourceid><recordid>TN_cdi_proquest_miscellaneous_1855385694</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>1855385694</sourcerecordid><originalsourceid>FETCH-LOGICAL-c220t-d45763fd0879126a97d39c7906572174b790517129dc85759462d2cf95d215503</originalsourceid><addsrcrecordid>eNotkE1LAzEQhoMoWKv4F_aml9V8TbI5ytaqUFFQ8RhiNmkj201Ntkj_vZH2NM_h4Z2ZF6FLgm8I4XBLG04FYUdoQgBkLRlWx4Vxw2te-BSd5fyNMQYpYILaWfDeJTeMwfTVZwqjq9s4ZBviNldv0Y-_Jrlq5nJYDlUcqteVyUVZmWHpqme3jml3jk686bO7OMwp-pjfv7eP9eLl4am9W9SWUjzWHS8rme9wIxWhwijZMWWlwgIkJZJ_FQQiCVWdbUCC4oJ21HoFHS2vYDZF1_vcTYo_W5dHvQ7Zur43gyvXatIAsAaE4kW92qs2xZyT83qTwtqknSZY_9ekDzWxP_aGVqQ</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>1855385694</pqid></control><display><type>article</type><title>Differential Write-Conscious Software Design on Phase-Change Memory: An SQLite Case Study</title><source>ACM Digital Library Complete</source><creator>Lee, Sungkwang ; Lee, Taemin ; Park, Hyunsun ; Ahn, Junwhan ; Yoo, Sungjoo ; Won, Youjip ; Lee, Sunggu</creator><creatorcontrib>Lee, Sungkwang ; Lee, Taemin ; Park, Hyunsun ; Ahn, Junwhan ; Yoo, Sungjoo ; Won, Youjip ; Lee, Sunggu</creatorcontrib><description>Phase-change memory (PCM) has several benefits including low cost, non-volatility, byte-addressability, etc., and limitations such as write endurance. There have been several hardware approaches to exploit the benefits while minimizing the negative impact of limitations. Software approaches could give further improvements, when used together with hardware approaches, by taking advantage of write behavior present in the program, e.g., write behavior on dynamically allocated data, which is hardly captured by hardware approaches. This work proposes a software design methodology to reduce costly PCM writes. First, on top of existing hardware approach such as Flip-N-Write, we advocate exploiting the capability of PCM bit-level differential write in the software by judiciously reusing previously allocated memory resource. In order to avoid wear-out incurred by the reuse, we present software-based wear-leveling methods that distribute writes across PCM cells. In order to further reduce PCM writes, we propose identifying data, the loss of which does not affect the functionality of the underlying software, and then diverting write traffic for those data items to volatile memory. To evaluate the effectiveness of these methods, as a case study, we applied the proposed methods to the design of journaling in SQLite, which is an important database application commonly used in smartphones. For the experiments, we used an in-house PCM-based prototype board. Our experiments with four representative mobile applications show that the proposed design methods, which is applied on top of the hardware approach, Flip-N-Write, result in 75.2% further reduction in total bit updates in PCM, on average, without aggravating wear-out compared with the baseline of PCM-based journaling, which is based only on the hardware approach. Also, the proposed design methods result in 49.4% reduction in energy consumption and 52.3% reduction in runtime compared to a typical FIFO management of free resources.</description><identifier>ISSN: 1084-4309</identifier><identifier>EISSN: 1557-7309</identifier><identifier>DOI: 10.1145/2842613</identifier><language>eng</language><subject>Computer programs ; Design engineering ; Hardware ; Reduction ; Reuse ; Run time (computers) ; Software</subject><ispartof>ACM transactions on design automation of electronic systems, 2016-07, Vol.21 (3), p.1-25</ispartof><lds50>peer_reviewed</lds50><woscitedreferencessubscribed>false</woscitedreferencessubscribed><cites>FETCH-LOGICAL-c220t-d45763fd0879126a97d39c7906572174b790517129dc85759462d2cf95d215503</cites></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>314,776,780,27901,27902</link.rule.ids></links><search><creatorcontrib>Lee, Sungkwang</creatorcontrib><creatorcontrib>Lee, Taemin</creatorcontrib><creatorcontrib>Park, Hyunsun</creatorcontrib><creatorcontrib>Ahn, Junwhan</creatorcontrib><creatorcontrib>Yoo, Sungjoo</creatorcontrib><creatorcontrib>Won, Youjip</creatorcontrib><creatorcontrib>Lee, Sunggu</creatorcontrib><title>Differential Write-Conscious Software Design on Phase-Change Memory: An SQLite Case Study</title><title>ACM transactions on design automation of electronic systems</title><description>Phase-change memory (PCM) has several benefits including low cost, non-volatility, byte-addressability, etc., and limitations such as write endurance. There have been several hardware approaches to exploit the benefits while minimizing the negative impact of limitations. Software approaches could give further improvements, when used together with hardware approaches, by taking advantage of write behavior present in the program, e.g., write behavior on dynamically allocated data, which is hardly captured by hardware approaches. This work proposes a software design methodology to reduce costly PCM writes. First, on top of existing hardware approach such as Flip-N-Write, we advocate exploiting the capability of PCM bit-level differential write in the software by judiciously reusing previously allocated memory resource. In order to avoid wear-out incurred by the reuse, we present software-based wear-leveling methods that distribute writes across PCM cells. In order to further reduce PCM writes, we propose identifying data, the loss of which does not affect the functionality of the underlying software, and then diverting write traffic for those data items to volatile memory. To evaluate the effectiveness of these methods, as a case study, we applied the proposed methods to the design of journaling in SQLite, which is an important database application commonly used in smartphones. For the experiments, we used an in-house PCM-based prototype board. Our experiments with four representative mobile applications show that the proposed design methods, which is applied on top of the hardware approach, Flip-N-Write, result in 75.2% further reduction in total bit updates in PCM, on average, without aggravating wear-out compared with the baseline of PCM-based journaling, which is based only on the hardware approach. Also, the proposed design methods result in 49.4% reduction in energy consumption and 52.3% reduction in runtime compared to a typical FIFO management of free resources.</description><subject>Computer programs</subject><subject>Design engineering</subject><subject>Hardware</subject><subject>Reduction</subject><subject>Reuse</subject><subject>Run time (computers)</subject><subject>Software</subject><issn>1084-4309</issn><issn>1557-7309</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2016</creationdate><recordtype>article</recordtype><recordid>eNotkE1LAzEQhoMoWKv4F_aml9V8TbI5ytaqUFFQ8RhiNmkj201Ntkj_vZH2NM_h4Z2ZF6FLgm8I4XBLG04FYUdoQgBkLRlWx4Vxw2te-BSd5fyNMQYpYILaWfDeJTeMwfTVZwqjq9s4ZBviNldv0Y-_Jrlq5nJYDlUcqteVyUVZmWHpqme3jml3jk686bO7OMwp-pjfv7eP9eLl4am9W9SWUjzWHS8rme9wIxWhwijZMWWlwgIkJZJ_FQQiCVWdbUCC4oJ21HoFHS2vYDZF1_vcTYo_W5dHvQ7Zur43gyvXatIAsAaE4kW92qs2xZyT83qTwtqknSZY_9ekDzWxP_aGVqQ</recordid><startdate>20160701</startdate><enddate>20160701</enddate><creator>Lee, Sungkwang</creator><creator>Lee, Taemin</creator><creator>Park, Hyunsun</creator><creator>Ahn, Junwhan</creator><creator>Yoo, Sungjoo</creator><creator>Won, Youjip</creator><creator>Lee, Sunggu</creator><scope>AAYXX</scope><scope>CITATION</scope><scope>7SC</scope><scope>7SP</scope><scope>8FD</scope><scope>JQ2</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope></search><sort><creationdate>20160701</creationdate><title>Differential Write-Conscious Software Design on Phase-Change Memory</title><author>Lee, Sungkwang ; Lee, Taemin ; Park, Hyunsun ; Ahn, Junwhan ; Yoo, Sungjoo ; Won, Youjip ; Lee, Sunggu</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c220t-d45763fd0879126a97d39c7906572174b790517129dc85759462d2cf95d215503</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2016</creationdate><topic>Computer programs</topic><topic>Design engineering</topic><topic>Hardware</topic><topic>Reduction</topic><topic>Reuse</topic><topic>Run time (computers)</topic><topic>Software</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Lee, Sungkwang</creatorcontrib><creatorcontrib>Lee, Taemin</creatorcontrib><creatorcontrib>Park, Hyunsun</creatorcontrib><creatorcontrib>Ahn, Junwhan</creatorcontrib><creatorcontrib>Yoo, Sungjoo</creatorcontrib><creatorcontrib>Won, Youjip</creatorcontrib><creatorcontrib>Lee, Sunggu</creatorcontrib><collection>CrossRef</collection><collection>Computer and Information Systems Abstracts</collection><collection>Electronics &amp; Communications Abstracts</collection><collection>Technology Research Database</collection><collection>ProQuest Computer Science Collection</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>Computer and Information Systems Abstracts – Academic</collection><collection>Computer and Information Systems Abstracts Professional</collection><jtitle>ACM transactions on design automation of electronic systems</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Lee, Sungkwang</au><au>Lee, Taemin</au><au>Park, Hyunsun</au><au>Ahn, Junwhan</au><au>Yoo, Sungjoo</au><au>Won, Youjip</au><au>Lee, Sunggu</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Differential Write-Conscious Software Design on Phase-Change Memory: An SQLite Case Study</atitle><jtitle>ACM transactions on design automation of electronic systems</jtitle><date>2016-07-01</date><risdate>2016</risdate><volume>21</volume><issue>3</issue><spage>1</spage><epage>25</epage><pages>1-25</pages><issn>1084-4309</issn><eissn>1557-7309</eissn><abstract>Phase-change memory (PCM) has several benefits including low cost, non-volatility, byte-addressability, etc., and limitations such as write endurance. There have been several hardware approaches to exploit the benefits while minimizing the negative impact of limitations. Software approaches could give further improvements, when used together with hardware approaches, by taking advantage of write behavior present in the program, e.g., write behavior on dynamically allocated data, which is hardly captured by hardware approaches. This work proposes a software design methodology to reduce costly PCM writes. First, on top of existing hardware approach such as Flip-N-Write, we advocate exploiting the capability of PCM bit-level differential write in the software by judiciously reusing previously allocated memory resource. In order to avoid wear-out incurred by the reuse, we present software-based wear-leveling methods that distribute writes across PCM cells. In order to further reduce PCM writes, we propose identifying data, the loss of which does not affect the functionality of the underlying software, and then diverting write traffic for those data items to volatile memory. To evaluate the effectiveness of these methods, as a case study, we applied the proposed methods to the design of journaling in SQLite, which is an important database application commonly used in smartphones. For the experiments, we used an in-house PCM-based prototype board. Our experiments with four representative mobile applications show that the proposed design methods, which is applied on top of the hardware approach, Flip-N-Write, result in 75.2% further reduction in total bit updates in PCM, on average, without aggravating wear-out compared with the baseline of PCM-based journaling, which is based only on the hardware approach. Also, the proposed design methods result in 49.4% reduction in energy consumption and 52.3% reduction in runtime compared to a typical FIFO management of free resources.</abstract><doi>10.1145/2842613</doi><tpages>25</tpages></addata></record>
fulltext fulltext
identifier ISSN: 1084-4309
ispartof ACM transactions on design automation of electronic systems, 2016-07, Vol.21 (3), p.1-25
issn 1084-4309
1557-7309
language eng
recordid cdi_proquest_miscellaneous_1855385694
source ACM Digital Library Complete
subjects Computer programs
Design engineering
Hardware
Reduction
Reuse
Run time (computers)
Software
title Differential Write-Conscious Software Design on Phase-Change Memory: An SQLite Case Study
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-28T13%3A58%3A11IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_cross&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Differential%20Write-Conscious%20Software%20Design%20on%20Phase-Change%20Memory:%20An%20SQLite%20Case%20Study&rft.jtitle=ACM%20transactions%20on%20design%20automation%20of%20electronic%20systems&rft.au=Lee,%20Sungkwang&rft.date=2016-07-01&rft.volume=21&rft.issue=3&rft.spage=1&rft.epage=25&rft.pages=1-25&rft.issn=1084-4309&rft.eissn=1557-7309&rft_id=info:doi/10.1145/2842613&rft_dat=%3Cproquest_cross%3E1855385694%3C/proquest_cross%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=1855385694&rft_id=info:pmid/&rfr_iscdi=true