Xiaoning Ding

Associate Professor

xiaoning.ding@njit.edu

Research Areas: Cloud/edge computing infrastructures, system designs for AI/DL, system software designs, database and data storage systems

Management of Disaggregated and Dynamic Resources in Clouds and Edges

In the post Moore’s law era, computing resources are undergoing fundamental changes in many aspects (e.g., types, architectures and features). In clouds and edges, computing resources are increasingly heterogeneous (e.g., many varieties of processors and accelerators), disaggregated (e.g., local and remote memory pooled together and made available through fast network) and dynamic (e.g., resource availability changing over time). These changes enable new computing paradigms and optimization opportunities yet raise new challenges in resource management.

System Software for Scalable Computation in the Cloud

As computational resources continue to increase, we need ways to scale the performance of these computers by taking advantage of the extra resources. The objective is to guarantee that applications in the cloud can achieve higher performance when presented with more resources.

Alex Gerbessiotis

Associate Professor

alexg@njit.edu

Research Areas: Architecture-independent parallel algorithm design and implementation

Multi-Core and Many-Core Algorithm Design, Analysis and Implementation

We study models of computation that abstract and capture parallelism in the presence of multiple memory hierarchies and cores. New approaches are needed to make multi-core architectures accessible to software designers in domains such as machine learning and big data. Abstracting the programming requirements of such architectures in a useful and usable manner is necessary to increase processing speed and improve memory performance.

Parallel Computing Techniques in Sequential Serial Computing

The norm in computing is to port sequential algorithms that work on one processor into multicore or parallel algorithms intended for multiple cores and processors. Amdahl’s Law highlights the limitations of using multiple cores in programs with an inherently sequential component that is not amenable to parallelization. We address this by exploring the utilization of parallel computing techniques to speed up a sequential program by exploiting the multiple memory hierarchies present in contemporary microprocessors, even if its multi-core capabilities are left unexploited.

Jing Li

Associate Professor

jingli@njit.edu

Research Areas: Real-time systems, parallel computing, cyber-physical systems and reinforcement learning for system design and optimization

Parallel Real-Time Systems

Real-time systems need to provide timing guarantees for latency-critical applications in cyber- physical systems that interact with humans or the physical environment. Examples span autonomous vehicles, drones, avionic systems and robotics to structural health monitoring systems and hybrid simulation systems in earthquake engineering. However, as parallel machines become ubiquitous, we face challenges in designing real-time systems that can fully utilize the efficiencies of parallel and heterogeneous computing platforms. We are developing parallel realtime systems by exploiting the untapped efficiencies in the parallel platforms, drastically improving the system performance of a cyber-physical system.

Scheduling for Interactive Cloud Services

Delivering consistent interactive latencies, such as response delays, is the key performance metric of interactive cloud services that significantly impacts user experience. The need to guarantee low-service latency, while supporting increasing computational demands due to complex functions of the services, requires parallel scheduling infrastructure to effectively harness parallelism in the computation and efficiently utilize system resources. Our research designs, analyzes and implements scheduling strategies that are measurably good and practically efficient to provide various quality-of-service guarantees on cloud service latency.

Andrew Sohn

Associate Professor

sohna@njit.edu

Research Areas: GPU Cluster Programming, Linux Kernel Development

GPU Cluster Programming for Solving LargeScale Generative AI Problems

Recent reports revealed that the ChatGPT-4 model, which consists of over 1.76 trillion parameters and was released in March 2023, utilized over 30,000 Nvidia A100 GPUs, each with well over 10,000 cores, resulting in a total of over 300 million GPU cores. Given the enormity of 1.76 trillion parameters and the trillions of samples used to train the model, programming such a vast number of machines, GPU cores and samples is undeniably challenging. Our research is dedicated to developing scalable and enabling technologies for addressing large-scale generative AI problems using MPI and CUDA. We have been experimenting with this technology on a small scale and are currently expanding to build a laboratory aimed at establishing a large-scale problem-solving platform with MPI and CUDA.performance of a cyber-physical system.

Predictive Analytics on a Cluster of Computers

Predicting viral events in social networks in real time is challenging as events can unfold in a matter of months, weeks, days or even hours. We have been developing a system of hardware and software for real-time analytics, specifically targeting the prediction of viral events in social networks using a cluster of computers. One of the key enabling technologies is inertial spectral graph partitioning, developed in collaboration with NASA and Berkeley Lab. We have successfully implemented the framework to predict viral events in social networks, achieving over 70% accuracy on large-scale dynamic temporal Wikipedia graphs. We are currently working on further improving prediction accuracy.