VLDB 2026 Research / reviewers in the wild / expert
Penporn Koanantakool
dblp:133/3691
· DBLP profile ↗
8ranked-venue papers
3as first author
1since 2021 · last 2022
0000-0002-0748-1818ORCID · corroborated
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 5 · 2 first-author · 1 since 2021Artificial intelligence and machine learning · 2 · 1 first-authorComputer networks · 1Graphics, computer vision, multimedia, augmented reality and games · 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.
| Software engineering, system software, and programming languages
1 paper |
Compilers and program optimization · 100% | |
| Computer architecture, parallel and distributed computing, and storage systems
2 papers |
High-performance computing · 58% Distributed systems · 21% Parallel and multicore computing · 21% | |
| Artificial intelligence
1 paper |
Efficient and distributed learning · 87% Language models and text generation · 13% | |
| Databases, data mining, and information retrieval
1 paper |
Data models and query languages · 100% |
Topics — the 11 heaviest of 12, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Compilers and program optimization
compiler infrastructure |
0.6 | 1 | 2022 | Compiler Support for Sparse Tensor Computations in MLIR · ACM Trans. Archit. Code Optim. 2022 |
Compilers and program optimization › compiler infrastructure
MLIR |
0.6 | 1 | 2022 | Compiler Support for Sparse Tensor Computations in MLIR · ACM Trans. Archit. Code Optim. 2022 |
Compilers and program optimization › sparse computation › sparse tensor compilation
sparse tensor code generation |
0.6 | 1 | 2022 | Compiler Support for Sparse Tensor Computations in MLIR · ACM Trans. Archit. Code Optim. 2022 |
Compilers and program optimization › sparse computation
sparse tensor compilation |
0.6 | 1 | 2022 | Compiler Support for Sparse Tensor Computations in MLIR · ACM Trans. Archit. Code Optim. 2022 |
Machine learning › Efficient and distributed learning
distributed training |
0.3 | 1 | 2018 | Mesh-TensorFlow: Deep Learning for Supercomputers · NeurIPS 2018 |
Machine learning › Efficient and distributed learning › distributed training
model parallelism |
0.3 | 1 | 2018 | Mesh-TensorFlow: Deep Learning for Supercomputers · NeurIPS 2018 |
Distributed systems › communication optimization
communication-optimal algorithms |
0.2 | 1 | 2014 | A Computation- and Communication-Optimal Parallel Direct 3-Body Algorithm · SC 2014 |
Parallel and multicore computing
load balancing |
0.2 | 1 | 2014 | A Computation- and Communication-Optimal Parallel Direct 3-Body Algorithm · SC 2014 |
High-performance computing
particle simulation |
0.2 | 1 | 2014 | A Computation- and Communication-Optimal Parallel Direct 3-Body Algorithm · SC 2014 |
Data models and query languages
sparse tensor algebra |
0.2 | 1 | 2022 | Compiler Support for Sparse Tensor Computations in MLIR · ACM Trans. Archit. Code Optim. 2022 |
Natural language and speech › Language models and text generation › language modeling › language model architecture
sequence-to-sequence model |
0.1 | 1 | 2018 | Mesh-TensorFlow: Deep Learning for Supercomputers · NeurIPS 2018 |
Methods — techniques the papers use, named apart from their topics
sparsity-agnostic compilation · 1.1collective communication · 0.7allreduce · 0.7SPMD programming · 0.7spectral methods · 0.2
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2022 | Compiler Support for Sparse Tensor Computations in MLIRabstractSparse tensors arise in problems in science, engineering, machine learning, and data analytics. Programs that operate on such tensors can exploit sparsity to reduce storage requirements and computational time. Developing and maintaining sparse software by hand, however, is a complex and error-prone task. Therefore, we propose treating sparsity as a property of tensors, not a tedious implementation task, and letting a sparse compiler generate sparse code automatically from a sparsity-agnostic definition of the computation. This article discusses integrating this idea into MLIR. Aart J. C. Bik, Penporn Koanantakool, Tatiana Shpeisman, Nicolas Vasilache, Bixia Zheng, Fredrik Kjolstad |
ACM Trans. Archit. Code Optim. | 2 |
| 2018 | Communication-Avoiding Optimization Methods for Distributed Massive-Scale Sparse Inverse Covariance EstimationabstractAcross a variety of scientific disciplines, sparse inverse covariance estimation is a popular tool for capturing the underlying dependency relationships in multivariate data. Unfortunately, most estimators are not scalable enough to handle the sizes of modern high-dimensional data sets (often on the order of terabytes), and assume Gaussian samples. To address these deficiencies, we introduce HP-CONCORD, a highly scalable optimization method for estimating a sparse inverse covariance matrix based on a regularized pseudolikelihood framework, without assuming Gaussianity. Our parallel proximal gradient method uses a novel communication-avoiding linear algebra algorithm and runs across a multi-node cluster with up to 1k nodes (24k cores), achieving parallel scalability on problems with up to ≈819 billion parameters (1.28 million dimensions); even on a single node, HP-CONCORD demonstrates scalability, outperforming a state-of-the-art method. We also use HP-CONCORD to estimate the underlying dependency structure of the brain from fMRI data, and use the result to identify functional regions automatically. The results show good agreement with a clustering from the neuroscience literature. Penporn Koanantakool, Alnur Ali, Ariful Azad, Aydin Buluç, Dmitriy Morozov, Leonid Oliker, Katherine A. Yelick, Sang-Yun Oh |
AISTATS | 1 |
| 2018 | Mesh-TensorFlow: Deep Learning for SupercomputersabstractBatch-splitting (data-parallelism) is the dominant distributed Deep Neural Network (DNN) training strategy, due to its universal applicability and its amenability to Single-Program-Multiple-Data (SPMD) programming. However, batch-splitting suffers from problems including the inability to train very large models (due to memory constraints), high latency, and inefficiency at small batch sizes. All of these can be solved by more general distribution strategies (model-parallelism). Unfortunately, efficient model-parallel algorithms tend to be complicated to discover, describe, and to implement, particularly on large clusters. We introduce Mesh-TensorFlow, a language for specifying a general class of distributed tensor computations. Where data-parallelism can be viewed as splitting tensors and operations along the "batch" dimension, in Mesh-TensorFlow, the user can specify any tensor-dimensions to be split across any dimensions of a multi-dimensional mesh of processors. A Mesh-TensorFlow graph compiles into a SPMD program consisting of parallel operations coupled with collective communication primitives such as Allreduce. We use Mesh-TensorFlow to implement an efficient data-parallel, model-parallel version of the Transformer sequence-to-sequence model. Using TPU meshes of up to 512 cores, we train Transformer models with up to 5 billion parameters, surpassing SOTA results on WMT'14 English-to-French translation task and the one-billion-word Language modeling benchmark. Mesh-Tensorflow is available at https://github.com/tensorflow/mesh Noam Shazeer, Youlong Cheng, Niki Parmar, Dustin Tran, Ashish Vaswani, Penporn Koanantakool, Peter Hawkins, HyoukJoong Lee, Mingsheng Hong, Cliff Young, Ryan Sepassi, Blake A. Hechtman |
NeurIPS | 6 |
| 2016 | Write-Avoiding AlgorithmsabstractCommunication, i.e., moving data between levels of a memory hierarchy or between processors over a network, is much more expensive (in time or energy) than arithmetic. There has thus been a recent focus on designing algorithms that minimize communication and, when possible, attain lower bounds on the total number of reads and writes. However, most previous work does not distinguish between the costs of reads and writes. Writes can be much more expensive than reads in some current and emerging storage devices such as nonvolatile memories. This motivates us to ask whether there are lower bounds on the number of writes that certain algorithms must perform, and whether these bounds are asymptotically smaller than bounds on the sum of reads and writes together. When these smaller lower bounds exist, we then ask when they are attainable, we call such algorithms "write-avoiding" (WA), to distinguish them from "communication-avoiding" (CA) algorithms, which only minimize the sum of reads and writes. We identify a number of cases in linear algebra and direct N-body methods where known CA algorithms are also WA (some are and some aren't). We also identify classes of algorithms, including Strassen's matrix multiplication, Cooley-Tukey FFT, and cache oblivious algorithms for classical linear algebra, where a WA algorithm cannot exist: the number of writes is unavoidably within a constant factor of the total number of reads and writes. We explore the interaction of WA algorithms with cache replacement policies and argue that the Least Recently Used policy works well with the WA algorithms in this paper. We provide empirical hardware counter measurements from Intel's Nehalem-EX microarchitecture to validate our theory. In the parallel case, for classical linear algebra, we show that it is impossible to attain lower bounds both on interprocessor communication and on writes to local memory, but either one is attainable by itself. Finally, we discuss WA algorithms for sparse iterative linear algebra. Erin Carson, James Demmel, Laura Grigori, Nicholas Knight, Penporn Koanantakool, Oded Schwartz, Harsha Vardhan Simhadri |
IPDPS | 5 |
| 2016 | Communication-Avoiding Parallel Sparse-Dense Matrix-Matrix MultiplicationabstractMultiplication of a sparse matrix with a dense matrix is a building block of an increasing number of applications in many areas such as machine learning and graph algorithms. However, most previous work on parallel matrix multiplication considered only both dense or both sparse matrix operands. This paper analyzes the communication lower bounds and compares the communication costs of various classic parallel algorithms in the context of sparse-dense matrix-matrix multiplication. We also present new communication-avoiding algorithms based on a 1D decomposition, called 1.5D, which - while suboptimal in dense-dense and sparse-sparse cases - outperform the 2D and 3D variants both theoretically and in practice for sparse-dense multiplication. Our analysis separates one-time costs from per iteration costs in an iterative machine learning context. Experiments demonstrate speedups up to 100x over a baseline 3D SUMMA implementation and show parallel scaling over 10 thousand cores. Penporn Koanantakool, Ariful Azad, Aydin Buluç, Dmitriy Morozov, Sang-Yun Oh, Leonid Oliker, Katherine A. Yelick |
IPDPS | 1 |
| 2014 | A Computation- and Communication-Optimal Parallel Direct 3-Body AlgorithmabstractTraditional particle simulation methods are used to calculate pair wise potentials, but some problems require 3-body potentials that calculate over triplets of particles. A direct calculation of 3-body interactions involves O(n3) interactions, but has significant redundant computations that occur in a nested loop formulation. In this paper we explore algorithms for 3-body computations that simultaneously optimize three criteria: computation minimization through symmetries, communication optimality, and load balancing. We present a new 3-body algorithm that is both communication and computation optimal. Its optional replication factor, c, saves c3in latency (number of messages) and c2in bandwidth (volume), with bounded load imbalance. We also consider the k-body case and discuss an algorithm that is optimal if there is a cut off distance of less than 1/3 of the domain. The 3-body algorithm demonstrates 99% efficiency on tens of thousands of cores, showing strong scaling properties with order of magnitude speedups over the nïve algorithm. Penporn Koanantakool, Katherine A. Yelick |
SC | 1 |
| 2014 | Scalable multimedia content analysis on parallel platforms using pythonabstractIn this new era dominated by consumer-produced media there is a high demand for web-scalable solutions to multimedia content analysis. A compelling approach to making applications scalable is to explicitly map their computation onto parallel platforms. However, developing efficient parallel implementations and fully utilizing the available resources remains a challenge due to the increased code complexity, limited portability and required low-level knowledge of the underlying hardware. In this article, we present PyCASP, a Python-based framework that automatically maps computation onto parallel platforms from Python application code to a variety of parallel platforms. PyCASP is designed using a systematic, pattern-oriented approach to offer a single software development environment for multimedia content analysis applications. Using PyCASP, applications can be prototyped in a couple hundred lines of Python code and automatically scale to modern parallel processors. Applications written with PyCASP are portable to a variety of parallel platforms and efficiently scale from a single desktop Graphics Processing Unit (GPU) to an entire cluster with a small change to application code. To illustrate our approach, we present three multimedia content analysis applications that use our framework: a state-of-the-art speaker diarization application, a content-based music recommendation system based on the Million Song Dataset, and a video event detection system for consumer-produced videos. We show that across this wide range of applications, our approach achieves the goal of automatic portability and scalability while at the same time allowing easy prototyping in a high-level language and efficient performance of low-level optimized code. Ekaterina Gonina, Gerald Friedland, Eric Battenberg, Penporn Koanantakool, Michael B. Driscoll, Evangelos Georganas, Kurt Keutzer |
ACM Trans. Multim. Comput. Commun. Appl. | 4 |
| 2013 | A Communication-Optimal N-Body Algorithm for Direct InteractionsabstractWe consider the problem of communication avoidance in computing interactions between a set of particles in scenarios with and without a cutoff radius for interaction. Our strategy, which we show to be optimal in communication, divides the work in the iteration space rather than simply dividing the particles over processors, so more than one processor may be responsible for computing updates to a single particle. Similar to a force decomposition in molecular dynamics, this approach requires up to √p times more memory than a particle decomposition, but reduces communication costs by factors up to √p and is often faster in practice than a particle decomposition [1]. We examine a generalized force decomposition algorithm that tolerates the memory limited case, i.e. when memory can only hold c copies of the particles for c = 1, 2, ..., √p. When c = 1, the algorithm degenerates into a particle decomposition; similarly when c = √p, the algorithm uses a force decomposition. We present a proof that the algorithm is communication-optimal and reduces critical path latency and bandwidth costs by factors of c2and c, respectively. Performance results from experiments on up to 24K cores of Cray XE-6 and 32K cores of IBM BlueGene/P machines indicate that the algorithm reduces communication in practice. In some cases, it even outperforms the original force decomposition approach because the right choice of c strikes a balance between the costs of collective and point-to-point communication. Finally, we extend the analysis to include a cutoff radius for direct evaluation of force interactions. We show that with a cutoff, communication optimality still holds. We sketch a generalized algorithm for multi-dimensional space and assess its performance for 1D and 2D simulations on the same systems. Michael B. Driscoll, Evangelos Georganas, Penporn Koanantakool, Edgar Solomonik, Katherine A. Yelick |
IPDPS | 3 |