Kefu Lu

dblp:147/3348 · DBLP profile ↗
← Back
12ranked-venue papers
1as first author
3since 2021 · last 2024
0000-0003-0950-2616ORCID · corroborated

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

Systems, architecture and hardware · 6 · 1 since 2021Theory of computation · 3 · 1 first-author · 1 since 2021Artificial intelligence and machine learning · 2 · 1 since 2021Databases, data management, data science and information retrieval · 2
YearPublicationVenuePosition
2024 Maximizing Throughput for Parallel Jobs with Speed-Up Curves
Kefu Lu, Mason Marchetti
WAOA1
2021 Scaling Average-Linkage via Sparse Cluster Embeddings
abstract
Average-linkage is one of the most popular hierarchical clustering algorithms. It is well known that average-linkage does not scale to large data sets due to the slow asymptotic running time. The fastest known implementation has running time quadratic in the number of data points. This paper presents a technique that we call cluster embedding. The embedding maps each cluster into a point in slightly higher dimensions. The pairwise distances between the mapped points approximate the average distance between clusters. By utilizing this embedding we scale the task of finding close pairs of clusters, which is a key step in average-linkage clustering. We achieve an approximate, sub-quadratic time implementation of average-linkage. We show theoretically the algorithm proposed in this paper achieves a near-linear running time and scales to large data sets. Moreover, its scalability empirically dominates average-linkage and typically offers 3-10x speed-up on large data sets.
Thomas Lavastida, Kefu Lu, Benjamin Moseley
ACML2
2021 A Scalable Approximation Algorithm for Weighted Longest Common Subsequence
Jeremy Buhler, Thomas Lavastida, Kefu Lu, Benjamin Moseley
Euro-Par3
2019 Practically Efficient Scheduler for Minimizing Average Flow Time of Parallel Jobs
abstract
Many algorithms have been proposed to efficiently schedule parallel jobs on a multicore and/or multiprocessor machine to minimize average flow time, and the complexity of the problem is well understood. In practice, the problem is far from being understood. A reason for the gap between theory and practice is that all theoretical algorithms have prohibitive overheads in actual implementation including using many preemptions. One of the flagship successes of scheduling theory is the work-stealing scheduler. Work-stealing is used for optimizing the flow time of a single parallel job executing on a single machine with multiple cores and has a strong performance in theory and in practice. Consequently, it is implemented in almost all parallel runtime systems. This paper seeks to bridge theory and practice for scheduling parallel jobs that arrive online, by introducing an adaptation of the work-stealing scheduler for average flow time. The new algorithm Distributed Random Equi-Partition (DREP) has strong practical and theoretical performance. Practically, the algorithm has the following advantages: (1) it is non-clairvoyant; (2) all processors make scheduling decisions in a decentralized manner requiring minimal synchronization and communications; and (3) it requires a small and bounded number of preemptions. Theoretically, we prove that DREP is (4 + ε)-speed O(1/ε3)-competitive for average flow time. We have empirically evaluated DREP using both simulations and actual implementation by modifying the Cilk Plus work-stealing runtime system. The evaluation results show that DREP performs well compared to other scheduling strategies, including those that are theoretically good but cannot be faithfully implemented in practice.
Kunal Agrawal 0001, I-Ting Angelina Lee, Jing Li 0025, Kefu Lu, Benjamin Moseley
IPDPS4
2019 A Framework for Parallelizing Hierarchical Clustering Methods
Silvio Lattanzi, Thomas Lavastida, Kefu Lu, Benjamin Moseley
ECML/PKDD (1)3
2018 Scheduling Parallelizable Jobs Online to Maximize Throughput
Kunal Agrawal 0001, Jing Li 0025, Kefu Lu, Benjamin Moseley
LATIN3
2017 Brief Announcement: Scheduling Parallelizable Jobs Online to Maximize Throughput
abstract
We consider scheduling parallelizable jobs online to maximize the throughput or profit of the schedule. A set of n jobs arrive online and each job Ji has an associated function pi(t), the profit obtained for finishing job Ji at time t. Each job has its own arbitrary non-increasing profit function. We consider the case where each job is a parallel job that can be represented as a directed acyclic graph (DAG). We give the first non-trivial results for the profit scheduling problem for DAG jobs showing O(1)-competitive algorithms using resource augmentation.
Kunal Agrawal 0001, Jing Li 0025, Kefu Lu, Benjamin Moseley
SPAA3
2017 Local Search Methods for k-Means with Outliers
abstract
We study the problem of k -means clustering in the presence of outliers. The goal is to cluster a set of data points to minimize the variance of the points assigned to the same cluster, with the freedom of ignoring a small set of data points that can be labeled as outliers. Clustering with outliers has received a lot of attention in the data processing community, but practical, efficient, and provably good algorithms remain unknown for the most popular k -means objective. Our work proposes a simple local search-based algorithm for k -means clustering with outliers. We prove that this algorithm achieves constant-factor approximate solutions and can be combined with known sketching techniques to scale to large data sets. Using empirical evaluation on both synthetic and large-scale real-world data, we demonstrate that the algorithm dominates recently proposed heuristic approaches for the problem.
Shalmoli Gupta, Ravi Kumar 0001, Kefu Lu, Benjamin Moseley, Sergei Vassilvitskii
Proc. VLDB Endow.3
2016 Partitioned Feasibility Tests for Sporadic Tasks on Heterogeneous Machines
abstract
In this paper we consider feasibility tests for partitioned scheduling sporadic tasks on a set of heterogeneous machines with different speeds. Previously a 3-approximate feasibility test was known. The feasibility test is a natural, fast and efficient algorithm which greedily assigns the tasks to machines and uses Earliest-Deadline-First (EDF) on each machine. The algorithm is 3-approximate even when compared against any schedule which need not be partitioned and therefore additionally bounds the loss due to using a partitioned scheduler. In our work, we consider the case where the adversary is required to be partitioned. We show that this natural algorithm has an improved approximate feasibility factor of 2. Building on our techniques, we further improve on the best known approximate algorithm when the adversary is partition and show the algorithm achieves a ratio better than 3. In particular, we show it is 2.98 approximate. We then consider the case where the partitioned scheduler is required to use Rate-Monotonic-Scheduling (RMS) on each of the machines. Previously, it was known that this algorithm is 3.41-approximate when compared to a non-partitioned adversary. We improve this to 2.41 when comparing to a partitioned adversary. Further, we build on these ideas to improve the best known result when compared against a partitioned adversary and show the algorithm is a 3.34 approximation.
Shaurya Ahuja, Kefu Lu, Benjamin Moseley
IPDPS2
2016 Scheduling Parallel DAG Jobs Online to Minimize Average Flow Time
abstract
In this work, we study the problem of scheduling parallelizable jobs online with an objective of minimizing average flow time. Each parallel job is modeled as a DAG where each node is a sequential task and each edge represents dependence between tasks. Previous work has focused on a model of parallelizability known as the arbitrary speed-up curves setting where a scalable algorithm is known. However, the DAG model is more widely used by practitioners, since many jobs generated from parallel programming languages and libraries can be represented in this model. However, little is known for this model in the online setting with multiple jobs. The DAG model and the speed-up curve models are incomparable and algorithmic results from one do not immediately imply results for the other. Previous work has left open the question of whether an online algorithm can be O(1)-competitive with O(1)-speed for average flow time in the DAG setting. In this work, we answer this question positively by giving a scalable algorithm which is (1 + ∊)-speed -competitive for any ∊ > 0. We further introduce the first greedy algorithm for scheduling parallelizable jobs — our algorithm is a generalization of the shortest jobs first algorithm. Greedy algorithms are among the most useful in practice due to their simplicity. We show that this algorithm is (2 + ∊)-speed -competitive for any ∊ > 0.
Kunal Agrawal 0001, Jing Li 0025, Kefu Lu, Benjamin Moseley
SODA3
2016 Scheduling Parallelizable Jobs Online to Minimize the Maximum Flow Time
abstract
In this paper we study the problem of scheduling a set of dynamic multithreaded jobs with the objective of minimizing the maximum latency experienced by any job. We assume that jobs arrive online and the scheduler has no information about the arrival rate, arrival time or work distribution of the jobs. The scheduling goal is to minimize the maximum amount of time between the arrival of a job and its completion --- this goal is referred to in scheduling literature as maximum flow time. While theoretical online scheduling of parallel jobs has been studied extensively, most prior work has focussed on a highly stylized model of parallel jobs called the "speedup curves model." We model parallel jobs as directed acyclic graphs, which is a more realistic way to model dynamic multithreaded jobs.
Kunal Agrawal 0001, Jing Li 0025, Kefu Lu, Benjamin Moseley
SPAA3
2014 Provably good scheduling for parallel programs that use data structures through implicit batching
abstract
Although concurrent data structures are commonly used in practice on shared-memory machines, even the most efficient concurrent structures often lack performance theorems guaranteeing linear speedup for the enclosing parallel program. Moreover, efficient concurrent data structures are difficult to design. In contrast, parallel batched data structures do provide provable performance guarantees, since processing a batch in parallel is easier than dealing with the arbitrary asynchrony of concurrent accesses. They can limit programmability, however, since restructuring a parallel program to use batched data structure instead of concurrent data structure can often be difficult or even infeasible.
Kunal Agrawal 0001, Jeremy T. Fineman, Kefu Lu, Brendan Sheridan, Jim Sukha, Robert Utterback
SPAA3