EDBT 2026 Demo / reviewers in the wild / expert
Yunlian Jiang
dblp:41/6781
· DBLP profile ↗
17ranked-venue papers
9as first author
0since 2021 · last 2013
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 13 · 8 first-authorSoftware engineering, systems software and programming languages · 5 · 2 first-author
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 |
Memory systems · 31% Performance modeling and evaluation · 27% GPUs and heterogeneous computing · 22% | |
| Software engineering, system software, and programming languages
2 papers |
Compilers and program optimization · 70% Program analysis · 30% |
Topics — the 14 heaviest of 18, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Performance modeling and evaluation
workload characterization |
0.3 | 2 | 2012 | The Significance of CMP Cache Sharing on Contemporary Multithreaded Applications · IEEE Trans. Parallel Distributed Syst. 2012 Exploiting inter-sequence correlations for program behavior prediction · OOPSLA 2012 |
Memory systems
cache |
0.3 | 2 | 2012 | The Significance of CMP Cache Sharing on Contemporary Multithreaded Applications · IEEE Trans. Parallel Distributed Syst. 2012 Does cache sharing on modern CMP matter to the performance of contemporary multithreaded programs? · PPoPP 2010 |
Processor architecture and microarchitecture
chip multiprocessor |
0.2 | 2 | 2011 | The Complexity of Optimal Job Co-Scheduling on Chip Multiprocessors and Heuristics-Based Solutions · IEEE Trans. Parallel Distributed Syst. 2011 Does cache sharing on modern CMP matter to the performance of contemporary multithreaded programs? · PPoPP 2010 |
Memory systems › data layout optimization
data layout reorganization |
0.2 | 1 | 2013 | Complexity analysis and algorithm design for reorganizing data to minimize non-coalesced memory accesses on GPU · PPoPP 2013 |
GPUs and heterogeneous computing
GPU memory access |
0.2 | 1 | 2013 | Complexity analysis and algorithm design for reorganizing data to minimize non-coalesced memory accesses on GPU · PPoPP 2013 |
GPUs and heterogeneous computing › GPU memory access
memory coalescing |
0.2 | 1 | 2013 | Complexity analysis and algorithm design for reorganizing data to minimize non-coalesced memory accesses on GPU · PPoPP 2013 |
Compilers and program optimization › dynamic optimization
profile-guided optimization |
0.1 | 1 | 2012 | Exploiting inter-sequence correlations for program behavior prediction · OOPSLA 2012 |
Performance modeling and evaluation
program behavior prediction |
0.1 | 1 | 2012 | Exploiting inter-sequence correlations for program behavior prediction · OOPSLA 2012 |
GPUs and heterogeneous computing
GPU computing |
0.1 | 1 | 2011 | On-the-fly elimination of dynamic irregularities for GPU computing · ASPLOS 2011 |
Compilers and program optimization
dynamic optimization |
0.1 | 1 | 2010 | An input-centric paradigm for program dynamic optimizations · OOPSLA 2010 |
Memory systems › cache management
cache interference |
0.1 | 1 | 2010 | Does cache sharing on modern CMP matter to the performance of contemporary multithreaded programs? · PPoPP 2010 |
Memory systems › cache management
cache sharing |
0.1 | 1 | 2010 | Does cache sharing on modern CMP matter to the performance of contemporary multithreaded programs? · PPoPP 2010 |
Embedded and real-time systems
runtime adaptation |
0.0 | 1 | 2011 | On-the-fly elimination of dynamic irregularities for GPU computing · ASPLOS 2011 |
Parallel and multicore computing › parallel computing › parallel application performance
multithreaded application performance |
0.0 | 1 | 2010 | Does cache sharing on modern CMP matter to the performance of contemporary multithreaded programs? · PPoPP 2010 |
Methods — techniques the papers use, named apart from their topics
heuristic algorithm design · 0.3complexity analysis · 0.3statistical correlation analysis · 0.3sequence prediction · 0.3source code transformation · 0.1measurement · 0.1runtime adaptation · 0.1heuristics-based algorithms · 0.1heuristic algorithm · 0.1graph theory · 0.1program input characterization · 0.1input-behavior modeling · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2013 | Complexity analysis and algorithm design for reorganizing data to minimize non-coalesced memory accesses on GPUabstractThe performance of Graphic Processing Units (GPU) is sensitive to irregular memory references. Some recent work shows the promise of data reorganization for eliminating non-coalesced memory accesses that are caused by irregular references. However, all previous studies have employed simple, heuristic methods to determine the new data layouts to create. As a result, they either do not provide any performance guarantee or are effective to only some limited scenarios. This paper contributes a fundamental study to the problem. It systematically analyzes the inherent complexity of the problem in various settings, and for the first time, proves that the problem is NP-complete. It then points out the limitations of existing techniques and reveals that in practice, the essence for designing an appropriate data reorganization algorithm can be reduced to a tradeoff among space, time, and complexity. Based on that insight, it develops two new data reorganization algorithms to overcome the limitations of previous methods. Experiments show that an assembly composed of the new algorithms and a previous algorithm can circumvent the inherent complexity in finding optimal data layouts, making it feasible to minimize non-coalesced memory accesses for a variety of irregular applications and settings that are beyond the reach of existing techniques. Bo Wu 0002, Zhijia Zhao 0001, Eddy Z. Zhang, Yunlian Jiang, Xipeng Shen |
PPoPP | 4 |
| 2012 | Optimal Co-Scheduling to Minimize Makespan on Chip Multiprocessors
Yunlian Jiang, Xipeng Shen, Weizhen Mao |
JSSPP | 2 |
| 2012 | Exploiting inter-sequence correlations for program behavior predictionabstractPrediction of program dynamic behaviors is fundamental to program optimizations, resource management, and architecture reconfigurations. Most existing predictors are based on locality of program behaviors, subject to some inherent limitations. In this paper, we revisit the design philosophy and systematically explore a second source of clues: statistical correlations between the behavior sequences of different program entities. Concentrated on loops, it examines the correlations' existence, strength, and values in enhancing the design of program behavior predictors. It creates the first taxonomy of program behavior sequence patterns. It develops a new form of predictors, named sequence predictors, to effectively translate the correlations into large-scope, proactive predictions of program behavior sequences. It demonstrates the usefulness of the prediction in dynamic version selection and loop importance estimation, showing 19% average speedup on a number of real-world utility applications. By taking scope and timing of behavior prediction as the first-order design objectives, the new approach overcomes limitations of existing program behavior predictors, opening up many new opportunities for runtime optimizations at various layers of computing. Bo Wu 0002, Zhijia Zhao 0001, Xipeng Shen, Yunlian Jiang, Yaoqing Gao, Raúl Silvera |
OOPSLA | 4 |
| 2012 | The Significance of CMP Cache Sharing on Contemporary Multithreaded ApplicationsabstractCache sharing on modern Chip Multiprocessors (CMPs) reduces communication latency among corunning threads, and also causes interthread cache contention. Most previous studies on the influence of cache sharing have concentrated on the design or management of shared cache. The observed influence is often constrained by the reliance on simulators, the use of out-of-date benchmarks, or the limited coverage of deciding factors. This paper describes a systematic measurement of the influence with most of the potentially important factors covered. The measurement shows some surprising results. Contrary to commonly perceived importance of cache sharing, neither positive nor negative effects from the cache sharing are significant for most of the program executions in the PARSEC benchmark suite, regardless of the types of parallelism, input data sets, architectures, numbers of threads, and assignments of threads to cores. After a detailed analysis, we find that the main reason is the mismatch between the software design (and compilation) of multithreaded applications and CMP architectures. By performing source code transformations on the programs in a cache-sharing-aware manner, we observe up to 53 percent performance increase when the threads are placed on cores appropriately, confirming the software-hardware mismatch as a main reason for the observed insignificance of the influence from cache sharing, and indicating the important role of cache-sharing-aware transformations-a topic only sporadically studied so far-for exerting the power of shared cache. Eddy Z. Zhang, Yunlian Jiang, Xipeng Shen |
IEEE Trans. Parallel Distributed Syst. | 2 |
| 2011 | On-the-fly elimination of dynamic irregularities for GPU computingabstractThe power-efficient massively parallel Graphics Processing Units (GPUs) have become increasingly influential for general-purpose computing over the past few years. However, their efficiency is sensitive to dynamic irregular memory references and control flows in an application. Experiments have shown great performance gains when these irregularities are removed. But it remains an open question how to achieve those gains through software approaches on modern GPUs.This paper presents a systematic exploration to tackle dynamic irregularities in both control flows and memory references. It reveals some properties of dynamic irregularities in both control flows and memory references, their interactions, and their relations with program data and threads. It describes several heuristics-based algorithms and runtime adaptation techniques for effectively removing dynamic irregularities through data reordering and job swapping. It presents a framework, G-Streamline, as a unified software solution to dynamic irregularities in GPU computing. G-Streamline has several distinctive properties. It is a pure software solution and works on the fly, requiring no hardware extensions or offline profiling. It treats both types of irregularities at the same time in a holistic fashion, maximizing the whole-program performance by resolving conflicts among optimizations. Its optimization overhead is largely transparent to GPU kernel executions, jeopardizing no basic efficiency of the GPU application. Finally, it is robust to the presence of various complexities in GPU applications. Experiments show that G-Streamline is effective in reducing dynamic irregularities in GPU computing, producing speedups between 1.07 and 2.5 for a variety of applications. Eddy Z. Zhang, Yunlian Jiang, Xipeng Shen |
ASPLOS | 2 |
| 2011 | The Complexity of Optimal Job Co-Scheduling on Chip Multiprocessors and Heuristics-Based SolutionsabstractIn Chip Multiprocessors (CMPs) architecture, it is common that multiple cores share some on-chip cache. The sharing may cause cache thrashing and contention among co-running jobs. Job co-scheduling is an approach to tackling the problem by assigning jobs to cores appropriately so that the contention and consequent performance degradations are minimized. Job co-scheduling includes two tasks: the estimation of co-run performance, and the determination of suitable co-schedules. Most existing studies in job co-scheduling have concentrated on the first task but relies on simple techniques (e.g., trying different schedules) for the second. This paper presents a systematic exploration to the second task. The paper uncovers the computational complexity of the determination of optimal job co-schedules, proving its NP-completeness. It introduces a set of algorithms, based on graph theory and Integer/Linear Programming, for computing optimal co-schedules or their lower bounds in scenarios with or without job migrations. For complex cases, it empirically demonstrates the feasibility for approximating the optimal effectively by proposing several heuristics-based algorithms. These discoveries may facilitate the assessment of job co-schedulers by providing necessary baselines, as well as shed insights to the development of co-scheduling algorithms in practical systems. Yunlian Jiang, Xipeng Shen, Jinghe Zhang, Jie Chen 0010, Rahul Tripathi |
IEEE Trans. Parallel Distributed Syst. | 1 |
| 2010 | Is Reuse Distance Applicable to Data Locality Analysis on Chip Multiprocessors?
Yunlian Jiang, Eddy Z. Zhang, Xipeng Shen |
CC | 1 |
| 2010 | Exploiting statistical correlations for proactive prediction of program behaviorsabstractThis paper presents a finding and a technique on program behavior prediction. The finding is that surprisingly strong statistical correlations exist among the behaviors of different program components (e.g., loops) and among different types of program level behaviors (e.g., loop trip-counts versus data values). Furthermore, the correlations can be beneficially exploited: They help resolve the proactivity-adaptivity dilemma faced by existing program behavior predictions, making it possible to gain the strengths of both approaches--the large scope and earliness of offline-profiling--based predictions, and the cross-input adaptivity of runtime sampling-based predictions. Yunlian Jiang, Eddy Z. Zhang, Feng Mao, Malcom Gethers, Xipeng Shen, Yaoqing Gao |
CGO | 1 |
| 2010 | Combining Locality Analysis with Online Proactive Job Co-scheduling in Chip Multiprocessors
Yunlian Jiang, Xipeng Shen |
HiPEAC | 1 |
| 2010 | Streamlining GPU applications on the fly: thread divergence elimination through runtime thread-data remappingabstractBecause of their tremendous computing power and remarkable cost efficiency, GPUs (graphic processing unit) have quickly emerged as a kind of influential platform for high performance computing. However, as GPUs are designed for massive data-parallel computing, their performance is subject to the presence of condition statements in a GPU application. On a conditional branch where threads diverge in which path to take, the threads taking different paths have to run serially. Such divergences often cause serious performance degradations, impairing the adoption of GPU for many applications that contain non-trivial branches or certain types of loops. Eddy Z. Zhang, Yunlian Jiang, Xipeng Shen |
ICS | 2 |
| 2010 | An input-centric paradigm for program dynamic optimizationsabstractAccurately predicting program behaviors (e.g., locality, dependency, method calling frequency) is fundamental for program optimizations and runtime adaptations. Despite decades of remarkable progress, prior studies have not systematically exploited program inputs, a deciding factor for program behaviors.Triggered by the strong and predictive correlations between program inputs and behaviors that recent studies have uncovered, this work proposes to include program inputs into the focus of program behavior analysis, cultivating a new paradigm named input-centric program behavior analysis. This new approach consists of three components, forming a three-layer pyramid. At the base is program input characterization, a component for resolving the complexity in program raw inputs and the extraction of important features. In the middle is input-behavior modeling, a component for recognizing and modeling the correlations between characterized input features and program behaviors. These two components constitute input-centric program behavior analysis, which (ideally) is able to predict the large-scope behaviors of a program's execution as soon as the execution starts. The top layer of the pyramid is input-centric adaptation, which capitalizes on the novel opportunities that the first two components create to facilitate proactive adaptation for program optimizations.By centering on program inputs, the new approach resolves a proactivity-adaptivity dilemma inherent in previous techniques. Its benefits are demonstrated through proactive dynamic optimizations and version selection, yielding significant performance improvement on a set of Java and C programs. Yunlian Jiang, Eddy Z. Zhang, Xipeng Shen |
OOPSLA | 2 |
| 2010 | Does cache sharing on modern CMP matter to the performance of contemporary multithreaded programs?abstractMost modern Chip Multiprocessors (CMP) feature shared cache on chip. For multithreaded applications, the sharing reduces communication latency among co-running threads, but also results in cache contention. Eddy Z. Zhang, Yunlian Jiang, Xipeng Shen |
PPoPP | 2 |
| 2009 | Speculation with Little Wasting: Saving Cost in Software Speculation through Transparent LearningabstractSoftware speculation has shown promise in parallelizing programs with coarse-grained dynamic parallelism. However, most speculation systems use offline profiling for the selection of speculative regions. The mismatch with the input-sensitivity of dynamic parallelism may result in large numbers of speculation failures in many applications. Although with certain protection, the failed speculations may not hurt the basic efficiency of the application, the wasted computing resource (e.g. CPU time and power consumption) may severely degrade system throughput and efficiency. The importance of this issue continuously increases with the advent of multicore and parallelization in portable devices and multiprogramming environments. In this work, we propose the use of transparent statistical learning to make speculation cross-input adaptive. Across production runs of an application, the technique recognizes the patterns of the profitability of the speculative regions in the application and the relation between the profitability and program inputs. On a new run, the profitability of the regions are predicted accordingly and the speculations are switched on and off adaptively. The technique differs from previous techniques in that it requires no explicit training, but is able to adapt to changes in program inputs. It is applicable to both loop-level and function-level parallelism by learning across iterations and executions, permitting arbitrary depth of speculations. Its implementation in a recent software speculation system, namely the behavior-oriented parallelization system, shows substantial reduction of speculation cost with negligible decrease (sometimes, considerable increase) of parallel execution performance. Yunlian Jiang, Feng Mao, Xipeng Shen |
ICPADS | 1 |
| 2008 | Analysis and approximation of optimal co-scheduling on chip multiprocessorsabstractCache sharing among processors is important for Chip Multiprocessors to reduce inter-thread latency, but also brings cache contention, degrading program performance considerably. Recent studies have shown that job co-scheduling can effectively alleviate the contention, but it remains an open question how to efficiently find optimal co-schedules. Solving the question is critical for determining the potential of a co-scheduling system. This paper presents a theoretical analysis of the complexity of co-scheduling, proving its NP-completeness. Furthermore, for a special case when there are two sharers per chip, we propose an algorithm that finds the optimal co-schedules in polynomial time. For more complex cases, we design and evaluate a sequence of approximation algorithms, among which, the hierarchical matching algorithm produces near-optimal schedules and shows good scalability. This study facilitates the evaluation of co-scheduling systems, as well as offers some techniques directly usable in proactive job co-scheduling. Yunlian Jiang, Xipeng Shen, Jie Chen 0010, Rahul Tripathi |
PACT | 1 |
| 2008 | Exploration of the Influence of Program Inputs on CMP Co-scheduling
Yunlian Jiang, Xipeng Shen |
Euro-Par | 1 |
| 2008 | Adaptive Software Speculation for Enhancing the Cost-Efficiency of Behavior-Oriented ParallelizationabstractRecently, software speculation has shown promising results in parallelizing complex sequential programs by exploiting dynamic high-level parallelism. The speculation however is cost-inefficient. Failed speculations may cause unnecessary shared resource contention, power consumption, and interference to co-running applications. In this work, we propose adaptive speculation and design two algorithms to predict the profitability of a speculation and dynamically disable and enable the speculation of a region. Experimental results demonstrate significant improvement of computation efficiency without performance degradation. The adaptive speculation can also enhance the usability of behavior-oriented parallelization by allowing more flexibility in labeling possibly parallel regions. Yunlian Jiang, Xipeng Shen |
ICPP | 1 |
| 2008 | Adaptive speculation in behavior-oriented parallelizationabstractBehavior-oriented parallelization is a technique for parallelizing complex sequential programs that have dynamic parallelism. Although the technique shows promising results, the software speculation mechanism it uses is not cost-efficient. Failed speculations may waste computing resource and severely degrade system efficiency. In this work, we propose adaptive speculation to predict the profitability of a speculation and dynamically enable or disable the speculation of a region. Experimental results demonstrate the effectiveness of the scheme in improving the efficiency of software speculation. In addition, the adaptive speculation can also enhance the usability of behavior-oriented parallelization by allowing users to label potential parallel regions more flexibly. Yunlian Jiang, Xipeng Shen |
IPDPS | 1 |