Demo Data from EDBT 2026 / reviewers in the wild / expert
Karthik Gururaj
dblp:70/2554
· DBLP profile ↗
16ranked-venue papers
0as first author
0since 2021 · last 2014
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 16Software engineering, systems software and programming languages · 1Applied, 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
6 papers |
Electronic design automation · 33% Processor architecture and microarchitecture · 27% Hardware accelerators and domain-specific architectures · 18% | |
| Theoretical computer science
1 paper |
Mathematical optimization · 100% |
Topics — the 16 heaviest of 20, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Hardware accelerators and domain-specific architectures › accelerator architecture
accelerator-rich architecture |
0.2 | 1 | 2014 | Accelerator-Rich Architectures: Opportunities and Progresses · DAC 2014 |
Processor architecture and microarchitecture › instruction set architecture
instruction set extension |
0.2 | 1 | 2013 | Architecture support for custom instructions with memory operations · FPGA 2013 |
Processor architecture and microarchitecture › memory system microarchitecture
memory ordering |
0.2 | 1 | 2013 | Architecture support for custom instructions with memory operations · FPGA 2013 |
Processor architecture and microarchitecture
superscalar processor |
0.2 | 1 | 2013 | Architecture support for custom instructions with memory operations · FPGA 2013 |
Reconfigurable computing and FPGAs
FPGA accelerator |
0.1 | 1 | 2010 | Accelerating Monte Carlo based SSTA using FPGA · FPGA 2010 |
Electronic design automation › timing analysis
static timing analysis |
0.1 | 1 | 2010 | Accelerating Monte Carlo based SSTA using FPGA · FPGA 2010 |
Electronic design automation › timing analysis › statistical timing analysis
statistical static timing analysis |
0.1 | 1 | 2010 | Accelerating Monte Carlo based SSTA using FPGA · FPGA 2010 |
Electronic design automation › high-level synthesis › arithmetic-level optimization
bit-width optimization |
0.1 | 1 | 2009 | Revisiting bitwidth optimizations · FPGA 2009 |
Electronic design automation
high-level synthesis |
0.1 | 1 | 2009 | Revisiting bitwidth optimizations · FPGA 2009 |
Reconfigurable computing and FPGAs
high-performance reconfigurable computing |
0.1 | 1 | 2009 | Synthesis of reconfigurable high-performance multicore systems · FPGA 2009 |
Interconnection networks and networks-on-chip
communication bottleneck |
0.1 | 1 | 2008 | Communication bottleneck in hardware-software partitioning · FPGA 2008 |
Electronic design automation
hardware/software co-design |
0.1 | 1 | 2008 | Communication bottleneck in hardware-software partitioning · FPGA 2008 |
Electronic design automation › hardware/software co-design
hardware/software partitioning |
0.1 | 1 | 2008 | Communication bottleneck in hardware-software partitioning · FPGA 2008 |
Electronic design automation
hardware verification and test |
0.0 | 1 | 2010 | Accelerating Monte Carlo based SSTA using FPGA · FPGA 2010 |
Mathematical optimization › continuous optimization
convex optimization |
0.0 | 1 | 2009 | Revisiting bitwidth optimizations · FPGA 2009 |
Embedded and real-time systems
embedded system design |
0.0 | 1 | 2008 | Communication bottleneck in hardware-software partitioning · FPGA 2008 |
Methods — techniques the papers use, named apart from their topics
range analysis · 0.2precision analysis · 0.2interval arithmetic · 0.2convex optimization · 0.2architecture design · 0.2pattern matching · 0.1mathematical programming · 0.1high-level synthesis · 0.1approximation algorithm · 0.1benchmark evaluation · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2014 | Accelerator-Rich Architectures: Opportunities and ProgressesabstractTo drastically improve energy efficiency, we believe future processors need to go beyond parallelization and provide architecture support for customization, enabling systems to adapt to different application domains. In particular, we believe future architectures will make extensive use of accelerators to significantly reduce energy consumption. Such architectures present many new challenges and opportunities, such as accelerator synthesis, scheduling, sharing, virtualization, memory hierarchy optimization, and efficient compilation and runtime support. With respect to these areas, we review the progress of our research in the Center for Domain-Specific Computing (supported by the NSF Expeditions-in-Computing Award), and discuss ongoing work and additional challenges. Jason Cong, Mohammad Ali Ghodrat, Michael Gill, Beayna Grigorian, Karthik Gururaj, Glenn Reinman |
DAC | 5 |
| 2013 | Architecture support for custom instructions with memory operationsabstractCustomized instructions (CIs) implemented using custom functional units (CFUs) have been proposed as a way of improving performance and energy efficiency of software while minimizing cost of designing and verifying accelerators from scratch. However, previous work allows CIs to only communicate with the processor through registers or with limited memory operations. In this work we propose an architecture that allows CIs to seamlessly execute memory operations without any special synchronization operations to guarantee program order of instructions. Our results show that our architecture can provide 24\% energy savings with 14% performance improvement for 2-issue and 4-issue superscalar processor cores. Jason Cong, Karthik Gururaj |
FPGA | 2 |
| 2013 | Efficient compilation of CUDA kernels for high-performance computing on FPGAsabstractThe rise of multicore architectures across all computing domains has opened the door to heterogeneous multiprocessors, where processors of different compute characteristics can be combined to effectively boost the performance per watt of different application kernels. GPUs, in particular, are becoming very popular for speeding up compute-intensive kernels of scientific, imaging, and simulation applications. New programming models that facilitate parallel processing on heterogeneous systems containing GPUs are spreading rapidly in the computing community. By leveraging these investments, the developers of other accelerators have an opportunity to significantly reduce the programming effort by supporting those accelerator models already gaining popularity. In this work, we adapt one such language, the CUDA programming model, into a new FPGA design flow called FCUDA, which efficiently maps the coarse- and fine-grained parallelism exposed in CUDA onto the reconfigurable fabric. Our CUDA-to-FPGA flow employs AutoPilot, an advanced high-level synthesis tool (available from Xilinx) which enables high-abstraction FPGA programming. FCUDA is based on a source-to-source compilation that transforms the SIMT (Single Instruction, Multiple Thread) CUDA code into task-level parallel C code for AutoPilot. We describe the details of our CUDA-to-FPGA flow and demonstrate the highly competitive performance of the resulting customized FPGA multicore accelerators. To the best of our knowledge, this is the first CUDA-to-FPGA flow to demonstrate the applicability and potential advantage of using the CUDA programming model for high-performance computing in FPGAs. Alexandros Papakonstantinou, Karthik Gururaj, John A. Stratton, Deming Chen, Jason Cong, Wen-Mei W. Hwu |
ACM Trans. Embed. Comput. Syst. | 2 |
| 2011 | Domain-specific processor with 3D integration for medical image processingabstractThe growth of 3D technology had led to opportunities for stacked multiprocessor-accelerator computing platforms with high-bandwidth and low-latency TSV connections between them, resulting in high computing performance and better energy efficiency. This work evaluates the performance and energy benefits of such an advanced architecture and addresses associated design problems. To better utilize the reconfigurable hardware resource and to explore the opportunity of kernel sharing across applications, we propose to use a dedicated domain-specific computing platform. In particular, we have chosen medical image processing as the domain in this work to accelerate due to its growing for real-time processing demand yet inadequete performance on conventional computing architectures. A design flow is proposed in this work for the 3D multiprocessor-accelerator platform and a number of methods are applied to optimize the average performance of all the applications in the targeted domain under area and bandwidth constraints. Experiments show that the applications in this domain can gain a 7.4× speed-up and 18.8× energy savings on average running on our platform using CMP cores and domain-specific accelerators as compared to their counterparts coded in CPU only. Jason Cong, Karthik Gururaj, Muhuan Huang, Bingjun Xiao, Yi Zou 0001 |
ASAP | 2 |
| 2011 | Multilevel Granularity Parallelism Synthesis on FPGAsabstractRecent progress in High-Level Synthesis (HLS) techniques has helped raise the abstraction level of FPGA programming. However implementation and performance evaluation of the HLS-generated RTL, involves lengthy logic synthesis and physical design flows. Moreover, mapping of different levels of coarse grained parallelism onto hardware spatial parallelism affects the final FPGA-based performance both in terms of cycles and frequency. Evaluation of the rich design space through the full implementation flow - starting with high level source code and ending with routed net list - is prohibitive in various scientific and computing domains, thus hindering the adoption of reconfigurable computing. This work presents a framework for multilevel granularity parallelism exploration with HLS-order of efficiency. Our framework considers different granularities of parallelism for mapping CUDA kernels onto high performance FPGA-based accelerators. We leverage resource and clock period models to estimate the impact of multi-granularity parallelism extraction on execution cycles and frequency. The proposed Multilevel Granularity Parallelism Synthesis (ML-GPS) framework employs an efficient design space search heuristic in tandem with the estimation models as well as design layout information to derive a performance near-optimal configuration. Our experimental results demonstrate that ML-GPS can efficiently identify and generate CUDA kernel configurations that can significantly outperform previous related tools whereas it can offer competitive performance compared to software kernel execution on GPUs at a fraction of the energy cost. Alexandros Papakonstantinou, Yun Liang 0001, John A. Stratton, Karthik Gururaj, Deming Chen, Wen-Mei W. Hwu, Jason Cong |
FCCM | 4 |
| 2011 | Assuring application-level correctness against soft errorsabstractTraditionally, research in fault tolerance has required architectural state to be numerically perfect for program execution to be correct. However, in many programs, even if execution is not 100% numerically correct, the program can still appear to execute correctly from the user's perspective. To quantify user satisfaction, application-level fidelity metrics (such as PSNR) can be used. The output for such applications is defined to be correct if the fidelity metrics satisfy a certain threshold. However, such applications still contain instructions whose outputs are critical - i.e. their correctness decides if the overall quality of the program output is acceptable. In this paper, we present an analysis technique for identifying such critical program segments. More importantly, our technique is capable of guaranteeing application-level correctness through a combination of static analysis and runtime monitoring. Our static analysis consists of data flow analysis followed by control flow analysis to find static critical instructions which affect several instructions. Critical instructions are further refined into likely non-critical and likely critical sets in a profiling phase. At runtime, we use a monitoring scheme to monitor likely non-critical instructions and take remedial actions if some likely non-critical instructions become critical. Based on this analysis, we minimize the number of instructions that are duplicated and checked at runtime using a software-based fault detection and recovery technique [20]. Put together, our approach can lead to 22% average energy savings for multimedia applications while guaranteeing application-level correctness, when compared to a recent work [9], which cannot guarantee application-level correctness. Comparing to the approach proposed in [20] which guarantees both application-level and numerical correctness, our method achieves 79% energy reduction. Jason Cong, Karthik Gururaj |
ICCAD | 2 |
| 2011 | An energy-efficient adaptive hybrid cache
Jason Cong, Karthik Gururaj, Hui Huang 0001, Chunyue Liu, Glenn Reinman, Yi Zou 0001 |
ISLPED | 2 |
| 2010 | Accelerating Monte Carlo based SSTA using FPGAabstractMonte Carlo based SSTA serves as the golden standard against alternative SSTA algorithms, but it is seldom used in practice due to its high computation time. In this paper, we accelerate Monte Carlo based SSTA using the FPGA platform. A simple dataflow pipeline technique will not work well due to the excessive usage of FPGA logic slices. We leverage the recently proposed pattern matching method to identify common circuit structures, and further use a mathematical programming based formulation to explore the trade-off between performance and logic slices consumption. The proposed design provides two orders of magnitude speedup compared to the CPU-based implementation. Jason Cong, Karthik Gururaj, Wei Jiang 0035, Bin Liu 0006, Kirill Minkovich, Yi Zou 0001 |
FPGA | 2 |
| 2009 | Energy efficient multiprocessor task scheduling under input-dependent variationabstractIn this paper, we propose a novel, energy aware scheduling algorithm for applications running on DVS-enabled multiprocessor systems, which exploits variation in execution times of individual tasks. In particular, our algorithm takes into account latency and resource constraints, precedence constraints among tasks and input-dependent variation in execution times of tasks to produce a scheduling solution and voltage assignment such that the average energy consumption is minimized. Our algorithm is based on a mathematical programming formulation of the scheduling and voltage assignment problem and runs in polynomial time. Experiments with randomly generated task graphs show that up to 30% savings in energy can be obtained by using our algorithm over existing techniques. We perform experiments on two real-world applications - MPEG-4 decoder and MJPEG encoder. Simulations show that the scheduling solution generated by our algorithm can provide up to 25% reduction in energy consumption over greedy dynamic slack reclamation algorithms. Jason Cong, Karthik Gururaj |
DATE | 2 |
| 2009 | Evaluation of Static Analysis Techniques for Fixed-Point Precision OptimizationabstractPrecision analysis and optimization is very important when transforming a floating-point algorithm into fixed-point hardware implementations. The core analysis techniques are either based on dynamic analysis or static analysis. We believe in static error analysis, as it is the only technique that can guarantee the desired worst-case accuracy. In this paper we study various underlying arithmetic candidates that can be used in static error analysis and compare their computed sensitivities. The approaches studied include Affine Arithmetic(AA), General Interval Arithmetic (GIA) and Automatic Differentiation (Symbolic Arithmetic). Our study shows that symbolic method is preferred for expressions with higher order cancellation. For programs without strong cancellation, any method works fairly well and GIA slightly outperforms others. We also study the impact of program transformations on these arithmetics. Jason Cong, Karthik Gururaj, Bin Liu 0006, Chunyue Liu, Zhiru Zhang, Yi Zou 0001 |
FCCM | 2 |
| 2009 | Synthesis of reconfigurable high-performance multicore systemsabstractReconfigurable high-performance computing systems (RHPC) have been attracting more and more attention over the past few years. RHPC systems are a promising solution for accelerating system performance, lowering power consumption and minimizing operation cost. In order to achieve high performance on this hybrid system, it is important to effectively explore the design space, which includes accelerator synthesis, resource allocation and job scheduling. In this paper we propose novel algorithms for reconfigurable resource allocation and job scheduling to optimize performance of multicore RHPC systems. Specifically, we first propose an interesting approximation algorithm to assign jobs to processors with consideration of coprocessors at the global optimization step. Then we present an optimal solution for coprocessor selection in the local optimization step. In this paper we also demonstrate that designers can quickly explore a large number of accelerator design choices with the help of high-level synthesis tools. Experiments show that our proposed techniques provide efficient solutions for real-life benchmarks and generate higher quality of results. When compared to other heuristic algorithms, our results can achieve up to 47% performance improvement. Jason Cong, Karthik Gururaj, Guoling Han |
FPGA | 2 |
| 2009 | Revisiting bitwidth optimizationsabstractThis paper revisits the classical bitwidth optimization problem for fixed-point designs. Our approach also starts from static analysis (range analysis and precision analysis) techniques. We first point out that AA-based precision analysis, which is widely used in many previous works, are not correctly applied for some corner cases. We propose to use interval coefficients to model the sensitivity (the mathematic form is similar to classical generalized interval arithmetic) to correct those issues. Based on the analysis, we use a convex optimization problem to optimize the area costs. In the formulation, we also allow different bitwidths for the multiple uses of the same signal. We get an additional 2% to 3% area reduction compared with previous AA-based analysis and optimizations. We also conduct some optimality study to see how much the gap between the current methods and the possible optimal point is. Jason Cong, Karthik Gururaj, Bin Liu 0006, Chunyue Liu, Yi Zou 0001, Zhiru Zhang |
FPGA | 2 |
| 2009 | High-performance CUDA kernel execution on FPGAsabstractIn this work, we propose a new FPGA design flow that combines the CUDA programming model from Nvidia with the state of the art high-level synthesis tool AutoPilot from AutoESL, to efficiently map the exposed parallelism in CUDA kernels onto reconfigurable devices. The use of the CUDA programming model offers the advantage of a common programming interface for exploiting parallelism on two very different types of accelerators -- FPGAs and GPUs. Moreover, by leveraging the advanced synthesis capabilities of AutoPilot we enable efficient exploitation of the FPGA configurability for application specific acceleration. Our flow is based on a compilation process that transforms the SPMD CUDA thread blocks into high-concurrency AutoPilot-C code. We provide an overview of our CUDA-to-FPGA flow and demonstrate the highly competitive performance of the generated multi-core accelerators. Alexandros Papakonstantinou, Karthik Gururaj, John A. Stratton, Deming Chen, Jason Cong, Wen-Mei W. Hwu |
ICS | 2 |
| 2009 | Synthesis Algorithm for Application-Specific Homogeneous Processor NetworksabstractThe application specific multiprocessor system-on-a-chip is a promising design alternative because of its high degree of flexibility, short development time, and potentially high performance attributed to application specific optimizations. However, designing an optimal application specific multiprocessor system is still challenging because there are a number of important metrics, such as throughput, latency, and resource usage, which need to be explored and optimized. This paper addresses the problem of synthesizing an application-specific multiprocessor system for stream-oriented embedded applications to minimize system latency under the throughput constraint. We employ a novel framework for this problem, similar to that of technology mapping in the logic synthesis domain, and develop a set of efficient algorithms, including labeling and clustering for efficient generation of the multiprocessor architecture with application specific optimized latency. Specifically, the result of our algorithm is latency optimal for directed acyclic task graphs. Application of our approach to the Motion JPEG example on Xilinx's Virtex II Pro platform FPGA shows interesting design tradeoffs. Jason Cong, Karthik Gururaj, Guoling Han, Wei Jiang 0035 |
IEEE Trans. Very Large Scale Integr. Syst. | 2 |
| 2008 | Communication bottleneck in hardware-software partitioningabstractThe problem of hardware-software codesign for embedded systems using configurable architectures has been studied extensively in the past decade. In this work we studied the feasibility of utilizing Commercial Off-The-Shelf (COTS) FPGA systems for codesign. We partitioned the implementation of a set of benchmark applications on hardware and software and studied the performance and resource consumption in the system. The result of experiments demonstrated that the communication between the processor and the reconfigurable architecture is the major hurdle in the codesign, especially when using COTS System on Chips. It is demonstrated that although implementing algorithms in hardware can lead to enormous speedup, the communication overhead for transferring data variables between the configurable architecture and the processor can destroy all the achieved speedup. We especially showed that in COTS FPGAs this bottleneck is more restricting because of the weak communication structure between different IPs. Furthermore, analyzing the experimental results, we propose a partitioning mechanism; the evaluation results show that the achieved speedup using the proposed partitioning mechanism is between 2 to 300 based on application's data dependency Maryam Moazeni, Alireza Vahdatpour, Karthik Gururaj, Majid Sarrafzadeh |
FPGA | 3 |
| 2008 | MC-Sim: an efficient simulation tool for MPSoC designsabstractThe ability to integrate diverse components such as processor cores, memories, custom hardware blocks and complex network-on-chip (NoC) communication frameworks onto a single chip has greatly increased the design space available for system-on-chip (SoC) designers. Efficient and accurate performance estimation tools are needed to assist the designer in making design decisions. In this paper, we present MC-Sim, a heterogeneous multi-core simulator framework which is capable of accurately simulating a variety of processor, memory, NoC configurations and application specific coprocessors. We also describe a methodology to automatically generate fast, cycle-true behavioral, C-based simulators for coprocessors using a high-level synthesis tool and integrate them with MC-Sim, thus augmenting it with the capacity to simulate coprocessors. Our C-based simulators provide on an average 45times improvement in simulation speed over that of RTL descriptions. We have used this framework to simulate a number of real-life applications such as the MPEG4 decoder and litho-simulation, and experimented with a number of design choices. Our simulator framework is able to accurately model the performance of these applications (only 7% off the actual implementation) and allows us to explore the design space rapidly and achieve interesting design implementations. Jason Cong, Karthik Gururaj, Guoling Han, Adam Kaplan, Mishali Naik, Glenn Reinman |
ICCAD | 2 |