Home

Our lab primarily focuses on energy-efficient computer architectures and emerging computing computing paradigms (including but not limited to neuromorphic computing). Our research broadly covers computing systems (including software/hardware interactions) and how emerging technologies, programming languages, and applications shape the future generation computing systems, particularly from the energy efficiency and reliability point of views.

Motivated by the fact that Moore’s Law — the most prominent phenomenon for a computer architect — is under pressure, our lab’s research agenda has directions towards both software and hardware solutions for  computationally demanding applications, such as machine learning, big-data analytics, general artificial intelligence, and scientific applications. To maintain the ever-increasing computing demand of such contemporary applications, we have to survive either by scaling up the systems (building highly parallel and distributed systems), or by specializing on important set of algorithms/operations (e.g., matrix-vector multiplication), until disruptive post-CMOS technologies operating at orders of magnitude efficiency margins become feasible to manufacture and commercially viable.  Consequently, our research focus can be split into two general directions: (i) addressing the computational challenges of today, and (ii) exploring the opportunities for the future (considering both SW and HW).

We can broadly list our research efforts under the following topics:

  • Hardware and Software Techniques for Energy-Efficient Computing (including approximation, code optimization, parallelization, microarchitectural enhancements)
  • Architecture and Programming Models for Emerging Computing Paradigms (Neuromorphic Computing, Spiking Neural Networks)
  • Parallel Programming, Programming for Heterogeneous Systems (including CPUs, GPUs, FPGAs, and accelerators)
  • Sustainable Computing