CAREER: Compilation Processes to Enhance Dataflow Optimizations
CAREER: Compilation Processes to Enhance Dataflow Optimizations
批准号:
1943319
负责人:
Catherine Olschanowsky
金额:
$54.42万
依托单位:
依托单位国家:
美国
项目类别:
Continuing Grant
财政年份:
2020
资助国家:
美国
项目状态:
已结题
起止时间:
2020-06-15 至 2023-05-31
中文摘要
超级计算推动了许多科学和工程领域的进步。从了解气候变化到发现太阳能电池的新材料,再到治疗癌症,这些挑战都取决于领导级超级计算资源的能力。这类资源的建立和运行花费了数千万美元,因此使用它们的科学应用应该在最短的时间内产生最大的科学进步,使用最少的能源。然而,科学应用程序的运行效率低下,因为它们通常以低于潜在最大速率的30%执行操作,并且通常进一步低于该速率。通过重写代码来手动优化科学应用程序可以提高运算速度,但也会引入代码复杂性,使代码难以理解和维护,从而阻碍科学进步。自动代码优化保留了代码的可维护性,并有可能显著提高操作率。然而,也存在一些障碍,例如使用共享的数学库来阻止自动优化。该项目旨在克服科学应用程序自动化代码优化的关键障碍。一个综合教育计划将吸引来自当地爱达荷州高中的高危青少年学习计算机科学,该计划建立在一个成功的试点计划的基础上,该计划将怀孕和育儿的青少年与计算机科学专业的学生聚集在一起。该项目的研究目标是解锁内存优化,该优化依赖于编译器执行的代码转换,称为函数内联,这对随后的代码转换至关重要。与内存的交互是昂贵的,应用程序设计人员依赖于它们来支持软件设计模式。应用程序设计人员经常使用库调用或函数指针将软件分解为小的、可重用的模块化组件。但是,这样做会阻止内联并限制有助于内存优化的转换的功效。针对这一问题,该项目将使功能机构更早地可用,并以一种易于转换的形式提供。为了实现这一目标,该项目将使用高级编译器内部表示开发一个新的早期链接阶段,从而导致大面积的应用程序代码以适合转换的结构表示。这种方法允许内联和后续的循环转换,从而消除了使用预编译库造成的障碍,以及使用函数指针造成的一些障碍。项目目标是:(1)启用预编译库的内联,(2)启用函数指针上的内联,提供客制化的最佳化规划。本计画由CCF部门软硬体基础计画及刺激竞争力研究既定计画共同赞助。该奖项反映了NSF的法定使命,并通过使用基金会的智力价值进行评估,更广泛的影响审查标准。
英文摘要
Supercomputing drives advances in many areas of science and engineering. Challenges ranging from understanding climate change, to discovering new materials for solar cells, to curing cancer, depend on the power of leadership-class supercomputing resources. Resources of this class cost tens of millions to set up and operate, so the scientific applications using them should produce the largest scientific advancement possible, in the shortest amount of time, using the least amount of energy. However, scientific applications operate inefficiently in that they typically perform operations at less than 30 percent of the potential maximum rate, and often further less than that. Hand-optimizing scientific applications by rewriting the code can increase the operation rate, but also introduces code complexities that make code difficult to understand and maintain, impeding scientific progress. Automated code optimization preserves code maintainability and has the potential to significantly increase operation rates. However, there are obstacles, such as the use of shared mathematical libraries that block automated optimization. This project seeks to overcome key obstacles to automated code optimization for scientific applications. An integrated education plan will engage at-risk youth from local Idaho high schools in computer science, building on a successful pilot program that brought pregnant and parenting teens together with computer science students.The research goal of this project is to unblock memory optimizations that depend on a code transformation performed by compilers called function inlining that is crucial to subsequent code transformation. Interactions with memory are expensive and application designers depend on them to support software design patterns. Application designers often use library calls or function pointers to break software into small, reusable modular components. However, doing so prevents inlining and limits the efficacy of transformations contributing to memory optimizations. In response to this problem, the project will make function bodies available earlier and in a form that is amenable to transformations. To accomplish this, the project will develop a new early linking stage using a high-level compiler internal representation, resulting in large regions of application code expressed in a structure ideal for transformation. This approach allows for inlining and subsequent loop transformations, thus removing the barrier resulting from using precompiled libraries, and some of the barriers from function pointer use. Project objectives are to: (1) enable inlining of precompiled libraries, (2) enable inlining over function pointers, and (3) provide customized optimization planning.This project is jointly funded by CCF Division Software and Hardware Foundations Program and the Established Program to Stimulate Competitive Research (EPSCoR).This award reflects NSF's statutory mission and has been deemed worthy of support through evaluation using the Foundation's intellectual merit and broader impacts review criteria.
期刊论文(3)
专著(0)
科研奖励(0)
会议论文
Techniques for Managing Polyhedral Dataflow Graphs
管理多面体数据流图的技术
DOI:
10.1007/978-3-030-99372-6_9
发表时间:
2021
期刊:
LCPC 2021
影响因子:
--
作者:
[Shankar, Ravi, Orenstein, Aaron, Rift, Anna, Popoola, Tobi, MacDonald, Yang, Shuai, Mikesell, T. Dylan, Olschanowsky, Catherine]
通讯作者:
Olschanowsky, Catherine
Code Synthesis for Sparse Tensor Format Conversion and Optimization
稀疏张量格式转换和优化的代码综合
DOI:
--
发表时间:
2023
期刊:
International Symposium on Code Generation and Optimization
影响因子:
--
作者:
[Popoola, Tobi, Zhao, Tuowen, St. George, Aaron, Bhetwal, Kalyan, Strout, Michelle, Hall, Mary, Olschanowsky, Catherine]
通讯作者:
Olschanowsky, Catherine
DOI:
10.1109/compsac51774.2021.00275
发表时间:
2021
期刊:
and Applications Conference (COMPSAC
影响因子:
--
作者:
[Popoola, Tobi, Shankar, Ravi, Rift, Anna, Singh, Shivani, Davis, Eddie C., Strout, Michelle Mills, Olschanowsky, Catherine]
通讯作者:
Olschanowsky, Catherine
SHF: Small: The Loop Chain Abstraction for Balancing Locality and Parallelism
-
批准号:1700723
-
项目类别:Standard Grant
-
资助金额:$26.0万
-
财政年份:2016
-
负责人: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
-
依托单位:
海外基金