Hoard

Author:

Berger Emery D.1,McKinley Kathryn S.2,Blumofe Robert D.1,Wilson Paul R.1

Affiliation:

1. Department of Computer Sciences, The University of Texas at Austin, Austin, Texas

2. Department of Computer Science, University of Massachusetts, Amherst, Massachusetts

Abstract

Parallel, multithreaded C and C++ programs such as web servers, database managers, news servers, and scientific applications are becoming increasingly prevalent. For these applications, the memory allocator is often a bottleneck that severely limits program performance and scalability on multiprocessor systems. Previous allocators suffer from problems that include poor performance and scalability, and heap organizations that introduce false sharing. Worse, many allocators exhibit a dramatic increase in memory consumption when confronted with a producer-consumer pattern of object allocation and freeing. This increase in memory consumption can range from a factor of P (the number of processors) to unbounded memory consumption.This paper introduces Hoard, a fast, highly scalable allocator that largely avoids false sharing and is memory efficient. Hoard is the first allocator to simultaneously solve the above problems. Hoard combines one global heap and per-processor heaps with a novel discipline that provably bounds memory consumption and has very low synchronization costs in the common case. Our results on eleven programs demonstrate that Hoard yields low average fragmentation and improves overall program performance over the standard Solaris allocator by up to a factor of 60 on 14 processors, and up to a factor of 18 over the next best allocator we tested.

Publisher

Association for Computing Machinery (ACM)

Reference28 articles.

1. U. Acar E. Berger R. Blumofe and D. Papadopoulos. Hood: A threads library for multiprogrammed multiprocessors. http://www.cs.utexas.edu/users/hood Sept. 1999. U. Acar E. Berger R. Blumofe and D. Papadopoulos. Hood: A threads library for multiprogrammed multiprocessors. http://www.cs.utexas.edu/users/hood Sept. 1999.

2. A hierarchical O(N log N) force-calculation algorithm

3. bCandid.com Inc. http://www.bcandid.com. bCandid.com Inc. http://www.bcandid.com.

4. Scheduling multithreaded computations by work stealing

Cited by 14 articles. 订阅此论文施引文献 订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献

1. VCMalloc: A Virtually Contiguous Memory Allocator;IEEE Transactions on Computers;2023-12

2. Application of Thread-Local Garbage Collection to Distributed Systems for Large-Scale Data Processing;The Herald of the Siberian State University of Telecommunications and Informatics;2022-05-13

3. The Demikernel Datapath OS Architecture for Microsecond-scale Datacenter Systems;Proceedings of the ACM SIGOPS 28th Symposium on Operating Systems Principles CD-ROM;2021-10-26

4. Judging a type by its pointer: optimizing GPU virtual functions;Proceedings of the 26th ACM International Conference on Architectural Support for Programming Languages and Operating Systems;2021-04-17

5. Data Races and the Discrete Resource-time Tradeoff Problem with Resource Reuse over Paths;The 31st ACM Symposium on Parallelism in Algorithms and Architectures;2019-06-17

同舟云学术

1.学者识别学者识别

2.学术分析学术分析

3.人才评估人才评估

"同舟云学术"是以全球学者为主线,采集、加工和组织学术论文而形成的新型学术文献查询和分析系统,可以对全球学者进行文献检索和人才价值评估。用户可以通过关注某些学科领域的顶尖人物而持续追踪该领域的学科进展和研究前沿。经过近期的数据扩容,当前同舟云学术共收录了国内外主流学术期刊6万余种,收集的期刊论文及会议论文总量共计约1.5亿篇,并以每天添加12000余篇中外论文的速度递增。我们也可以为用户提供个性化、定制化的学者数据。欢迎来电咨询!咨询电话:010-8811{复制后删除}0370

www.globalauthorid.com

TOP

Copyright © 2019-2024 北京同舟云网络信息技术有限公司
京公网安备11010802033243号  京ICP备18003416号-3