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
财政年份:
2021
资助国家:
加拿大
项目状态:
已结题
起止时间:
2021-01-01 至 2022-12-31
中文摘要
当今的许多软件应用程序都是用解释语言指定的。解释允许应用程序通过使用托管运行时技术在各种平台上更轻松地执行和迁移。这种对物理主机的抽象导致了资源获取和管理的自动化,例如处理器扩展和内存管理(垃圾收集)。随着堆大小的增加,托管运行时中的垃圾收集(GC)所产生的成本也会增加。虽然主机中动态内存的扩展在继续,但应用程序对更多内存的需求也在继续,以满足不断增长的要处理的数据。此发现授权应用程序专注于在托管运行时内组织存储在动态内存中的数据,以实现两个目标。首先,将数据对象/结构分离到反映其访问频率的不同类中,以允许更好地映射到托管运行时内的不同内存级。第二,在动态存储器内组织数据,以减少垃圾收集的暂停时间。Java程序员希望Java虚拟机(JVM)以透明的方式处理资源管理的所有方面,包括对象堆;语言的定义就是这一点的象征,它有一个CREATE构造,但没有相应的对象删除。然而,这种无限自由空间的错觉在较大的GC暂停时被摧毁。因此,需要探索不同的GC方法,以便在保持应用程序平稳运行和高性能的同时实现较低、一致的暂停时间。为了实现这一点,我建议探索新的转义分析技术,并研究用于本地v全局分配对象的隔离堆系统。在大多数大型Java应用程序中,缓存和转换后备缓冲区(TLB)未命中会导致严重的性能问题。缓解这些问题的一种方法是改善对象局部性。通过在世代收集器中分层复制GC,改进对象局部性已被证明可以减少使用OpenJ9 JVM的Java应用程序中的缓存和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)
会议论文
Improving Data Organization in Managed Runtimes for Improved Performance
-
批准号:RGPIN-2019-04415
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$2.48万
-
财政年份:2022
-
负责人:Kent, Kenneth
-
依托单位:
Load Stall Minimization
-
批准号:536287-2018
-
项目类别:Collaborative Research and Development Grants
-
资助金额:$3.08万
-
财政年份: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
-
依托单位:
Load Stall Minimization
-
批准号:536287-2018
-
项目类别:Collaborative Research and Development Grants
-
资助金额:$3.08万
-
财政年份:2019
-
负责人:Kent, Kenneth
-
依托单位:
Improving Data Organization in Managed Runtimes for Improved Performance
-
批准号:RGPIN-2019-04415
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$2.48万
-
财政年份:2019
-
负责人:Kent, Kenneth
-
依托单位:
Computer Aided Design Tools for FPGA Exploration
-
批准号:262177-2012
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.31万
-
财政年份:2018
-
负责人:Kent, Kenneth
-
依托单位:
Optimizating and integrating node.js on distributed and multicore clouds
-
批准号:501197-2016
-
项目类别:Collaborative Research and Development Grants
-
资助金额:$4.95万
-
财政年份:2018
-
负责人:Kent, Kenneth
-
依托单位:
Performance Optimization and Scaling for Simulations of Urban Planning**
-
批准号:534091-2018
-
项目类别:Engage Grants Program
-
资助金额:$1.82万
-
财政年份:2018
-
负责人:Kent, Kenneth
-
依托单位:
Computer Aided Design Tools for FPGA Exploration
-
批准号:262177-2012
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.31万
-
财政年份:2017
-
负责人:Kent, Kenneth
-
依托单位:
Optimizating and integrating node.js on distributed and multicore clouds
-
批准号:501197-2016
-
项目类别:Collaborative Research and Development Grants
-
资助金额:$4.95万
-
财政年份:2017
-
负责人:Kent, Kenneth
-
依托单位:
Computer Aided Design Tools for FPGA Exploration
-
批准号:262177-2012
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.31万
-
财政年份:2016
-
负责人:Kent, Kenneth
-
依托单位:
Computer Aided Design Tools for FPGA Exploration
-
批准号:262177-2012
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.31万
-
财政年份:2015
-
负责人:Kent, Kenneth
-
依托单位:
Computer Aided Design Tools for FPGA Exploration
-
批准号:262177-2012
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.31万
-
财政年份:2014
-
负责人:Kent, Kenneth
-
依托单位:
Computer Aided Design Tools for FPGA Exploration
-
批准号:262177-2012
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.31万
-
财政年份:2013
-
负责人:Kent, Kenneth
-
依托单位:
Computer Aided Design Tools for FPGA Exploration
-
批准号:262177-2012
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.31万
-
财政年份:2012
-
负责人:Kent, Kenneth
-
依托单位:
Optimize energy targets for all energy account centers
-
批准号:430100-2012
-
项目类别:Interaction Grants Program
-
资助金额:$0.02万
-
财政年份:2012
-
负责人:Kent, Kenneth
-
依托单位:
Diskless data analytics
-
批准号:434763-2012
-
项目类别:Engage Grants Program
-
资助金额:$1.82万
-
财政年份:2012
-
负责人:Kent, Kenneth
-
依托单位:
Power Specification for Computer Aided Design Software
-
批准号:429974-2012
-
项目类别:Engage Grants Program
-
资助金额:$1.82万
-
财政年份:2012
-
负责人:Kent, Kenneth
-
依托单位:
Real-time mobile to mobile/desktop video streaming
-
批准号:412225-2010
-
项目类别:Engage Grants Program
-
资助金额:$1.82万
-
财政年份:2011
-
负责人:Kent, Kenneth
-
依托单位:
国内基金
海外基金
登录
查看更多内容
Scalable Learning and Optimization: High-dimensional Models and Online Decision-Making Strategies for Big Data Analysis
-
批准号:--
-
项目类别:合作创新研究团队
-
资助金额:--
-
批准年份:2024
-
负责人:姚韬
-
依托单位:
Data-driven Recommendation System Construction of an Online Medical Platform Based on the Fusion of Information
-
批准号:--
-
项目类别:外国青年学者研究基金项目
-
资助金额:--
-
批准年份:2024
-
负责人:江洋子
-
依托单位:
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
-
负责人:冯志勇
-
依托单位:
Molecular Interaction Reconstruction of Rheumatoid Arthritis Therapies Using Clinical Data
-
批准号:31070748
-
项目类别:面上项目
-
资助金额:34.0万元
-
批准年份:2010
-
负责人:Christine Nardini
-
依托单位:
高维数据的函数型数据(functional data)分析方法
-
批准号:11001084
-
项目类别:青年科学基金项目
-
资助金额:16.0万元
-
批准年份:2010
-
负责人:周迎春
-
依托单位:
染色体复制负调控因子datA在细胞周期中的作用
-
批准号:31060015
-
项目类别:地区科学基金项目
-
资助金额:25.0万元
-
批准年份:2010
-
负责人:莫日根
-
依托单位:
Computational Methods for Analyzing Toponome Data
-
批准号:60601030
-
项目类别:青年科学基金项目
-
资助金额:17.0万元
-
批准年份:2006
-
负责人:Axel Mosig
-
依托单位: