The US advances in high performance computing over many decades have been a product of the combined engagement of research centers in industry, government labs, and academia. Often these have been intertwined with cross collaborations in all possible combinations and under the guidance of Federal agencies with mission critical goals. But each class of R&D environment has operated at its own pace and with differing goals, strengths, and timeframes, the superposition of which has met the short, medium, and long term needs of the nation and the field of HPC.
Different countries from the Americas, Europe, Asia, and Africa have evolved their own formulas of such combinations sometimes in cooperation with others. Many, but not all, emphasize the educational component of academic contributions for workforce development, incorporate the products of international industrial suppliers, and specialize their own government bodies to specific needs. In the US, academic involvement has provided critical long-term vision and perhaps most importantly greatly expanded the areas of pursuit.
The field of HPC is unique in that its success appears heavily weighted in terms of its impact on adoption by industry and community. This tight coupling sometimes works against certain classes of research, especially those that explore long term technologies, that investigate approaches outside the mainstream, or that require substantial infrastructure often beyond the capabilities or finances of academic partners. A more subtle but insidious factor is the all-important driver of legacy applications, often agency mission critical, that embody past practices constraining future possibilities.
How university research in HPC stays vibrant, advances the state of the art, and still makes useful contributions to the real world is a challenge that demands innovation in organization within schools and colleges. Perhaps most importantly, real research as opposed to important development not only involves but demands risk – it is the exploration of the unknown. Risk adverse strategies are important when goals and approaches are already determined and time to deployment is the determining factor of success. But when beyond a certain point, honesty recognizes that future methods are outside the scope of certainty, then the scientific method applies and when employed must not just tolerate by benefit from uncertainty of outcome.
Without such research into the unknown, the field is restricted to incremental perturbations of the conventional, essentially limiting the future to the cul de sac of the past. This is insufficient to drive the future means into areas beyond our sight. The power and richness of the mixed and counter balancing approaches of government labs, industry, and academia guarantee both the near-term quality of deployable hardware and software platforms and the long-term as yet understood improved concepts where the enabling technologies and their trends are distinct from the present.
This is the strength of the US HPC R&D approach and was reflected in the 2015 NSCI executive order for exascale computing. How academia conducts its component of this triad is a bit of a messy and diverse methodology sensitive to the nature of the institutions of which they are a part, the priorities of their universities, funding sources, and the vision of the individual faculty and senior administrators responsible for its direction, strategy, staffing, facilities, and accomplishments by which success will be measured. This article presents one such enterprise, the Center for Research for Extreme Scale Technologies (CREST) at Indiana University (IU) which incorporates one possible strategy balancing cost, impact, and risk on the national stage.
CREST is a medium scale research center, somewhere between small single-faculty led research groups found at many universities and those few premiere research environments such as the multiple large-scale academic laboratories at MIT and similar facilities like TACC and NCSA at UT-Austin and UIUC, respectively. While total staffing numbers are routinely in flux, a representative number is on the order of 50 people. It occupies a modern two-story building of about 20,000 square feet conveniently located within walking distance of the IU Bloomington campus and the center of the city.
CREST was established in the fall of 2011 by Prof. Andrew Lumsdaine as its founding Director, Dr. Craig Stewart as its Assistant Director, and Prof. Thomas Sterling as its Chief Scientist. Over almost six years of its existence, CREST has evolved with changes in responsibilities. Sterling currently serves as Director, Prof. Martin Swany as Associate Director, and Laura Pettit as Assistant Director. Overall staffing is deemed particularly important to ensure that all required operating functions are performed. This means significant engagement of administrative staff which is not typical of academic environments. But cost effectiveness to maximize productivity in research and education is a goal eliminating tasks that could be better performed, and at lower cost, by others. An important strategy of CREST is let everyone working as part of a team do what they are best at resulting in highest impact at lowest cost.
As per IU policy, research direction is faculty led with as many as six professors slotted for CREST augmented with another half dozen full-time research scientists including post-docs. A small number of hardware and software engineers both expedites and enhances quality of prototype development for experimentation and product delivery to collaborating institutions. CREST can support as many as three-dozen doctoral students with additional facilities for Masters and undergraduate students.
Organizationally, CREST has oversight by the Office of the Dean of the IU School of Informatics and Computing (SOIC) in cooperation with the Office of the VP of IT and the Office of the VP of Research. It coexists with the many departments making up SOIC and has the potential to include faculty and students from any and all of them. It also extends its contributions and collaborations to other departments within the university as research opportunities and interdisciplinary projects permit. While these details are appropriate, they are rather prosaic and more importantly do not describe either the mandate or the essence of CREST; that is about the research it enables.
CREST was established, not for the purposes of creating a research center, but as an enabler to conduct a focused area of research; specifically, to advance the state-of-the-art in high performance computing systems beyond conventional practices. This was neither arbitrary nor naive on the part of IU senior leadership and was viewed as the missing piece of an ambitious but realizable strategy to bring HPC leadership and capability to Indiana. Already in place was strong elements of cyber-infrastructure support and HPC data center facilities for research and education. More about this shortly. CREST was created as the third pillar of this HPC thrust by bringing original research to IU in hardware and software with a balanced portfolio of near and long term initiatives providing both initial computing environments of immediate value and extended exploration of alternative concepts unlikely to be undertaken by mainstream product oriented activities. Therefore, the CREST research strategy addresses real-world challenges in HPC including classes of applications not currently well satisfied through incremental changes to conventional practices.
One of the critical factors in the impact of CREST is its close affiliation with the Office of the Vice President for Information Technology (OVPIT), including the IU Pervasive Technology Institute (IUPTI), and University Information Technology Services (UITS). This dramatically reduces the costs and ancillary activities of CREST research by leveraging the major investments of OVPIT in support of broader facilities and services for the IU computing community permitting CREST as a work unit to be more precisely focused on its mission research while staying lean and mean. IU VP for IT and COI Brad Wheeler played an instrumental role in the creation of CREST and the recruitment of Thomas Sterling and Martin Swany to IU.
The IUPTI operates supercomputers with more than 1 PetaFLOPS aggregate processing capability, including the new Big Red II Plus, a Cray supercomputer allowing large scale testing and performance analysis of HPX+ software. This is housed and operated in a state-of-the-art 33,000 square feet data center that among its other attributes is tornado proof. IUPTI exists to aid the transformation of computer science innovation into tools usable by the practicing scientist within IU. IUPTI creates special provisions for support of CREST software on their systems and at the same time has provided two experimental compute systems (one cluster, one very small Cray test system) for dedicated use within CREST.
IUPTI staff are engaged and active in CREST activities. For example, IUPTI Executive Director Craig Stewart gave the keynote address at the 2016 SPPEXA (Special Priority Project on EXascale Applications) held in Munich, and discussed US Exascale initiatives in general and CREST technologies in particular. IUPTI coordinates their interactions with vendors with CREST so as to create opportunities for R&D partnerships and promulgation of CREST software. Last, and definitely not least, the UITS Learning Technologies Division CREST in distribution of online teaching materials created by CREST. All in all, CREST, SOIC, and OVPIT are partners in supporting basic research in HPC and rendering CS innovations to practical use for science and society while managing costs.
The CREST charter is one of focused research towards a common goal of advancing future generation of HPC system structures and applications; the Center is simply a vehicle for achieving IU’s goals in HPC and the associated research objectives, rather than is its actual existence the purpose itself. The research premise is that key factors determine ultimate delivered performance. These are: starvation, latency, overhead, waiting for contention resolution, availability including resilience, and the normalizing operation issue rate reflecting power (e.g., clock rate). Additional factors of performance portability and user productivity also contribute to overall effectiveness of any particular strategy of computation.
A core postulate of CREST HPC research and experimental development is the opportunity to address these challenge parameters through dynamic adaptive techniques through runtime resource management and task scheduling to achieve (if/when possible) dramatic improvements in computing efficiency and scalability. The specific foundational principles of the dynamic computational method used are established by the experimental ParalleX execution model which expands computational parallelism, addresses the challenge of uncertainty caused by asynchrony, permits exploitation of heterogeneity, and exhibits a global name space to the application.
ParalleX is intended to replace prior execution models such as Communicating Sequential Processes (CSP), SMP-based multiple threaded shared memory computing (e.g., OpenMP), vector and SIMD-array computing, and the original von Neumann derivatives. ParalleX has been formally specified through operational semantics by Prof. Jeremy Siek for verification of correctness, completeness, and compliance. As a first reduction to practice, a family of HPX runtime systems have been developed and deployed for experimentation and application. LSU has guided important extensions to C++ standards led by Dr. Hartmut Kaiser. HPX+ is being used to extend the earlier HPX-5 runtime developed by Dr. Luke D’Alessandro and others into areas of cyber-physical systems and other diverse application domains while supporting experiments in computer architecture.
One important area pursued by CREST in system design and operation is advanced lightweight messaging and control through the Photon communication protocol led by Prof. Martin Swany with additional work in low overhead NIC design. Many application areas have been explored. Some conventional problems exhibiting static regular data structures show little improvement through these methods. But many applications incorporating time-varying irregular data structures such as graphs found in adaptive mesh refinement, wavelet algorithms, N-body problems, particle in cell codes, and fast multiple methods among others demonstrate improvements, sometimes significant, in the multi-dimensional performance tradeoff space. These codes are developed by Drs. Matt Anderson, Bo Zhang, and others have driven this research while producing useful codes including the DASHMM library.
The CREST research benefits from both internal and external sponsorship. CREST has contributed to NSF, DOE, DARPA, and NSA projects over the last half dozen years and continues to participate in advanced research projects as appropriate. CREST represents an important experience base in advancing academic research in HPC systems for future scalable computing, employing co-design methodologies between applications and innovations in hardware and software system structures and continues to evolve. It provides a nurturing environment for mentoring of graduate students and post-docs in the context of advanced research even as the field itself continues to change under national demands and changing technology opportunities and challenges.