SangMin Shim

dblp:25/767 · DBLP profile ↗
← Back
3ranked-venue papers
2as first author
0since 2021 · last 2003
—ORCID · none

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

Systems, architecture and hardware · 3 · 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.

Software engineering, system software, and programming languages
3 papers
Compilers and program optimization · 100%
Computer architecture, parallel and distributed computing, and storage systems
3 papers
Processor architecture and microarchitecture · 90% Parallel and multicore computing · 10%

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

TopicWeightPapersLastEvidence papers
Compilers and program optimization › instruction scheduling
software pipelining
0.132003
Split-Path Enhanced Pipeline Scheduling · IEEE Trans. Parallel Distributed Syst. 2003
Split-path Enhanced Pipeline Scheduling for Loops with Control Flows · MICRO 1998
Evaluation of Scheduling Techniques on a SPARC-based VLIW Testbed · MICRO 1997
Compilers and program optimization › instruction scheduling › software pipelining
modulo scheduling
0.122003
Split-Path Enhanced Pipeline Scheduling · IEEE Trans. Parallel Distributed Syst. 2003
Split-path Enhanced Pipeline Scheduling for Loops with Control Flows · MICRO 1998
Compilers and program optimization
instruction scheduling
0.122003
Split-Path Enhanced Pipeline Scheduling · IEEE Trans. Parallel Distributed Syst. 2003
Evaluation of Scheduling Techniques on a SPARC-based VLIW Testbed · MICRO 1997
Compilers and program optimization › instruction scheduling
pipeline scheduling
0.012003
Split-Path Enhanced Pipeline Scheduling · IEEE Trans. Parallel Distributed Syst. 2003
Processor architecture and microarchitecture
instruction-level parallelism
0.022003
Split-Path Enhanced Pipeline Scheduling · IEEE Trans. Parallel Distributed Syst. 2003
Split-path Enhanced Pipeline Scheduling for Loops with Control Flows · MICRO 1998
Processor architecture and microarchitecture
instruction scheduling
0.011997
Evaluation of Scheduling Techniques on a SPARC-based VLIW Testbed · MICRO 1997
Processor architecture and microarchitecture › instruction-level parallelism
VLIW
0.011997
Evaluation of Scheduling Techniques on a SPARC-based VLIW Testbed · MICRO 1997
Parallel and multicore computing › parallel scheduling
loop scheduling
0.011998
Split-path Enhanced Pipeline Scheduling for Loops with Control Flows · MICRO 1998

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

tail duplication · 0.1if-conversion · 0.1path splitting · 0.0dynamic programming · 0.0profiling · 0.0
YearPublicationVenuePosition
2003 Split-Path Enhanced Pipeline Scheduling
abstract
Software pipelining increases the loop execution throughput by overlapping the execution of successive iterations in a pipelined fashion. For loops with control flows, however, software pipelining is not straightforward because we need to consider the overlap of more than one execution path. Modulo scheduling simply transforms them into straightline loops through if-conversion which, in effect, achieves a fixed, worst-case initiation interval (/spl par/) among all paths. On the other hand, all-path pipelining (APP) and enhanced pipeline scheduling (EPS) can achieve a variable /spl par/ depending on the path that is taken at execution time. Unfortunately, APP concentrates only on the overlap within the same path, entirely losing the overlap between different paths, whereas EPS attempts to overlap all paths together, failing to produce a tight schedule for each individual path, especially when resource constraints are tight. In this paper, we propose a new approach to EPS called split-path EPS (SP-EPS), which first splits each individual path via tail duplication and then performs EPS in a way to guarantee a tight schedule for each path, while producing a competitive cross-path schedule. We also extend SP-EPS to outer loops such that frequent paths that bypass the inner loop are split and then scheduled by SP-EPS. Our experimental results on nontrivial integer benchmarks show that SP-EPS can achieve as much as a geometric mean of 10 percent speedup over EPS when innermost loops are scheduled by SP-EPS, while it can achieve a geometric mean of 11.9 percent speedup when outer loops are also scheduled by SP-EPS.
SangMin Shim, Soo-Mook Moon
IEEE Trans. Parallel Distributed Syst.1
1998 Split-path Enhanced Pipeline Scheduling for Loops with Control Flows
abstract
Software pipelining increases the loop execution throughput by overlapping the execution of successive iterations in a pipelined fashion. For loops with control flows, software pipelining is not straightforward because we need to consider the overlap of more than one execution path. Modulo scheduling simply transforms them into straight-line loops through if-conversion which, in effect, achieves a fixed, worst-case initiation interval (II) among all paths. All-path pipelining (APP) and enhanced pipeline scheduling (EPS) can achieve a variable II depending on the path that is followed through the loop at execution time. Unfortunately, APP concentrates only on the overlap within the same path, entirely losing the overlap between different paths, whereas EPS attempts to overlap all future paths together, failing to produce a tight schedule for each individual path. In this paper, we propose a new approach to EPS which splits each individual path in the loop via tail duplication, and performs EPS in a way to guarantee a tight schedule within the same path, while producing a comparable cross-path schedule. Our experimental results indicate that the proposed technique can achieve as much as a geometric mean of 7% performance improvement on non-trivial integer benchmarks.
SangMin Shim, Soo-Mook Moon
MICRO1
1997 Evaluation of Scheduling Techniques on a SPARC-based VLIW Testbed
abstract
The performance of Very Long Instruction Word (VLIW) microprocessors depends on the close cooperation between the compiler and the architecture. This paper evaluates a set of important compilation techniques and related architectural features for VLIW machines. The evaluation is performed on a SPARC-based VLIW testbed where gcc-generated optimized SPARC code is scheduled into high-performance VLIW code. As a base scheduling compiler, we experiment with three core scheduling techniques including enhanced pipeline scheduling, all-path speculation, and renaming. We analyze the characteristics of the useful and useless ALUs in each cycle to see how many of those ALUs execute non-speculative operations, speculative operations, and copies, respectively. Then, we evaluate the following compilation techniques: software pipelining, loop unrolling, non-greedy enhanced pipeline scheduling, profile-based all-path speculation, trace-based speculation, renaming, restricted speculative loads, and memory disambiguation. Since we experiment on a uniform testbed based on a detailed analysis of ALUs, our evaluation provides an useful insight on the performance impact of these techniques.
Seongbae Park, SangMin Shim, Soo-Mook Moon
MICRO2