Elements: Basil: A Tool for Semi-Automatic Containerization, Deployment, and Execution of Scientific Applications on Cloud Computing and Supercomputing Platforms
Elements: Basil: A Tool for Semi-Automatic Containerization, Deployment, and Execution of Scientific Applications on Cloud Computing and Supercomputing Platforms
批准号:
2209946
负责人:
Ritu Arora
金额:
$57.08万
依托单位国家:
美国
项目类别:
Standard Grant
财政年份:
2022
资助国家:
美国
项目状态:
已结题
起止时间:
2022-07-01 至 2023-02-28
中文摘要
软件应用程序的“容器化”(containerization)可以保证它们经得起未来的考验,有助于它们的长期保存,使它们可以跨不同的硬件平台移植,确保结果的可重复性,并使它们易于传播。Docker和Singularity是两种用于容器化科学应用程序的流行软件技术,在不同的硬件平台上得到广泛支持。然而,它们的采用涉及一个陡峭的学习曲线,特别是在涉及到开发感兴趣的应用程序的安全和优化映像时。大量领域科学家和学者通常没有接受过使用Docker和Singularity将应用程序容器化的正式培训,而是花费大量时间将他们的应用程序移植到不同的云计算和超级计算平台上。移植具有多个软件依赖关系和对特定软件版本敏感的应用程序的过程对于这样的用户来说尤其艰巨。为了帮助他们,该项目正在开发BASIL——一种半自动容器化科学应用程序、框架和工作流的工具。该项目将通过门户网站、命令行工具和api提供BASIL。BASIL在多个具有深刻社会影响的领域具有广泛的适用性,例如人工智能,药物发现和地震工程。通过保存有价值的遗留软件并使它们在未来几年内可用,BASIL将节省软件重写和软件安装的成本和时间,从而为促进社会的繁荣做出贡献。该项目将产生“集装箱化入门”的教育内容,参与该项目的学生将在超级计算/高性能计算(HPC)和云计算等国家感兴趣的领域发展有价值的技能。BASIL将是此类工具中的第一个,它可以半自动地生成安全、优化和可靠的容器映像,并提供关于如何在适当的许可下使用这些映像的清晰信息。优化映像的规则将从专家知识和最佳实践中派生出来,例如多阶段构建和重新排序命令的顺序以利用缓存,从而减少构建映像所涉及的总时间。BASIL工具的用户将以以下形式之一提供构建其应用程序/工作流的食谱(1)Makefiles/CMakefiles,(2)脚本,(3)命令,或(4)使用项目团队提供的模板包含预定义关键字和符号的文本文件。这些食谱将被解析,并生成Dockerfiles或Singularity定义文件。在这个项目中开发的解析器将是这个项目的另一个新颖贡献。使用生成的Dockerfile或Singularity定义文件,将构建Docker或Singularity映像。接下来,将扫描该映像以查找任何漏洞,并对其进行签名,如果用户愿意,还可以使用适当的许可将其发布到公共注册中心。这些容器映像可以使用BASIL web门户进行测试,并且可以在不同的硬件平台上运行或部署。该奖项由先进网络基础设施办公室颁发,并得到数学和物理科学理事会物理部信息前沿物理部的联合支持。该奖项反映了美国国家科学基金会的法定使命,并通过使用基金会的知识价值和更广泛的影响审查标准进行评估,被认为值得支持。
英文摘要
The "containerization" of software applications future-proofs them, helps in their long-term preservation, makes them portable across different hardware platforms, ensures reproducible results, and makes them convenient to disseminate. Docker and Singularity are two popular software technologies for containerizing scientific applications and are widely supported on different hardware platforms. However, their adoption involves a steep learning curve, especially when it comes to developing secure and optimized images of the applications of interest. A large number of domain-scientists and scholars are usually not formally trained at containerizing their applications with Docker and Singularity, and spend a significant amount of their time in porting their applications to different cloud computing and supercomputing platforms. The process of porting applications having multiple software dependencies and sensitivities to specific software versions can be especially arduous for such users. To assist them, this project is developing BASIL - a tool for semi-automatically containerizing the scientific applications, frameworks, and workflows. This project will deliver BASIL through a web portal, as a command-line tool, and through APIs. BASIL has a broad applicability across multiple domains of deep societal impact such as artificial intelligence, drug discovery, and earthquake engineering. By enabling the preservation of valuable legacy software and making them usable for several years in future, BASIL will save cost and time in software rewriting and software installations, and thus contribute towards advancing the prosperity of the society. The project will result in educational content on “Introduction to Containerization” and students engaged in the project will develop valuable skills in the areas of national interest such as supercomputing/High Performance Computing (HPC) and cloud computing. BASIL will be the first tool of its kind that can semi-automatically generate secure, optimized, and trustworthy container images with clear information on how to use the images under appropriate licenses. The rules for optimizing the images will be derived from expert knowledge and best practices, such as multi-stage builds and reordering the sequencing of commands to take advantage of caching so that the overall time involved in building the images is reduced. Users of the BASIL tool will provide the recipes for building their applications/workflows in one of the following forms (1) Makefiles/CMakefiles, (2) scripts, (3) commands, or (4) a text-file with predefined keywords and notations using templates provided by the project team. These recipes will be parsed, and Dockerfiles or Singularity definition files will be generated. The parser developed in this project will be another novel contribution of the project. Using a generated Dockerfile or Singularity definition file, a Docker or Singularity image will be built. Next, the image will be scanned for any vulnerabilities, signed, and if the user desires, released in public registries with appropriate licenses. These container images can be tested using the BASIL web portal, and can be pulled to run or deploy on diverse hardware platforms. This award by the Office of Advanced Cyberinfrastructure is jointly supported by the Physics at the Information Frontier in the Division of Physics within the Directorate for Mathematical and Physical Sciences.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.
期刊论文(0)
专著(0)
科研奖励(0)
会议论文
Towards the Future Direction of the NSF Program on the Cyberinfrastructure for Sustained Scientific Innovation (CSSI)
-
批准号:2314201
-
项目类别:Standard Grant
-
资助金额:$1.25万
-
财政年份:2023
-
负责人:Ritu Arora
-
依托单位:
COLLABORATIVE RESEARCH: EAGER: Towards Building a CyberInfrastructure for Facilitating the Assessment, Dissemination, Discovery, & Reuse of Software and Data Products
-
批准号:2314202
-
项目类别:Standard Grant
-
资助金额:$17.5万
-
财政年份:2023
-
负责人:Ritu Arora
-
依托单位:
Elements: Basil: A Tool for Semi-Automatic Containerization, Deployment, and Execution of Scientific Applications on Cloud Computing and Supercomputing Platforms
-
批准号:2314203
-
项目类别:Standard Grant
-
资助金额:$57.08万
-
财政年份:2023
-
负责人:Ritu Arora
-
依托单位:
Collaborative Research: SI2-SSI: Expanding Volunteer Computing
-
批准号:2039142
-
项目类别:Standard Grant
-
资助金额:$20.38万
-
财政年份:2020
-
负责人:Ritu Arora
-
依托单位:
COLLABORATIVE RESEARCH: EAGER: Towards Building a CyberInfrastructure for Facilitating the Assessment, Dissemination, Discovery, & Reuse of Software and Data Products
-
批准号:2037661
-
项目类别:Standard Grant
-
资助金额:$17.5万
-
财政年份:2020
-
负责人:Ritu Arora
-
依托单位:
Towards the Future Direction of the NSF Program on the Cyberinfrastructure for Sustained Scientific Innovation (CSSI)
-
批准号:2034617
-
项目类别:Standard Grant
-
资助金额:$1.25万
-
财政年份:2020
-
负责人:Ritu Arora
-
依托单位:
Towards the Future Direction of the NSF Program on the Cyberinfrastructure for Sustained Scientific Innovation (CSSI)
-
批准号:1946194
-
项目类别:Standard Grant
-
资助金额:$5.0万
-
财政年份:2019
-
负责人:Ritu Arora
-
依托单位:
Collaborative Research: SI2-SSI: Expanding Volunteer Computing
-
批准号:1664022
-
项目类别:Standard Grant
-
资助金额:$50.0万
-
财政年份:2017
-
负责人:Ritu Arora
-
依托单位:
SI2-SSE: An Interactive Parallelization Tool
-
批准号:1642396
-
项目类别:Continuing Grant
-
资助金额:$46.33万
-
财政年份:2016
-
负责人:Ritu Arora
-
依托单位:
Broadening Participation in the Workshop on Leveraging High Performance Computing Resources for Big Data Management
-
批准号:1447000
-
项目类别:Standard Grant
-
资助金额:$3.78万
-
财政年份:2014
-
负责人:Ritu Arora
-
依托单位:
海外基金