Latest News

 

For the Love of Science

Published on June 24, 2019 by Faith Singer-Villalobos



TACC's Stampede2 supercomputer located at the J.J. Pickle Research Campus at The University of Texas at Austin. Stampede2 provides HPC capabilities to thousands of researchers across the U.S. It entered full production in Fall 2017 as an 18 petaflop system that builds on the successes of the original Stampede cluster it replaced.

You don't have to be a scientist to contribute to research projects in fields such as biomedicine, physics, astronomy, artificial intelligence, or earth sciences.

Using specialized, open-source software from the Berkeley Open Infrastructure for Network Computing project (BOINC), hundreds of thousands of home and work computers are being used for volunteer computing using consumer devices and organizational resources. For the past 17 years, with funding primarily from the National Science Foundation (NSF), BOINC is now used by 38 projects and more than a half a million computers running these projects around the world.

David Anderson, BOINC's founder, is a research scientist at the University of California Berkeley Space Sciences Laboratory. His objective in creating BOINC was to build software to handle the details of distributed computing so that scientists wouldn't have to.

"I wanted to create a new way of doing scientific computing as an alternative to grids, clusters, and clouds," Anderson said. "As a software system, BOINC has been very successful. It's evolved without too many growing pains to handle multi-core CPUs, all kinds of GPUs, virtual machines and containers, and Android mobile devices."

The Texas Advanced Computing Center (TACC) started its own project in 2017 — BOINC@TACC — that supports virtualized, parallel, cloud, and GPU-based applications to allow the public to help solve science problems. BOINC@TACC is the first use of volunteer computing by a major high performance computing (HPC) center.

Carlos Redondo (left) and Ritu Arora (right). Redondo is a senior in Aerospace Engineering at UT Austin, a developer on the BOINC@TACC project, and a student researcher who uses the infrastructure. Arora is a research scientist at TACC and the BOINC@TACC project lead.

"BOINC@TACC is an excellent project for making the general public a key contributor in science and technology projects," said Ritu Arora, a research scientist at TACC and the project lead.

"We love engaging with people in the community who can become science enthusiasts and connect with TACC and generate awareness of science projects," Arora said. "And, importantly for students and researchers, there is always an unmet demand for computing cycles. If there is a way for us to connect these two communities, we're fulfilling a major need."

BOINC volunteer Dick Duggan is a retired IT professional who lives in Massachusetts, and a volunteer computing enthusiast for more than a decade.

"I'm a physics nerd. Those tend to be my favorite projects," he said. "I contribute computing cycles to many projects, including the Large Hadron Collider (LHC). LHC is doing state-of-the-art physics — they're doing physics on the edge of what we know about the universe and are pushing that edge out."

Duggan uses his laptop, desktop, tablet, and Raspberry Pi to provide computing cycles to BOINC@TACC. "When my phone is plugged in and charged, it runs BOINC@TACC, too."

Joining BOINC@TACC is simple: Sign up as volunteer, set up your device, and pick your projects.

Compute cycles on more than 1,300 computing devices have been volunteered for the BOINC@TACC project and more than 300 devices have processed the jobs submitted using the BOINC@TACC infrastructure. The aggregate computer power available through the CPUs on the volunteered devices is about 3.5 teraflops (or 3.5 trillion floating point operations per second).

Why BOINC@TACC?

It's no secret that computational resources are in great demand, and that researchers with the most demanding computational requirements require supercomputing systems. Access to the most powerful supercomputers in the world, like the resources at TACC, is important for the advancement of science in all disciplines. However, with funding limitations, there is always an unmet need for these resources.

BOINC@TACC is an excellent project for making the general public a key contributor in science and technology projects. We love engaging with people in the community who can become science enthusiasts and connect with TACC and generate awareness of science projects. And, importantly for students and researchers, there is always an unmet demand for computing cycles. If there is a way for us to connect these two communities, we're fulfilling a major need.
Ritu Arora, research scientist at TACC and the BOINC@TACC project lead

"BOINC@TACC helps fill a gap in what researchers and students need and what the open-science supercomputing centers can currently provide them," Arora said.

Researchers from UT Austin; any of the 14 UT System institutions; and researchers around the country through XSEDE, the national advanced computing infrastructure in the U.S., are invited to submit science jobs to BOINC@TACC.

To help researchers with this unmet need, TACC started a collaboration with Anderson at UC Berkeley to see how the center could outsource high-throughput computing jobs to BOINC.

When a researcher is ready to submit projects through BOINC@TACC, all they need to do is log in to a TACC system and run a program from their account that will register them for BOINC@TACC, according to Arora. Thereafter, the researcher can continue running programs that will help them (1) decide whether BOINC@TACC is the right infrastructure for running their jobs; and (2) submit the qualified high-throughput computing jobs through the command-line interface. The researchers can also submit jobs through the web interface.

Instead of the job running on Stampede2, for example, it could run on a volunteer's home or work computer.

"Our software matches the type of resources for a job and what's available in the community," Arora said. "The tightly-coupled, compute-intensive, I/O-intensive, and memory-intensive applications are not appropriate for running on the BOINC@TACC infrastructure. Therefore, such jobs are filtered out and submitted for running on Stampede2 or Lonestar5 instead of BOINC@TACC," she clarified.

A significant number of high-throughput computing jobs are also run on TACC systems in addition to the tightly-coupled MPI jobs. These high-throughput computing jobs consist of large sets of loosely-coupled tasks, each of which can be executed independently and in parallel to other tasks. Some of these high-throughput computing jobs have modest memory and input/output needs, and do not have an expectation of a fixed turnaround time. Such jobs qualify to run on the BOINC@TACC infrastructure.

"Volunteer computing is well-suited to this kind of workload," Anderson said. "The idea of BOINC@TACC is to offload these jobs to a BOINC server, freeing up the supercomputers for the tightly-coupled parallel jobs that need them."

To start, the TACC team deployed an instance of the BOINC server on a cloud-computing platform. Next, the team developed the software for integrating BOINC with supercomputing and cloud computing platforms. During the process, the project team developed and released innovative software components that can be used by the community to support projects from a variety of domains. For example, a cloud-based shared filesystem and a framework for creating Docker images that was developed in this project can be useful for a variety of science gateway projects.

As soon as the project became operational, volunteers enthusiastically started signing up. The number of researchers using BOINC@TACC is gradually increasing.

Carlos Redondo, a senior in Aerospace Engineering at UT Austin, is both a developer on the BOINC@TACC project and a researcher who uses the infrastructure.

"The incentive for researchers to use volunteer computing is that they save on their project allocation," Redondo said. "But researchers need to be mindful that the number of cores on volunteer systems are going to be small, and they don't have the special optimization that servers at TACC have," Redondo said.

As a student researcher, Redondo has submitted multiple computational fluid dynamics jobs through BOINC@TACC. In this field, computers are used to simulate the flow of fluids and the interaction of the fluid (liquids and gases) with surfaces. Supercomputers can achieve better solutions and are often required to solve the largest and most complex problems.

A ParaView visualization of a computational fluid dynamics job using BOINC@TACC. Simulating fluid-flow in a 2-D square cavity (hole) bounded by solid surfaces on three sides with constant velocity on the top. The results obtained were identical to those computed on Stampede2. Source: Carlos Redondo

"The results in terms of the numbers produced from the volunteer devices were exactly those expected, and also identical to those running on Stampede2," he said.

Since jobs run whenever volunteers' computers are available, researchers' turnaround time is longer than that of Stampede2, according to Redondo. "Importantly, if a volunteer decides to stop a job, BOINC@TACC will automatically safeguard the progress, protect the data, and save the results."

TACC's Technical Contribution to BOINC

BOINC software works out-of-the-box. What it doesn't support is the software for directly accepting jobs from supercomputers.

"We're integrating BOINC software with the software that is running on supercomputing devices so these two pieces can talk to each other when we have to route qualified high-throughput computing jobs from supercomputers to volunteer devices. The other piece TACC has contributed is extending BOINC to the cloud computing platforms," Arora said.

Unlike other BOINC projects, the BOINC@TACC infrastructure can execute jobs on Virtual Machines (VMs) running on cloud computing systems. These systems are especially useful for GPU jobs and for assuring a certain quality of service to the researchers. "If the pool of the volunteered resources goes down, we're able to route the jobs to the cloud computing systems and meet the expectations of the researchers. This is another unique contribution of the project," Arora said.

BOINC@TACC is also pioneering the use of Docker to package custom-written science applications so that they can run on volunteered resources.

Furthermore, the project team is planning to collaborate with companies that may have corporate social responsibility programs for soliciting compute-cycles on their office computers or cloud computing systems.

"We have the capability to harness office desktops and laptops, and also the VMs in the cloud. We've demonstrated that we're capable of routing jobs from Stampede2 to TACC's cloud computing systems, Chameleon and Jetstream, through the BOINC@TACC infrastructure," Arora said.

We hope that BOINC@TACC will provide a success story that motivates other large scientific computing centers to use the same approach. This will benefit thousands of computational scientists and, we hope, will greatly increase the volunteer population.
David Anderson, BOINC's founder and a research scientist at the University of California Berkeley Space Sciences Laboratory

Anderson concluded, "We hope that BOINC@TACC will provide a success story that motivates other large scientific computing centers to use the same approach. This will benefit thousands of computational scientists and, we hope, will greatly increase the volunteer population."

Dick Duggan expressed a common sentiment of BOINC volunteers that people want to do it for the love of science. "This is the least I can do. I may not be a scientist but I'm accomplishing something…and it's fun to do," Duggan said.

Learn More: The software infrastructure that TACC developed for routing jobs from TACC systems to the volunteer devices and the cloud computing systems is described in this paper.

BOINC@TACC is funded through NSF award #1664022. The project collaborators are grateful to TACC, XSEDE, and the Science Gateway Community Institute (SGCI) for providing the resources required for implementing this project.


Contact

Faith Singer-Villalobos

Communications Manager
faith@tacc.utexas.edu | 512-232-5771

Aaron Dubrow

Science And Technology Writer
aarondubrow@tacc.utexas.edu

Jorge Salazar

Technical Writer/Editor
jorge@tacc.utexas.edu | 512-475-9411