語系:
繁體中文
English
說明(常見問題)
回圖書館首頁
手機版館藏查詢
登入
回首頁
切換:
標籤
|
MARC模式
|
ISBD
FindBook
Google Book
Amazon
博客來
Reducing Garbage Collection Costs Using Application-Specific Information.
紀錄類型:
書目-電子資源 : Monograph/item
正題名/作者:
Reducing Garbage Collection Costs Using Application-Specific Information./
作者:
Nunez, Diogenes Antonio.
出版者:
Ann Arbor : ProQuest Dissertations & Theses, : 2020,
面頁冊數:
115 p.
附註:
Source: Dissertations Abstracts International, Volume: 82-05, Section: B.
Contained By:
Dissertations Abstracts International82-05B.
標題:
Computer science. -
電子資源:
http://pqdd.sinica.edu.tw/twdaoapp/servlet/advanced?query=28089213
ISBN:
9798684655272
Reducing Garbage Collection Costs Using Application-Specific Information.
Nunez, Diogenes Antonio.
Reducing Garbage Collection Costs Using Application-Specific Information.
- Ann Arbor : ProQuest Dissertations & Theses, 2020 - 115 p.
Source: Dissertations Abstracts International, Volume: 82-05, Section: B.
Thesis (Ph.D.)--Tufts University, 2020.
This item must not be sold to any third party vendors.
Applications running on multiple environments are all supported by garbage collectors. Modern garbage collectors rely on two assumptions to perform well: the collector will reclaim enough memory to avoid frequent failed allocations and most memory allocated for the application soon becomes garbage. These assumptions are broken by modern applications. For instance, applications that rely on an application-level key-value store, or software cache, reduce run time by increasing memory use. However, that breaks the first assumption. When they are broken, garbage collector performance degrades. To reduce this performance loss, garbage collectors should be supplied application-specific information.In this thesis, we support this hypothesis with three projects. First, we hypothesized Haskell programs violate the first assumption. The violation is thanks to the implementation of lazy evaluation which evaluates expressions only as needed. This can be circumvented with annotations, but the annotations can prove difficult to place correctly. We present Autobahn as a solution. Autobahn is a tool that uses a genetic algorithm to add strictness annotations to Haskell programs and improve their runtime.Next, we hypothesized software caches violate both assumptions. The violation comes from conflicting goals. The goal of the cache is to maximize the amount of space used to improve runtime. The goal of the garbage collector is to minimize the amount of space used to allow future allocations to succeed and keep time spent collection low. We present prioritized garbage collection as a solution. The prioritized garbage collector lets a programmer supply the garbage collector with data about objects to relieve memory-pressure and improve the robustness of software caching applications.Finally, we hypothesized applications with long-lived data structures violate the second assumption. These data structures are visited every collection, resulting in repeated work and lost time. We present a design for a deferred garbage collector. The deferred garbage collector lets a programmer supply information about long-lived data structures to reduce garbage collection time.
ISBN: 9798684655272Subjects--Topical Terms:
523869
Computer science.
Subjects--Index Terms:
Garbage collection
Reducing Garbage Collection Costs Using Application-Specific Information.
LDR
:03386nmm a2200397 4500
001
2346344
005
20230315102144.5
006
m o d
007
cr#unu||||||||
008
241004s2020 ||||||||||||||||| ||eng d
020
$a
9798684655272
035
$a
(MiAaPQ)AAI28089213
035
$a
AAI28089213
040
$a
MiAaPQ
$c
MiAaPQ
100
1
$a
Nunez, Diogenes Antonio.
$3
3685424
245
1 0
$a
Reducing Garbage Collection Costs Using Application-Specific Information.
260
1
$a
Ann Arbor :
$b
ProQuest Dissertations & Theses,
$c
2020
300
$a
115 p.
500
$a
Source: Dissertations Abstracts International, Volume: 82-05, Section: B.
500
$a
Advisor: Guyer, Samuel Z.
502
$a
Thesis (Ph.D.)--Tufts University, 2020.
506
$a
This item must not be sold to any third party vendors.
520
$a
Applications running on multiple environments are all supported by garbage collectors. Modern garbage collectors rely on two assumptions to perform well: the collector will reclaim enough memory to avoid frequent failed allocations and most memory allocated for the application soon becomes garbage. These assumptions are broken by modern applications. For instance, applications that rely on an application-level key-value store, or software cache, reduce run time by increasing memory use. However, that breaks the first assumption. When they are broken, garbage collector performance degrades. To reduce this performance loss, garbage collectors should be supplied application-specific information.In this thesis, we support this hypothesis with three projects. First, we hypothesized Haskell programs violate the first assumption. The violation is thanks to the implementation of lazy evaluation which evaluates expressions only as needed. This can be circumvented with annotations, but the annotations can prove difficult to place correctly. We present Autobahn as a solution. Autobahn is a tool that uses a genetic algorithm to add strictness annotations to Haskell programs and improve their runtime.Next, we hypothesized software caches violate both assumptions. The violation comes from conflicting goals. The goal of the cache is to maximize the amount of space used to improve runtime. The goal of the garbage collector is to minimize the amount of space used to allow future allocations to succeed and keep time spent collection low. We present prioritized garbage collection as a solution. The prioritized garbage collector lets a programmer supply the garbage collector with data about objects to relieve memory-pressure and improve the robustness of software caching applications.Finally, we hypothesized applications with long-lived data structures violate the second assumption. These data structures are visited every collection, resulting in repeated work and lost time. We present a design for a deferred garbage collector. The deferred garbage collector lets a programmer supply information about long-lived data structures to reduce garbage collection time.
590
$a
School code: 0234.
650
4
$a
Computer science.
$3
523869
650
4
$a
Environmental health.
$3
543032
650
4
$a
Systems science.
$3
3168411
650
4
$a
Information science.
$3
554358
653
$a
Garbage collection
653
$a
Lazy evaluation
653
$a
Memory management
653
$a
Programming languages
690
$a
0984
690
$a
0723
690
$a
0470
690
$a
0790
710
2
$a
Tufts University.
$b
Computer Science.
$3
1026183
773
0
$t
Dissertations Abstracts International
$g
82-05B.
790
$a
0234
791
$a
Ph.D.
792
$a
2020
793
$a
English
856
4 0
$u
http://pqdd.sinica.edu.tw/twdaoapp/servlet/advanced?query=28089213
筆 0 讀者評論
館藏地:
全部
電子資源
出版年:
卷號:
館藏
1 筆 • 頁數 1 •
1
條碼號
典藏地名稱
館藏流通類別
資料類型
索書號
使用類型
借閱狀態
預約狀態
備註欄
附件
W9468782
電子資源
11.線上閱覽_V
電子書
EB
一般使用(Normal)
在架
0
1 筆 • 頁數 1 •
1
多媒體
評論
新增評論
分享你的心得
Export
取書館
處理中
...
變更密碼
登入