SHF: Small: The Loop Chain Abstraction for Balancing Locality and Parallelism
SHF: Small: The Loop Chain Abstraction for Balancing Locality and Parallelism
批准号:
1700723
负责人:
Catherine Olschanowsky
金额:
$26.0万
依托单位:
依托单位国家:
美国
项目类别:
Standard Grant
财政年份:
2016
资助国家:
美国
项目状态:
已结题
起止时间:
2016-08-16 至 2018-01-31
中文摘要
题目:SHF:小:平衡局部性和并行性的环链抽象计算科学,包括对发动机燃烧等现象的建模和仿真,已经成为科学和工程研究的第三大支柱。计算机模拟测试设计参数比物理实验便宜得多。此外,计算机模拟通过使理论模型的廉价实验成为可能,参与了理论的偶然循环。将计算机模拟映射到高性能计算机体系结构是一个具有挑战性的计算机科学问题;限制包括实现高性能和有效地使用计算资源,同时不使科学程序员负担过重。随着体系结构不断发展,使得它们越来越难以使用,这个挑战变得越来越严峻。在这个项目中,pi将通过开发一种称为循环链接的编程抽象来消除程序员的负担,这种编程抽象允许编译器对特定于体系结构的程序进行优化。这项工作使科学家可以花更少的时间处理恼人的性能编程细节,而将更多的时间用于发展他们的科学模型,从而帮助推动科学和工程向前发展。在显式管理数据局部性的同时,暴露并行化的机会是移植和优化现有计算科学模拟代码的主要挑战。在这些代码中使用的最流行的编程模型,如MPI(消息传递接口),要求程序员显式地确定数据和计算分布。这导致了计算节点之间的良好扩展,但是节点内部也需要并行性和局部性。有许多实现共享内存并行性的方法,但是大多数方法都是由程序员负责分组计算以改进数据局部性。这个项目的重点是开发循环链抽象,为编译器提供足够的信息来自动化并行性和数据局部性之间的权衡。初步结果表明,采用环链抽象可以显著提高并行可扩展性。其智力上的优点是,循环链抽象将使现有代码能够维护其软件模块化,同时暴露对提高并行可伸缩性的性能优化至关重要的信息。本研究的一些重要贡献是对现有程序的优化进行重新设计,以使用循环链抽象作为输入,并最终将循环链抽象纳入并行编程语言。更广泛的影响包括减轻科学家开发计算模拟的负担,将开发的编译器原型作为开源软件共享,并提供在c++和Fortran代码中进行基于源到源循环链的平铺转换的教程。环链的测试平台将包括大气科学、材料和燃烧代码,因此将发布这些应用程序的可调版本。此外,将开发一个新的课程模块,通过该模块,学生将接受计算科学方面的培训,特别是如何在仿真软件中暴露环路链。
英文摘要
Title: SHF: Small: The Loop Chain Abstraction for Balancing Locality and ParallelismComputational science, which involves modeling and simulation of phenomena such as combustion in engines, has become the third pillar of science and engineering research. Computer simulations test design parameters much more cheaply than physical experiments. Also, computer simulations participate in a fortuitous cycle with theory by enabling inexpensive experimentation of theoretical models. Mapping computer simulations to high performance computer architectures is a challenging computer science problem; constraints include achieving high performance and effective use of computing resources while not overburdening scientific programmers. This challenge is becoming more severe as architectures continue to evolve in ways that make them ever more difficult to use. In this project, the PIs will remove programmer burden by developing a programming abstraction called loop chaining, which enables architecture-specific program optimizations by compilers. This work enables scientists to spend less time dealing with annoying performance programming details and more time evolving their scientific models that help push science and engineering forward.Exposing opportunities for parallelization while explicitly managing data locality is the primary challenge to porting and optimizing existing computational science simulation codes. The most popular programming models used in these codes such as MPI (Message Passing Interface) require that programmers explicitly determine the data and computation distribution. This has led to good scaling between compute nodes, but parallelism and locality are needed within a node as well. There are many approaches for implementing shared memory parallelism, but with most of them it is the programmer's responsibility to group computations to improve data locality. This project focuses on the development of the loop chain abstraction to provide compilers with sufficient information to automate the parallelism versus data locality tradeoff. Preliminary results show that using the loop chain abstraction can significantly improve parallel scalability. The intellectual merits are that the loop chain abstraction will enable existing codes to maintain their software modularity while exposing information critical to performance optimizations that improve parallel scalability. Some important contributions of this research are the re-casting of existing program optimizations to use the loop chain abstraction as input and the eventual incorporation of the loop chain abstraction into parallel programming languages. The broader impacts include reducing the burden on scientists developing computational simulations, sharing the developed compiler prototypes as open-source software, and providing tutorials for doing source-to-source loop chain-based tiling transformations in C++ and Fortran code. The testbed for loop chaining will include atmospheric science, materials, and combustion codes, therefore tunable versions of these applications will be released. Additionally, a new course module will be developed, through which students will be trained in computational science and specifically, on how to expose loop chains within simulation software.
期刊论文(0)
专著(0)
科研奖励(0)
会议论文
CAREER: Compilation Processes to Enhance Dataflow Optimizations
-
批准号:1943319
-
项目类别:Continuing Grant
-
资助金额:$54.42万
-
财政年份:2020
-
负责人:Catherine Olschanowsky
-
依托单位:
SHF: Medium: Collaborative Research: An Inspector/Executor Compilation Framework for Irregular Applications
-
批准号:1563818
-
项目类别:Standard Grant
-
资助金额:$39.72万
-
财政年份:2016
-
负责人:Catherine Olschanowsky
-
依托单位:
SHF: Small: The Loop Chain Abstraction for Balancing Locality and Parallelism
-
批准号:1422725
-
项目类别:Standard Grant
-
资助金额:$50.0万
-
财政年份:2014
-
负责人:Catherine Olschanowsky
-
依托单位:
国内基金
海外基金
登录
查看更多内容
昼夜节律性small RNA在血斑形成时间推断中的法医学应用研究
-
批准号:
-
项目类别:省市级项目
-
资助金额:--
-
批准年份:2024
-
负责人:
-
依托单位:
tRNA-derived small RNA上调YBX1/CCL5通路参与硼替佐米诱导慢性疼痛的机制研究
-
批准号:
-
项目类别:省市级项目
-
资助金额:10.0万元
-
批准年份:2022
-
负责人:张祥忠
-
依托单位:
Small RNA调控I-F型CRISPR-Cas适应性免疫性的应答及分子机制
-
批准号:32000033
-
项目类别:青年科学基金项目
-
资助金额:24.0万元
-
批准年份:2020
-
负责人:林平
-
依托单位:
Small RNAs调控解淀粉芽胞杆菌FZB42生防功能的机制研究
-
批准号:31972324
-
项目类别:面上项目
-
资助金额:58.0万元
-
批准年份:2019
-
负责人:高学文
-
依托单位:
变异链球菌small RNAs连接LuxS密度感应与生物膜形成的机制研究
-
批准号:81900988
-
项目类别:青年科学基金项目
-
资助金额:21.0万元
-
批准年份:2019
-
负责人:毛梦莹
-
依托单位:
肠道细菌关键small RNAs在克罗恩病发生发展中的功能和作用机制
-
批准号:31870821
-
项目类别:面上项目
-
资助金额:56.0万元
-
批准年份:2018
-
负责人:陈江宁
-
依托单位:
基于small RNA 测序技术解析鸽分泌鸽乳的分子机制
-
批准号:31802058
-
项目类别:青年科学基金项目
-
资助金额:26.0万元
-
批准年份:2018
-
负责人:麻慧
-
依托单位:
Small RNA介导的DNA甲基化调控的水稻草矮病毒致病机制
-
批准号:31772128
-
项目类别:面上项目
-
资助金额:60.0万元
-
批准年份:2017
-
负责人:吴建国
-
依托单位:
基于small RNA-seq的针灸治疗桥本甲状腺炎的免疫调控机制研究
-
批准号:81704176
-
项目类别:青年科学基金项目
-
资助金额:20.0万元
-
批准年份:2017
-
负责人:赵继梦
-
依托单位:
水稻OsSGS3与OsHEN1调控small RNAs合成及其对抗病性的调节
-
批准号:91640114
-
项目类别:重大研究计划
-
资助金额:85.0万元
-
批准年份:2016
-
负责人:何祖华
-
依托单位: