Extended Collaborative Support Service (ECSS)

Learning more about ECSS

Learning More about XSEDE's Extended Collaborative Support Service

By Jan Zverina, XSEDE External Relations

One of the largest areas within the Extreme Science and Engineering Discovery Environment (XSEDE) is its Extended Collaborative Support Service, or ECSS. This service provides expert staff to assist research teams for either a short or an extended period using large-scale computing resources in order to advance the team's work.

Any U.S. researcher, whether at an academic institution, non-profit, or for-profit company, can request support as long as the work is published openly. Researchers can receive help in areas such as code optimization, optimizing complex workflows, porting to new system architectures, and using of accelerators such as GPUs for detailed visualizations – all at no cost to their grants.

Comprising roughly one-third of XSEDE's annual budget, the ECSS staff covers a wide variety of expertise, and is sized to support about 50 ECSS projects and 50 training events per year. ECSS is co-led by Nancy Wilkins-Diehr of SDSC and Ralph Roskies of PSC, both co-PIs of XSEDE. While most ECSS staff members come from research sites that have also received NSF grants to operate large-scale resources, the group also includes staff from other institutions who bring valuable expertise in areas such as digital humanities, workflows, and science gateways.

"We find this expertise increasingly necessary as the domain areas, the programming methods, and the advanced cyberinfrastructure resources allocated by XSEDE continue to diversify," notes Wilkins-Diehr.

The ECSS program, which evolved from the Advanced Support for TeraGrid Applications (ASTA) in the NSF program that preceded XSEDE, historically focused on improving code performance on supercomputers, including performance analysis, petascale optimization, debugging, and on the use of specific computing architectures and such.

One recent example of ECSS's assistance in that area involved a project led by Ramon Huerta, a research scientist with UC San Diego's BioCircuits Laboratory, to place chemical sensors – known as known as "e-noses" – in the homes of elderly participants in an effort to continuously and non-intrusively monitor their living environments. In preparation for the pilot study, time series classification software developed by Huerta's lab, applied to the sensor data to detect anomalous behavior that could suggest a change in a resident's health status, was ported to SDSC's Gordon supercomputer.

"We were able to improve the performance of the code through a combination of smart compiler choices and options, replacement of calls to the generic math library with calls to Intel's highly tuned MKL (Math Kernel Library), parallelization of key loops, and restructuring of the code to greatly reduce the number of linear algebra operations," said Robert Sinkovits, who leads SDSC's scientific applications efforts. "The end result was that calculations which previously took nearly twelve hours to finish could be completed in just a few minutes, with a total speedup of 167x relative to the original code."

Today, the expertise of ECSS staff members extends to science gateway development and workflow systems, the use of R, Java, and MATLAB, database optimization, cloud computing, data mining, and more. Moreover, while ECSS was established to provide researchers the support and expertise needed to conduct computationally-based science, the service also gives them an opportunity to learn new computational techniques.

"Most ECSS staff members have advanced degrees in scientific fields as well as technology expertise, and that means they speak the language of the researchers," according to PSC's Roskies. "While our domain expertise includes areas traditionally associated with high-end computing such as astrophysics, computational chemistry, climate modeling, and molecular dynamics, we are also prepared to assist researchers in emerging disciplines – areas that haven't traditionally used advanced computation such as genomics, machine learning, or predictive analytics."

How ECSS Works

ECSS assistance is requested through the XSEDE allocations process, the same process used to request CPU, data, and other resources are requested. Researchers are encouraged to identify areas where they might need specific assistance at the same time that they are planning their computational objectives. ECSS can be requested with small startup allocations as well as at any point in an allocation lifecycle as needs develop. ECSS collaborations can last from a number of weeks up to one year, and renewals are possible.

At the top level, ECSS is divided into two main areas: ECSS Projects, led by Roskies, where work is done primarily with individual research groups, and ECSS Communities, led by Wilkins-Diehr, where work benefits larger scientific communities. The areas work together closely, with ECSS staff often shifting back and forth between the two areas. Sub groups include:

Within ECSS Projects:

Extended Support for Research Teams (ESRT), led by Lonnie Crosby of NICS: This is a collaborative effort between an XSEDE user group and one or more ECSS staff members, with the goal of enhancing the research group's capability to transform knowledge using XSEDE-allocated resources and related technologies. These projects currently comprise about 60% of all ECSS projects.

Novel and Innovative Projects (NIP), led by Sergiu Sanielevici of PSC: This group seeks out projects by researchers in communities that don't typically use high-performance computing and advanced CI – areas that may include bioinformatics, economics, the social sciences, and arts and humanities.

Within ECSS Communities:

Extended Support for Community Codes (ESCC), led by John Cazes of TACC: ESCC's focus is on deploying, hardening, and optimizing software systems necessary for extensive research communities to create new knowledge using XSEDE resources and related technologies. ESCC staff also evaluate software that might be appropriate for installation on XSEDE resources.

Extended Support for Science Gateways (ESSGW), led by Marlon Pierce of Indiana University: This group's primary mission is to provide support to existing and new scientific communities that would like to use XSEDE resources through Science Gateways. ESSGW does not directly develop and support gateways, but supports science gateway operators via integration with XSEDE resources and choice of technologies.

Extended Support for Training, Education and Outreach (ESTEO), led by Jay Alameda of NCSA: ESTEO and Training staff survey existing online training materials delivered by all service providers and identify new areas where materials might benefit the community. Online training is increasingly popular with the user community when both time and travel budgets are limited.

"Our research shows that many XSEDE users, and potential users, remain unaware of both the availability and capability of ECSS resources," notes PSC's Sanielevici. "We're committed to changing that through a number of initiatives, such improving our web presence, increasing awareness of ECSS in XSEDE outreach and training materials, and making presentations to community groups such as the Campus Champions."

"Continued training of our own staff is also a high priority for ECSS as the need for diverse expertise expands," says Alameda. "One way of addressing this is our monthly web-based symposium, at which presenters discuss lessons learned from ongoing projects or provide an introduction to new capabilities being planned for XSEDE."