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

Maria Kotsifakou

dblp:139/6643 · DBLP profile ↗
← Back
6ranked-venue papers
1as first author
1since 2021 · last 2021
—ORCID · none

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

Systems, architecture and hardware · 4 · 1 first-author · 1 since 2021Software engineering, systems software and programming languages · 3Theory of computation · 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
4 papers
Energy-efficient computing · 22% GPUs and heterogeneous computing · 20% Emerging computing paradigms · 17%
Software engineering, system software, and programming languages
3 papers
Compilers and program optimization · 89% Runtime systems and virtual machines · 11%

Topics — the 9 heaviest of 12, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Compilers and program optimization
approximate computing
0.512021
ApproxTuner: a compiler and runtime system for adaptive approximations · PPoPP 2021
Energy-efficient computing › energy-quality tradeoff
energy-accuracy tradeoff
0.512021
ApproxTuner: a compiler and runtime system for adaptive approximations · PPoPP 2021
Emerging computing paradigms
approximate computing
0.412019
ApproxHPVM: a portable compiler IR for accuracy-aware optimizations · Proc. ACM Program. Lang. 2019
Compilers and program optimization
intermediate representation
0.312018
HPVM: heterogeneous parallel virtual machine · PPoPP 2018
GPUs and heterogeneous computing
heterogeneous parallel programming
0.312018
HPVM: heterogeneous parallel virtual machine · PPoPP 2018
High-performance computing › performance engineering
performance portability
0.312018
HPVM: heterogeneous parallel virtual machine · PPoPP 2018
Parallel and multicore computing › parallel scheduling
runtime scheduling
0.312018
HPVM: heterogeneous parallel virtual machine · PPoPP 2018
Memory systems
hybrid memory
0.212015
Stash: have your scratchpad and cache it too · ISCA 2015
Memory systems
cache coherence
0.112015
Stash: have your scratchpad and cache it too · ISCA 2015

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

approximation tuning · 1.0design space exploration · 0.8approximation · 0.8accuracy tuning · 0.8vector instructions · 0.7hierarchical dataflow graph · 0.7scratchpad memory · 0.2FIFO · 0.2
YearPublicationVenuePosition
2021 ApproxTuner: a compiler and runtime system for adaptive approximations
abstract
Manually optimizing the tradeoffs between accuracy, performance and energy for resource-intensive applications with flexible accuracy or precision requirements is extremely difficult. We present ApproxTuner, an automatic framework for accuracy-aware optimization of tensor-based applications while requiring only high-level end-to-end quality specifications. ApproxTuner implements and manages approximations in algorithms, system software, and hardware.
Hashim Sharif, Yifan Zhao 0004, Maria Kotsifakou, Akash Kothari, Benjamin Schreiber 0001, Elizabeth Wang, Yasmin Sarita, Nathan Zhao, Keyur Joshi 0001, Vikram S. Adve, Sasa Misailovic, Sarita V. Adve
PPoPP3
2019 ApproxHPVM: a portable compiler IR for accuracy-aware optimizations
abstract
We propose ApproxHPVM, a compiler IR and system designed to enable accuracy-aware performance and energy tuning on heterogeneous systems with multiple compute units and approximation methods. ApproxHPVM automatically translates end-to-end application-level quality metrics into accuracy requirements for individual operations. ApproxHPVM uses a hardware-agnostic accuracy-tuning phase to do this translation that provides greater portability across heterogeneous hardware platforms and enables future capabilities like accuracy-aware dynamic scheduling and design space exploration. ApproxHPVM incorporates three main components: (a) a compiler IR with hardware-agnostic approximation metrics, (b) a hardware-agnostic accuracy-tuning phase to identify error-tolerant computations, and (c) an accuracy-aware hardware scheduler that maps error-tolerant computations to approximate hardware components. As ApproxHPVM does not incorporate any hardware-specific knowledge as part of the IR, it can serve as a portable virtual ISA that can be shipped to all kinds of hardware platforms. We evaluate our framework on nine benchmarks from the deep learning domain and five image processing benchmarks. Our results show that our framework can offload chunks of approximable computations to special-purpose accelerators that provide significant gains in performance and energy, while staying within user-specified application-level quality metrics with high probability. Across the 14 benchmarks, we observe from 1-9x performance speedups and 1.1-11.3x energy reduction for very small reductions in accuracy.
Hashim Sharif, Prakalp Srivastava, Muhammad Huzaifa, Maria Kotsifakou, Keyur Joshi 0001, Yasmin Sarita, Nathan Zhao, Vikram S. Adve, Sasa Misailovic, Sarita V. Adve
Proc. ACM Program. Lang.4
2018 HPVM: heterogeneous parallel virtual machine
abstract
We propose a parallel program representation for heterogeneous systems, designed to enable performance portability across a wide range of popular parallel hardware, including GPUs, vector instruction sets, multicore CPUs and potentially FPGAs. Our representation, which we call HPVM, is a hierarchical dataflow graph with shared memory and vector instructions. HPVM supports three important capabilities for programming heterogeneous systems: a compiler intermediate representation (IR), a virtual instruction set (ISA), and a basis for runtime scheduling; previous systems focus on only one of these capabilities. As a compiler IR, HPVM aims to enable effective code generation and optimization for heterogeneous systems. As a virtual ISA, it can be used to ship executable programs, in order to achieve both functional portability and performance portability across such systems. At runtime, HPVM enables flexible scheduling policies, both through the graph structure and the ability to compile individual nodes in a program to any of the target devices on a system. We have implemented a prototype HPVM system, defining the HPVM IR as an extension of the LLVM compiler IR, compiler optimizations that operate directly on HPVM graphs, and code generators that translate the virtual ISA to NVIDIA GPUs, Intel's AVX vector units, and to multicore X86-64 processors. Experimental results show that HPVM optimizations achieve significant performance improvements, HPVM translators achieve performance competitive with manually developed OpenCL code for both GPUs and vector hardware, and that runtime scheduling policies can make use of both program and runtime information to exploit the flexible compilation capabilities. Overall, we conclude that the HPVM representation is a promising basis for achieving performance portability and for implementing parallelizing compilers for heterogeneous parallel systems.
Maria Kotsifakou, Prakalp Srivastava, Matthew D. Sinclair, Rakesh Komuravelli, Vikram S. Adve, Sarita V. Adve
PPoPP1
2016 POSTER: hVISC: A Portable Abstraction for Heterogeneous Parallel Systems
abstract
Programming heterogeneous parallel systems can be extremely complex because a single system may include multiple different parallelism models, instruction sets, and memory hierarchies, and different systems use different combinations of these features. We propose a carefully designed parallel abstraction of heterogeneous hardware -- a hierarchical dataflow graph with shared memory and vector instructions -- that is able to capture the parallelism in a wide range of popular parallel hardware. We use this abstraction, which we call hVISC , to define a Virtual Instruction Set Architecture (ISA) that aims to address both functional portability and performance portability across heterogeneous systems. hVISC is more general than existing virtual instruction sets such as PTX, HSAIL and SPIR, e.g., it can capture both streaming parallelism and general dataflow parallelism.
Prakalp Srivastava, Maria Kotsifakou, Matthew D. Sinclair, Rakesh Komuravelli, Vikram S. Adve, Sarita V. Adve
PACT2
2015 Stash: have your scratchpad and cache it too
abstract
Heterogeneous systems employ specialization for energy efficiency. Since data movement is expected to be a dominant consumer of energy, these systems employ specialized memories (e.g., scratchpads and FIFOs) for better efficiency for targeted data. These memory structures, however, tend to exist in local address spaces, incurring significant performance and energy penalties due to inefficient data movement between the global and private spaces. We propose an efficient heterogeneous memory system where specialized memory components are tightly coupled in a unified and coherent address space. This paper applies these ideas to a system with CPUs and GPUs with scratchpads and caches.
Rakesh Komuravelli, Matthew D. Sinclair, Johnathan Alsop, Muhammad Huzaifa, Maria Kotsifakou, Prakalp Srivastava, Sarita V. Adve, Vikram S. Adve
ISCA5
2013 A GPU implementation of tiled belief propagation on Markov Random Fields
Hassan Eslami, Theodoros Kasampalis, Maria Kotsifakou
MEMOCODE3