Award Abstract # 2007793
SHF: Small: K-Way Speculation for Mapping Applications with Dependencies on Modern HPC Systems

NSF Org: CCF
Division of Computing and Communication Foundations
Recipient: AUGUSTA UNIVERSITY RESEARCH INSTITUTE, INC
Initial Amendment Date: July 31, 2020
Latest Amendment Date: March 25, 2021
Award Number: 2007793
Award Instrument: Standard Grant
Program Manager: Almadena Chtchelkanova
achtchel@nsf.gov
 (703)292-7498
CCF
 Division of Computing and Communication Foundations
CSE
 Directorate for Computer and Information Science and Engineering
Start Date: August 1, 2020
End Date: July 31, 2023 (Estimated)
Total Intended Award Amount: $499,999.00
Total Awarded Amount to Date: $499,999.00
Funds Obligated to Date: FY 2020 = $115,751.00
History of Investigator:
  • Gagan Agrawal (Principal Investigator)
    gagrawal@uga.edu
Recipient Sponsored Research Office: AUGUSTA UNIVERSITY RESEARCH INSTITUTE, INC.
AUGUSTA UNIVERSITY 1120 15TH STREET
AUGUSTA
GA  US  30912-0001
(706)721-2592
Sponsor Congressional District: 12
Primary Place of Performance: Augusta University Research Institute, Inc.
1120 15th Street, CJ 3301
Augusta
GA  US  30912-0001
Primary Place of Performance
Congressional District:
12
Unique Entity Identifier (UEI): N4WWJC8T2593
Parent UEI: N4WWJC8T2593
NSF Program(s): Software & Hardware Foundation
Primary Program Source: 01002021DB NSF RESEARCH & RELATED ACTIVIT
Program Reference Code(s): 7923, 7942
Program Element Code(s): 779800
Award Agency Code: 4900
Fund Agency Code: 4900
Assistance Listing Number(s): 47.070

ABSTRACT

Modern hardware provides parallelism in the form of a large number of threads. If an application involves independent work components, these components can be mapped to such hardware for parallel execution. However, when the work components are not independent, often such hardware is under-utilized. One technique used to overcome this problem is speculation ? which involves guessing certain values or outcomes and assigning work to threads based on them. If the guess turns out to be incorrect, we need to re-execute the work. In current approaches one value or outcome is considered (or speculated): i.e., whether a specific value will be computed or loaded, or whether there will be dependence or not. With presence of massive number of threads, there is an opportunity to consider k-way speculation, e.g., speculating two or more likely values, or in parallel executing one thread that assumes dependence and another that assumes there is no dependence. This project is developing techniques enabling k-way speculation, using k guessed values to benefit from parallelism provided by modern hardware with multiple threads. The motivation arrives from the fact that modern hardware has a very high degree of parallelism, and it is better to have redundancy in using this parallelism, as compared to settling for a sequential execution. The class of applications this project targets span across scientific computing, data analytics, machine learning, and optimization, and thus this project impacts all of these areas. This project will also make contributions towards advancing curriculum and broadening participation in computing.

This project builds on two demonstrated results relevant to k-way speculation. First, in certain cases, one might speculate k values, and while none of them may be correct, execution using them can be used to reconstruct the function. Second, for Finite State Machines (FSMs), it has been shown that k-way speculation is a better alternative to both (1-way) speculation and enumeration. Both approaches, k-way speculation and reconstruction and k-way speculation for FSMs, are not scalable to a very large number of cores because of the overhead of merging across different speculated executions. In addition, existing loop-transformation methods respect dependencies and cannot identify and exploit loops that can be parallelized despite dependencies. The following research directions are explored. First, techniques are being developed to remove this bottleneck. Second, the existing framework is being extended to consider nested loops, where one of the levels involves dependencies. Third, several classes of algorithms involve speculation and are candidates for benefiting from k-way speculation, possibly with reconstruction, and this is being explored. Finally, it is being examined if the function corresponding to the loop body does not have a closed-form combination, can the execution on speculated values nevertheless represent the function to a certain level of precision.

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.

PUBLICATIONS PRODUCED AS A RESULT OF THIS RESEARCH

Note:  When clicking on a Digital Object Identifier (DOI) number, you will be taken to an external site maintained by the publisher. Some full text articles may not yet be available without a charge during the embargo (administrative interval).

Some links on this page may take you to non-federal websites. Their policies may differ from this site.

Li, Xiang and Agrawal, Gagan "Shrinking Sample Search Algorithm for Automatic Tuning of GPU Kernels" Proceedings of HiPC 2021 , 2021 https://doi.org/10.1109/HiPC53243.2021.00040 Citation Details
Lou, Shuangsheng and Agrawal, Gagan "A Programming API Implementation for Secure Data Analytics Applications with Homomorphic Encryption on GPUs" Proceedings of HiPC 2021 , 2021 https://doi.org/10.1109/HiPC53243.2021.00059 Citation Details
Niu, Wei and Guan, Jiexiong and Wang, Yanzhi and Agrawal, Gagan and Ren, Bin "DNNFusion: accelerating deep neural networks execution with advanced operator fusion" Proceedings of PLDI 2021 , 2021 https://doi.org/10.1145/3453483.3454083 Citation Details
Xia, Yang and Jiang, Peng and Agrawal, Gagan and Ramnath, Rajiv "Scaling Sparse Matrix Multiplication on CPU-GPU Nodes" Proceedings of the International Parallel and Distributed Processing Symposium , 2021 https://doi.org/10.1109/IPDPS49936.2021.00047 Citation Details
Yang Xia, Peng Jiang "End-to-End LU Factorization of Large Matrices on GPUs" PPoPP 2023 , 2023 Citation Details

Please report errors in award information by writing to: awardsearch@nsf.gov.

Print this page

Back to Top of page