Pub. L. 115-246, tit. III, sec. 304
ADVANCED SCIENTIFIC COMPUTING RESEARCH.
SEC. 304. ADVANCED SCIENTIFIC COMPUTING RESEARCH.(a) American Super Computing Leadership.—(1) Renaming of act.—(A) In general.—Section 1 of the Department of Energy High-End Computing Revitalization Act of 2004 (15 U.S.C. 5501 note; Public Law 108–423) is amended by striking “Department of Energy High-End Computing Revitalization Act of 2004” and inserting “American Super Computing Leadership Act of 2017”.(B) Conforming amendment.—Section 976(a)(1) of the Energy Policy Act of 2005 (42 U.S.C. 16316(1)) is amended by striking “Department of Energy High-End Computing Revitalization Act of 2004” and inserting “American Super Computing Leadership Act of 2017”.(2) Definitions.—Section 2 of the American Super Computing Leadership Act of 2017 (15 U.S.C. 5541) is amended—(A) by redesignating paragraphs (2) through (5) as paragraphs (3) through (6), respectively;(B) by striking paragraph (1) and inserting the following:“(1) Department.—The term ‘Department’ means the Department of Energy.“(2) Exascale computing.—The term ‘exascale computing’ means computing through the use of a computing machine that performs near or above 10 to the 18th power operations per second.”; and(C) in paragraph (6) (as redesignated by subparagraph (A)), by striking “, acting through the Director of the Office of Science of the Department of Energy”.(3) Department of energy high-end computing research and development program.—Section 3 of the American Super Computing Leadership Act of 2017 (15 U.S.C. 5542) is amended—(A) in subsection (a)(1), by striking “program” and inserting “coordinated program across the Department”;(B) in subsection (b)(2), by striking “, which may” and all that follows through “architectures”; and132 STAT. 3146(C) by striking subsection (d) and inserting the following:“(d) Exascale Computing Program.—“(1) In general.—The Secretary shall conduct a research program (referred to in this subsection as the ‘Program’) for exascale computing, including the development of two or more exascale computing machine architectures, to promote the missions of the Department.“(2) Execution.—“(A) In general.—In carrying out the Program, the Secretary shall—“(i) establish two or more National Laboratory partnerships with industry partners and institutions of higher education for the research and development of two or more exascale computing architectures across all applicable organizations of the Department;“(ii) conduct mission-related codesign activities in developing the exascale computing architectures under clause (i);“(iii) develop such advancements in hardware and software technology as are required to fully realize the potential of an exascale production system in addressing Department target applications and solving scientific problems involving predictive modeling and simulation and large scale data analytics and management;“(iv) explore the use of exascale computing technologies to advance a broad range of science and engineering; and“(v) provide, as appropriate, on a competitive, merit-reviewed basis, access for researchers in industries in the United States, institutions of higher education, National Laboratories, and other Federal agencies to the exascale computing systems developed pursuant to clause (i).“(B) Selection of partners.—The Secretary shall select the partnerships with the computing facilities of the Department under subparagraph (A) through a competitive, peer-review process.“(3) Codesign and application development.—“(A) In general.—The Secretary shall—“(i) carry out the Program through an integration of applications, computer science, applied mathematics, and computer hardware architecture using the partnerships established pursuant to paragraph (2) to ensure that, to the maximum extent practicable, two or more exascale computing machine architectures are capable of solving Department target applications and broader scientific problems, including predictive modeling and simulation and large scale data analytics and management; and“(ii) conduct outreach programs to increase the readiness for the use of such platforms by domestic industries, including manufacturers.“(B) Report.—The Secretary shall submit to Congress a report describing—132 STAT. 3147“(i) how the integration under subparagraph (A) is furthering application science data and computational workloads across application interests, including national security, material science, physical science, cybersecurity, biological science, the Materials Genome and BRAIN Initiatives of the President, advanced manufacturing, and the national electric grid; and“(ii) the roles and responsibilities of National Laboratories and industry, including the definition of the roles and responsibilities within the Department to ensure an integrated program across the Department.“(4) Project review.—“(A) In general.—The exascale architectures developed pursuant to partnerships established pursuant to paragraph (2) shall be reviewed through a project review process.“(B) Report.—Not later than 90 days after the date of enactment of this subsection, the Secretary shall submit to Congress a report on—“(i) the results of the review conducted under subparagraph (A); and“(ii) the coordination and management of the Program to ensure an integrated research program across the Department.“(5) Annual reports.—At the time of the budget submission of the Department for each fiscal year, the Secretary, in consultation with the members of the partnerships established pursuant to paragraph (2), shall submit to Congress a report that describes funding for the Program as a whole by functional element of the Department and critical milestones.”.(b) High-Performance Computing and Networking Research.—The Director shall support research in high-performance computing and networking relevant to energy applications, including modeling, simulation, and advanced data analytics for basic and applied energy research programs carried out by the Secretary.(c) Applied Mathematics and Software Development for High-End Computing Systems.—The Director shall carry out activities to develop, test, and support—(1) mathematics, models, and algorithms for complex systems and programming environments; and(2) tools, languages, and operating systems for high-end computing systems (as defined in section 2 of the American Super Computing Leadership Act of 2017 (15 U.S.C. 5541)).