Duplicated Strings: How are they Created and Cured?

この論文をさがす

抄録

String data is often the most used data in recent Java applications, and it occupies the largest part of the Java heap. The practical problem is many wasteful duplicates in the values of the string objects. Such duplication consumes heap memory. To address this problem, we devised Profile-Based String Deduplication to minimize the duplication of string values. Our StringProfiler tool collects the calling contexts for the allocations of string objects during a trial program run. It determines which calling contexts created duplicate string values, and then it suggests which calling contexts can be optimized. Deduplication to reduce the duplications is done with a set of native methods that can return unified string objects without creating string objects. Finally, this presentation evaluates our approach by using actual Java applications. Our prototype implementation achieved a 9% reduction in the total size of the objects allocated in some standard Java benchmarks.

String data is often the most used data in recent Java applications, and it occupies the largest part of the Java heap. The practical problem is many wasteful duplicates in the values of the string objects. Such duplication consumes heap memory. To address this problem, we devised Profile-Based String Deduplication to minimize the duplication of string values. Our StringProfiler tool collects the calling contexts for the allocations of string objects during a trial program run. It determines which calling contexts created duplicate string values, and then it suggests which calling contexts can be optimized. Deduplication to reduce the duplications is done with a set of native methods that can return unified string objects without creating string objects. Finally, this presentation evaluates our approach by using actual Java applications. Our prototype implementation achieved a 9% reduction in the total size of the objects allocated in some standard Java benchmarks.

収録刊行物

キーワード

詳細情報 詳細情報について

  • CRID
    1050564287857779968
  • NII論文ID
    110009656447
  • NII書誌ID
    AA11464814
  • ISSN
    18827802
  • Web Site
    http://id.nii.ac.jp/1001/00096921/
  • 本文言語コード
    en
  • 資料種別
    article
  • データソース種別
    • IRDB
    • CiNii Articles

問題の指摘

ページトップへ