课题基金 / 基金详情

Improving Data Organization in Managed Runtimes for Improved Performance

Improving Data Organization in Managed Runtimes for Improved Performance
改进托管运行时中的数据组织以提高性能
批准号:
RGPIN-2019-04415
负责人:
Kent, Kenneth
金额:
$2.48万
依托单位:
依托单位国家:
加拿大
项目类别:
Discovery Grants Program - Individual
财政年份:
2022
资助国家:
加拿大
项目状态:
已结题
起止时间:
2022-01-01 至 2023-12-31

项目摘要

项目成果

Kent, Kenneth的其他基金

相似基金

相关文献

中文摘要
翻译
今天,许多软件应用程序都是用解释语言指定的。通过使用托管运行时技术,解释允许应用程序更容易地在各种平台上执行和迁移。这种对物理主机的抽象导致了资源获取和管理的自动化,例如处理器扩展和内存管理(垃圾收集)。随着堆大小的增加,托管运行时中的垃圾收集(GC)所产生的成本也会增加。虽然主机中动态内存的扩展仍在继续,但应用程序对更多内存的需求也在继续,以满足不断增加的待处理数据。这个发现授权应用程序关注于在托管运行时中组织存储在动态内存中的数据,以实现两个目标。首先,将数据对象/结构隔离到反映其访问频率的不同类中,以允许更好地映射到托管运行时内的不同内存级别。第二,在动态内存中组织数据,以减少垃圾收集的暂停时间。Java程序员期望Java虚拟机(JVM)以透明的方式处理资源管理的所有方面,包括对象堆;语言的定义,它有一个创建结构,但没有相应的对象删除,是这一点的象征。然而,这种无限自由空间的幻想在大的GC暂停时被破坏了。因此,需要探索不同的GC方法,以实现低的、一致的暂停时间,同时保持应用程序平稳运行和高性能。为了实现这一点,我建议探索新的逃逸分析技术,并调查一个隔离堆系统的本地v全局分配对象。缓存和转换后备缓冲区(TLB)未命中在大多数大型Java应用程序中会导致严重的性能问题。缓解这些问题的一种方法是改进对象局部性。在使用openJ 9 JVM的Java应用程序中,通过分代收集器中的Hierarchical CNOGC,改进对象局部性已被证明可以减少缓存和TLB未命中。当对象引用从父对象到子对象时,子对象的内存将需要加载到高速缓存内存中。如果这些对象位于相同的高速缓存行或相同的内存页上,我们可能会节省该高速缓存和TLB未命中。有几个有趣的研究领域可以提高对象的局部性。
英文摘要
Many software applications today are specified in interpreted languages. Interpretation allows applications to more easily execute and migrate on various platforms through the use of managed runtime technologies. This abstraction from the physical host as led to automation of resource acquisition and management such as processor scaling and memory management (garbage collection). As heap sizes increase, so does the cost incurred by garbage collection (GC) in managed runtimes. While scaling of dynamic memory in the host continues, so too does the demand by applications for more memory to satisfy the ever-increasing data to be processed. This discovery grant application is focused on the organization of data stored in dynamic memory within managed runtimes to achieve two goals. First, to segregate data objects/structures into different classes reflecting their access frequency to permit better mapping to different memory levels within the managed runtime. Second, to organize data within the dynamic memory so as to reduce pause times for garbage collection. Java programmers expect the Java Virtual Machine (JVM) to deal with all aspects of resource management, including the object heap, in a transparent way; the definition of the language, which has a create construct but no corresponding delete for objects, is emblematic of this. However, this illusion of infinite free space is destroyed on large GC pauses. Because of this, different approaches to GC need to be explored in order to achieve low, consistent pause times while keeping applications running smoothly and with high performance. To achieve this, I propose to explore new escape analysis techniques, and to investigate a segregated heap system for locally v. globally allocated objects. Cache and Translation Lookaside Buffer (TLB) misses cause large performance issues in most large Java applications. One way to mitigate these issues is by improving object locality. Improving object locality has proven to reduce cache and TLB misses in Java applications using the openJ9 JVM via Hierarchical Copying GC in the generational collector. When an object reference is followed from a parent object to a child the memory for the child object will need to be loaded into cache memory. If these objects were located within the same cache line or on the same memory page we could possibly save the cache and TLB misses. There several interesting areas of research that could improve object locality.
期刊论文(0)
专著(0)
科研奖励(0)
会议论文
Load Stall Minimization
  • 批准号:
    536287-2018
  • 项目类别:
    Collaborative Research and Development Grants
  • 资助金额:
    $3.08万
  • 财政年份:
    2021
  • 负责人:
    Kent, Kenneth
  • 依托单位:
Improving Data Organization in Managed Runtimes for Improved Performance
  • 批准号:
    RGPIN-2019-04415
  • 项目类别:
    Discovery Grants Program - Individual
  • 资助金额:
    $2.48万
  • 财政年份:
    2021
  • 负责人:
    Kent, Kenneth
  • 依托单位:
Load Stall Minimization
  • 批准号:
    536287-2018
  • 项目类别:
    Collaborative Research and Development Grants
  • 资助金额:
    $4.33万
  • 财政年份:
    2020
  • 负责人:
    Kent, Kenneth
  • 依托单位:
Optimizating and integrating node.js on distributed and multicore clouds
  • 批准号:
    501197-2016
  • 项目类别:
    Collaborative Research and Development Grants
  • 资助金额:
    $4.95万
  • 财政年份:
    2019
  • 负责人:
    Kent, Kenneth
  • 依托单位:
国内基金
海外基金
Scalable Learning and Optimization: High-dimensional Models and Online Decision-Making Strategies for Big Data Analysis
Data-driven Recommendation System Construction of an Online Medical Platform Based on the Fusion of Information
Development of a Linear Stochastic Model for Wind Field Reconstruction from Limited Measurement Data
  • 批准号:
    --
  • 项目类别:
    --
  • 资助金额:
    40万元
  • 批准年份:
    2020
  • 负责人:
    Vikrant Gupta
  • 依托单位:
基于Linked Open Data的Web服务语义互操作关键技术
  • 批准号:
    61373035
  • 项目类别:
    面上项目
  • 资助金额:
    77.0万元
  • 批准年份:
    2013
  • 负责人:
    冯志勇
  • 依托单位: