Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Richard Tran Mills

dblp:93/730 · DBLP profile ↗
← Back
11ranked-venue papers
4as first author
2since 2021 · last 2022
0000-0003-0683-6899ORCID · reported

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 10 · 4 first-author · 2 since 2021Applied, interdisciplinary, general and emerging computing · 1

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Computer architecture, parallel and distributed computing, and storage systems
2 papers
Distributed systems · 75% GPUs and heterogeneous computing · 11% Memory systems · 5%

Topics — the 6 heaviest of 8, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Distributed systems › distributed communication
communication patterns
0.612022
The PetscSF Scalable Communication Layer · IEEE Trans. Parallel Distributed Syst. 2022
Distributed systems › distributed system architecture › communication architecture
scalable communication infrastructure
0.612022
The PetscSF Scalable Communication Layer · IEEE Trans. Parallel Distributed Syst. 2022
Storage systems
out-of-core computation
0.112006
Runtime Support for Memory Adaptation in Scientific Applications via Local Disk and Remote Memory · HPDC 2006
Memory systems
remote memory
0.112006
Runtime Support for Memory Adaptation in Scientific Applications via Local Disk and Remote Memory · HPDC 2006
High-performance computing
scientific computing systems
0.112006
Runtime Support for Memory Adaptation in Scientific Applications via Local Disk and Remote Memory · HPDC 2006
Memory systems › memory management
virtual memory
0.012006
Runtime Support for Memory Adaptation in Scientific Applications via Local Disk and Remote Memory · HPDC 2006

Methods — techniques the papers use, named apart from their topics

NVSHMEM · 0.6MPI · 0.6memory malleability · 0.1MPI communication · 0.1
YearPublicationVenuePosition
2022 The PetscSF Scalable Communication Layer
abstract
PetscSF, the communication component of the Portable, Extensible Toolkit for Scientific Computation (PETSc), is designed to provide PETSc's communication infrastructure suitable for exascale computers that utilize GPUs and other accelerators. PetscSF provides a simple application programming interface (API) for managing common communication patterns in scientific computations by using a star-forest graph representation. PetscSF supports several implementations based on MPI and NVSHMEM, whose selection is based on the characteristics of the application or the target architecture. An efficient and portable model for network and intra-node communication is essential for implementing large-scale applications. The Message Passing Interface, which has been the de facto standard for distributed memory systems, has developed into a large complex API that does not yet provide high performance on the emerging heterogeneous CPU-GPU-based exascale systems. In this article, we discuss the design of PetscSF, how it can overcome some difficulties of working directly with MPI on GPUs, and we demonstrate its performance, scalability, and novel features.
Junchao Zhang 0002, Jed Brown, Satish Balay, Jacob Faibussowitsch, Matthew G. Knepley, Oana Marin, Richard Tran Mills, Todd S. Munson, Barry Smith 0002, Stefano Zampini
IEEE Trans. Parallel Distributed Syst.7
2021 Toward performance-portable PETSc for GPU-based exascale systems
Richard Tran Mills, Mark F. Adams, Satish Balay, Jed Brown, Alp Dener, Matthew G. Knepley, Scott Kruger, Hannah Morgan, Todd S. Munson, Karl Rupp, Barry Smith 0002, Stefano Zampini, Hong Zhang 0006, Junchao Zhang 0002
Parallel Comput.1
2018 Vectorized Parallel Sparse Matrix-Vector Multiplication in PETSc Using AVX-512
abstract
Emerging many-core CPU architectures with high degrees of single-instruction, multiple data (SIMD) parallelism promise to enable increasingly ambitious simulations based on partial differential equations (PDEs) via extreme-scale computing. However, such architectures present several challenges to their efficient use. Here, we explore the efficient implementation of sparse matrix-vector (SpMV) multiplications---a critical kernel for the workhorse iterative linear solvers used in most PDE-based simulations---on recent CPU architectures from Intel as well as the second-generation Knights Landing Intel Xeon Phi, which features many CPU cores, wide SIMD lanes, and on-package high-bandwidth memory. Traditional SpMV algorithms use compressed sparse row storage format, which is a hindrance to exploiting wide SIMD lanes. We study alternative matrix formats and present an efficient optimized SpMV kernel, based on a sliced ELLPACK representation, which we have implemented in the PETSc library. In addition, we demonstrate the benefit of using this representation to accelerate preconditioned iterative solvers in realistic PDE-based simulations in parallel.
Hong Zhang 0006, Richard Tran Mills, Karl Rupp, Barry Smith 0002
ICPP2
2017 Parallel Multivariate Spatio-Temporal Clustering of Large Ecological Datasets on Hybrid Supercomputers
abstract
A proliferation of data from vast networks of remote sensing platforms (satellites, unmanned aircraft systems (UAS), airborne etc.), observational facilities (meteorological, eddy covariance etc.), state-of-the-art sensors, and simulation models offer unprecedented opportunities for scientific discovery. Unsupervised classification is a widely applied data mining approach to derive insights from such data. However, classification of very large data sets is a complex computational problem that requires efficient numerical algorithms and implementations on high performance computing (HPC) platforms. Additionally, increasing power, space, cooling and efficiency requirements has led to the deployment of hybrid supercomputing platforms with complex architectures and memory hierarchies like the Titan system at Oak Ridge National Laboratory. The advent of such accelerated computing architectures offers new challenges and opportunities for big data analytics in general and specifically, large scale cluster analysis in our case. Although there is an existing body of work on parallel cluster analysis, those approaches do not fully meet the needs imposed by the nature and size of our large data sets. Moreover, they had scaling limitations and were mostly limited to traditional distributed memory computing platforms. We present a parallel Multivariate Spatio-Temporal Clustering (MSTC) technique based on k-means cluster analysis that can target hybrid supercomputers like Titan. We developed a hybrid MPI, CUDA and OpenACC implementation that can utilize both CPU and GPU resources on computational nodes. We describe performance results on Titan that demonstrate the scalability and efficacy of our approach in processing large ecological data sets.
Sarat Sreepathi, Jitendra Kumar 0001, Richard Tran Mills, Forrest M. Hoffman, Vamsi Sripathi, William W. Hargrove
CLUSTER3
2014 Hierarchical Krylov and nested Krylov methods for extreme-scale computing
Lois C. McInnes, Barry Smith 0002, Hong Zhang 0006, Richard Tran Mills
Parallel Comput.4
2013 SCORPIO: A scalable two-phase parallel I/O library with application to a large scale subsurface simulator
abstract
Inefficient parallel I/O is known to be a major bottleneck among scientific applications employed on supercomputers as the number of processor cores grows into the thousands. Our prior experience indicated that parallel I/O libraries such as HDF5 that rely on MPI-IO do not scale well beyond 10K processor cores, especially on parallel file systems (like Lustre) with single point of resource contention. Our previous optimization efforts for a massively parallel multi-phase and multi-component subsurface simulator (PFLOTRAN) led to a two-phase I/O approach at the application level where a set of designated processes participate in the I/O process by splitting the I/O operation into a communication phase and a disk I/O phase. The designated I/O processes are created by splitting the MPI global communicator into multiple sub-communicators. The root process in each sub-communicator is responsible for performing the I/O operations for the entire group and then distributing the data to rest of the group. This approach resulted in over 25X speedup in HDF I/O read performance and 3X speedup in write performance for PFLOTRAN at over 100K processor cores on the ORNL Jaguar supercomputer. This research describes the design and development of a general purpose parallel I/O library called Scorpio that incorporates our optimized two-phase I/O approach. The library provides a simplified higher level abstraction to the user, sitting atop existing parallel I/O libraries (such as HDF5) and implements optimized I/O access patterns that can scale on larger number of processors. Performance results with standard benchmark problems and PFLOTRAN indicate that our library is able to maintain the same speedups as before with the added flexibility of being applicable to a wider range of I/O intensive applications.
Sarat Sreepathi, Vamsi Sripathi, Richard Tran Mills, Glenn Hammond, G. (Kumar) Mahinthakumar
HiPC3
2010 Geospatiotemporal data mining in an early warning system for forest threats in the United States
abstract
We investigate the potential of geospatiotemporal data mining of multi-year land surface phenology data (250 m Normalized Difference Vegetation Index (NDVI) values derived from the Moderate Resolution Imaging Spectroradiometer (MODIS) in this study) for the conterminous United States as part of an early warning system to identify threats to forest ecosystems. Cluster analysis of this massive data set, using high-performance computing, provides a basis for several possible approaches to defining the bounds of “normal” phenological patterns, indicating healthy vegetation in a given geographic location. We demonstrate the applicability of such an approach, using it to identify areas in Colorado, USA, where an ongoing mountain pine beetle outbreak has caused significant tree mortality.
Forrest M. Hoffman, Richard Tran Mills, Jitendra Kumar 0001, Srinivasa S. Vulli, William W. Hargrove
IGARSS2
2007 Runtime and Programming Support for Memory Adaptation in Scientific Applications via Local Disk and Remote Memory
Richard Tran Mills, Chuan Yue, Andreas Stathopoulos, Dimitrios S. Nikolopoulos
J. Grid Comput.1
2006 Runtime Support for Memory Adaptation in Scientific Applications via Local Disk and Remote Memory
abstract
The ever increasing memory demands of many scientific applications and the complexity of today's shared computational resources still require the occasional use of virtual memory, network memory, or even out-of-core implementations, with well known drawbacks in performance and usability. In this paper, we present a general framework, based on our earlier MML B prototype, that enables fully customizable, memory malleability in a wide variety of scientific applications. We provide several necessary enhancements to the environment sensing capabilities of MMLIB and introduce a remote memory capability, based on MPI communication of cached memory blocks between `compute nodes' and designated memory servers. We show experimental results from three important scientific applications that require the general MML B framework. Under constant memory pressure, we observe execution time improvements of factors between three and five over relying solely on the virtual memory system. With remote memory employed, these factors are even larger and significantly better than other, system-level remote memory implementations
Chuan Yue, Richard Tran Mills, Andreas Stathopoulos, Dimitrios S. Nikolopoulos
HPDC2
2004 Adapting to Memory Pressure from within Scientific Applications on Multiprogrammed COWs
abstract
Summary form only given. Dismal performance often results when the memory requirements of a process exceed the physical memory available to it. Moreover, significant throughput reduction is experienced when this process is part of a synchronous parallel job on a nondedicated computational cluster. A possible solution is to develop programs that can dynamically adapt their memory usage according to the current availability of physical memory. We explore this idea on scientific computations that perform repetitive data accesses. Part of the program's data set is cached in resident memory, while the remainder that cannot fit is accessed in an "out-of-core" fashion from disk. The replacement policy can be user defined. This allows for a graceful degradation of performance as memory becomes scarce. To dynamically adjust its memory usage, the program must reliably answer whether there is a memory shortage or surplus in the system. Because operating systems typically export limited memory information, we develop a parameter-free algorithm that uses no system information beyond the resident set size (RSS) of the program. Our resulting library can be called by scientific codes with little change to their structure or with no change at all, if computations are already "blocked" for reasons of locality. Experimental results with both sequential and parallel versions of a memory-adaptive conjugate-gradient linear system solver show substantial performance gains over the original version that relies on the virtual memory system. Furthermore, multiple instances of the adaptive code can coexist on the same node with little interference with one another.
Richard Tran Mills, Andreas Stathopoulos, Dimitrios S. Nikolopoulos
IPDPS1
2001 Algorithmic modifications to the Jacobi-Davidson parallel eigensolver to dynamically balance external CPU and memory load
abstract
Clusters of workstations (COWs) and SMPs have become popular and cost effective means of solving scientific problems. Because such environments may be heterogenous and/or time shared, dynamic load balancing is central to achieving high performance. Our thesis is that new levels of sophistication are required in parallel algorithm design and in the interaction of the algorithms with the runtime system. To support this thesis, we illustrate a novel approach for application-level balancing of external CPU and memory load on parallel iterative methods that employ some form of local preconditioning on each node. There are two key ideas. First, because all nodes need not perform their portion of the preconditioning phase to the same accuracy, the code can achieve perfect loadbalance, dynamically adapting to external CPU load, if we stop the preconditioning phase on all processors after a fixed amount of time. Second, if the program detects memory thrashing on a node, it recedes its preconditioning phase from that node, hopefully speeding the completion of competing jobs hence the relinquishing of their resources. We have implemented our load balancing approach in a state-of-the-art, coarse grain parallel Jacobi-Davidson eigensolver. Experimental results show that the new method adapts its algorithm based on runtime system information, without compromising the overall convergence behavior. We demonstrate the effectiveness of the new algorithm in a COW environment under (a) variable CPU load and (b) variable memory availability caused by competing applications.
Richard Tran Mills, Andreas Stathopoulos, Evgenia Smirni
ICS1