首页> 外文学位 >Memory Management for Multi-Language Multi-Runtime Systems on Multi-Core Architectures.
【24h】

Memory Management for Multi-Language Multi-Runtime Systems on Multi-Core Architectures.

机译:多核体系结构上的多语言多运行时系统的内存管理。

获取原文
获取原文并翻译 | 示例

摘要

To manage the increasing complexity of software, developers employ a number of different strategies. These include using high-level, type-safe, object-oriented programming languages, executing applications within managed runtime environments (MREs), modularizing software into independent isolated components, and maximizing programmer productivity by implementing each component in the most-suitable language. Moreover, administrators and tools increasingly co-locate components on the same physical machine to better utilize multi-core systems via thread-level parallelism and to enable efficient cross-component communication. As a result, multi-language, multi-runtime systems that employ component co-location on multi-core shared-memory architectures are more and more common.;In such systems, memory management takes place within runtimes (intra-runtime) and between runtimes (cross-runtime). Intra-runtime memory management includes allocation and automatic reclamation of objects within an MRE. Cross-runtime memory management refers to communication, coordination, and object sharing across MREs. Both intra-runtime and cross-runtime memory management rely on the mechanisms and abstractions of the underlying operating system (OS) for efficient implementation.;The focus of our research is to identify ways to more effectively exploit extant OS functionality to improve intra-runtime and cross-runtime memory management in terms of performance as well as programming model. Specifically, we design, implement, and evaluate MRE extensions that leverage virtual memory, shared memory, and shared libraries to better coordinate memory management across the system layers.;For intra-runtime memory management, we develop new techniques to improve throughput, reduce pauses, increase yield, and enhance modularity of parallel and concurrent collectors. For cross-runtime memory management, we investigate type-safe, transparent object sharing between isolated MREs to enable cross-language communication and synchronization without expensive object serialization and explicit message passing.;Our empirical results indicate that our contributions significantly improve both intra-runtime and cross-runtime memory management by better leveraging OS support. We obtain large performance gains for parallel and concurrent collectors as well as inter-runtime communication over the state-of-the-art memory management systems. In addition, our techniques enhance the programming model for both application developers and runtime architects.
机译:为了管理不断增加的软件复杂性,开发人员采用了许多不同的策略。其中包括使用高级的,类型安全的,面向对象的编程语言,在托管运行时环境(MRE)中执行应用程序,将软件模块化为独立的独立组件,以及通过以最适合的语言实现每个组件来最大化程序员的生产力。此外,管理员和工具越来越多地将组件放置在同一台物理计算机上,以通过线程级并行性更好地利用多核系统并实现有效的跨组件通信。结果,在多核共享内存体系结构上采用组件共置的多语言,多运行时系统变得越来越普遍。在这种系统中,内存管理发生在运行时(运行时)内以及运行时之间。运行时(跨运行时)。运行时内存管理包括MRE中对象的分配和自动回收。跨运行时内存管理是指跨MRE的通信,协调和对象共享。运行时和跨运行时内存管理均依赖于底层操作系统(OS)的机制和抽象来有效实施。;我们研究的重点是确定方法,以更有效地利用现有OS功能来改善运行时内部以及性能和编程模型方面的跨运行时内存管理。具体来说,我们设计,实现和评估MRE扩展,这些扩展利用虚拟内存,共享内存和共享库来更好地协调整个系统层的内存管理。;对于运行时内存管理,我们开发了新技术来提高吞吐量,减少暂停,提高产量并增强并行和并行收集器的模块化。对于跨运行时内存管理,我们研究了隔离的MRE之间类型安全,透明的对象共享,以实现跨语言的通信和同步,而无需昂贵的对象序列化和显式消息传递。;我们的实验结果表明,我们的贡献显着改善了运行时内部和更好地利用操作系统支持来进行跨运行时内存管理。通过并行的并发收集器,以及通过最新的内存管理系统进行的运行时间通信,我们均获得了巨大的性能提升。此外,我们的技术还为应用程序开发人员和运行时架构师增强了编程模型。

著录项

  • 作者

    Wegiel, Michal.;

  • 作者单位

    University of California, Santa Barbara.;

  • 授予单位 University of California, Santa Barbara.;
  • 学科 Computer Science.
  • 学位 Ph.D.
  • 年度 2011
  • 页码 361 p.
  • 总页数 361
  • 原文格式 PDF
  • 正文语种 eng
  • 中图分类
  • 关键词

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号