Demo Data from EDBT 2026 / reviewers in the wild / expert
Disa Mhembere
dblp:139/0765
· DBLP profile ↗
5ranked-venue papers
1as first author
0since 2021 · last 2019
0000-0003-2840-2127ORCID · corroborated
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 4 · 1 first-authorDatabases, data management, data science and information retrieval · 2
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 |
Parallel and multicore computing · 41% Storage systems · 31% High-performance computing · 28% | |
| Theoretical computer science
2 papers |
Graph algorithms and graph theory · 100% | |
| Databases, data mining, and information retrieval
1 paper |
Machine learning and data management · 100% |
Topics — the 9 heaviest of 11, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Storage systems
flash and SSD |
0.3 | 1 | 2018 | FlashR: parallelize and scale R for machine learning using SSDs · PPoPP 2018 |
Parallel and multicore computing
parallel programming runtimes |
0.3 | 1 | 2018 | FlashR: parallelize and scale R for machine learning using SSDs · PPoPP 2018 |
Parallel and multicore computing › parallel computing
parallel machine learning |
0.3 | 1 | 2017 | knor: A NUMA-Optimized In-Memory, Distributed and Semi-External-Memory k-means Library · HPDC 2017 |
High-performance computing › sparse linear algebra
sparse matrix computation |
0.3 | 1 | 2017 | Semi-External Memory Sparse Matrix Multiplication for Billion-Node Graphs · IEEE Trans. Parallel Distributed Syst. 2017 |
High-performance computing › sparse linear algebra
sparse matrix multiplication |
0.3 | 1 | 2017 | Semi-External Memory Sparse Matrix Multiplication for Billion-Node Graphs · IEEE Trans. Parallel Distributed Syst. 2017 |
Parallel and multicore computing
graph processing |
0.2 | 1 | 2015 | FlashGraph: Processing Billion-Node Graphs on an Array of Commodity SSDs · FAST 2015 |
Storage systems › flash and SSD
solid-state drive |
0.2 | 1 | 2015 | FlashGraph: Processing Billion-Node Graphs on an Array of Commodity SSDs · FAST 2015 |
Machine learning and data management
scalable machine learning |
0.1 | 1 | 2018 | FlashR: parallelize and scale R for machine learning using SSDs · PPoPP 2018 |
Graph algorithms and graph theory › network analysis
large-scale graph analysis |
0.1 | 1 | 2017 | Semi-External Memory Sparse Matrix Multiplication for Billion-Node Graphs · IEEE Trans. Parallel Distributed Syst. 2017 |
Methods — techniques the papers use, named apart from their topics
matrix partitioning · 0.7lazy evaluation · 0.7DAG scheduling · 0.7triangle inequality pruning · 0.3distributed computation · 0.3NUMA optimization · 0.3
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2019 | Forest Packing: Fast Parallel, Decision ForestsabstractDecision Forests are popular machine learning techniques that assist scientists to extract knowledge from massive data sets. This class of tool remains popular because of their interpretability and ease of use, unlike other modern machine learning methods, such as kernel machines and deep learning. Decision forests also scale well for use with large data because training and run time operations are trivially parallelizable allowing for high inference throughputs. A negative aspect of these forests, and an untenable property for many real time applications, is their high inference latency caused by the combination of large model sizes with random memory access patterns. We present memory packing techniques and a novel tree traversal method to overcome this deficiency. The result of our system is a grouping of trees into a hierarchical structure. At low levels, we pack the nodes of multiple trees into contiguous memory blocks so that each memory access fetches data for multiple trees. At higher levels, we use leaf cardinality to identify the most popular paths through a tree and collocate those paths in contiguous cache lines. We extend this layout with a re-ordering of the tree traversal algorithm to take advantage of the increased memory throughput provided by out-of-order execution and cache-line prefetching. Together, these optimizations increase the performance and parallel scalability of classification in ensembles by a factor of ten over an optimized C++ implementation and a popular R-language implementation. James Browne, Disa Mhembere, Tyler M. Tomita, Joshua T. Vogelstein, Randal C. Burns |
SDM | 2 |
| 2018 | FlashR: parallelize and scale R for machine learning using SSDsabstractR is one of the most popular programming languages for statistics and machine learning, but it is slow and unable to scale to large datasets. The general approach for having an efficient algorithm in R is to implement it in C or FORTRAN and provide an R wrapper. FlashR accelerates and scales existing R code by parallelizing a large number of matrix functions in the R base package and scaling them beyond memory capacity with solid-state drives (SSDs). FlashR performs memory hierarchy aware execution to speed up parallelized R code by (i) evaluating matrix operations lazily, (ii) performing all operations in a DAG in a single execution and with only one pass over data to increase the ratio of computation to I/O, (iii) performing two levels of matrix partitioning and reordering computation on matrix partitions to reduce data movement in the memory hierarchy. We evaluate FlashR on various machine learning and statistics algorithms on inputs of up to four billion data points. Despite the huge performance gap between SSDs and RAM, FlashR on SSDs closely tracks the performance of FlashR in memory for many algorithms. The R implementations in FlashR outperforms H2O and Spark MLlib by a factor of 3 -- 20. Da Zheng 0004, Disa Mhembere, Joshua T. Vogelstein, Carey E. Priebe, Randal C. Burns |
PPoPP | 2 |
| 2017 | knor: A NUMA-Optimized In-Memory, Distributed and Semi-External-Memory k-means Libraryabstractk-means is one of the most influential and utilized machine learning algorithms. Its computation limits the performance and scalability of many statistical analysis and machine learning tasks. We rethink and optimize k-means in terms of modern NUMA architectures to develop a novel parallelization scheme that delays and minimizes synchronization barriers. The k-means NUMA Optimized Routine knor) library has (i) in-memory knori), (ii) distributed memory (knord), and (ii) semi-external memory (\textsf{knors}) modules that radically improve the performance of k-means for varying memory and hardware budgets. knori boosts performance for single machine datasets by an order of magnitude or more. \textsf{knors} improves the scalability of k-means on a memory budget using SSDs. knors scales to billions of points on a single machine, using a fraction of the resources that distributed in-memory systems require. knord retains knori's performance characteristics, while scaling in-memory through distributed computation in the cloud. knor modifies Elkan's triangle inequality pruning algorithm such that we utilize it on billion-point datasets without the significant memory overhead of the original algorithm. We demonstrate knor outperforms distributed commercial products like H2O, Turi (formerly Dato, GraphLab) and Spark's MLlib by more than an order of magnitude for datasets of 107 to 109 points. Disa Mhembere, Da Zheng 0004, Carey E. Priebe, Joshua T. Vogelstein, Randal C. Burns |
HPDC | 1 |
| 2017 | Semi-External Memory Sparse Matrix Multiplication for Billion-Node GraphsabstractSparse matrix multiplication is traditionally performed in memory and scales to large matrices using the distributed memory of multiple nodes. In contrast, we scale sparse matrix multiplication beyond memory capacity by implementing sparse matrix dense matrix multiplication (SpMM) in a semi-external memory (SEM) fashion; i.e., we keep the sparse matrix on commodity SSDs and dense matrices in memory. Our SEM-SpMM incorporates many in-memory optimizations for large power-law graphs. It outperforms the in-memory implementations of Trilinos and Intel MKL and scales to billion-node graphs, far beyond the limitations of memory. Furthermore, on a single large parallel machine, our SEM-SpMM operates as fast as the distributed implementations of Trilinos using five times as much processing power. We also run our implementation in memory (IM-SpMM) to quantify the overhead of keeping data on SSDs. SEM-SpMM achieves almost 100 percent performance of IM-SpMM on graphs when the dense matrix has more than four columns; it achieves at least 65 percent performance of IM-SpMM on all inputs. We apply our SpMM to three important data analysis tasks-PageRank, eigensolving, and non-negative matrix factorization-and show that our SEM implementations significantly advance the state of the art. Da Zheng 0004, Disa Mhembere, Vince Lyzinski, Joshua T. Vogelstein, Carey E. Priebe, Randal C. Burns |
IEEE Trans. Parallel Distributed Syst. | 2 |
| 2015 | FlashGraph: Processing Billion-Node Graphs on an Array of Commodity SSDs
Da Zheng 0004, Disa Mhembere, Randal C. Burns, Joshua T. Vogelstein, Carey E. Priebe, Alex Szalay |
FAST | 2 |