Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

David C. Wong 0001

dblp:00/5263-1 · DBLP profile ↗
← Back
3ranked-venue papers
0as first author
0since 2021 · last 2018
—ORCID · none

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

Software engineering, systems software and programming languages · 2Systems, architecture and hardware · 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.

Computer architecture, parallel and distributed computing, and storage systems
2 papers
Performance modeling and evaluation · 60% Memory systems · 35% Processor architecture and microarchitecture · 5%
Software engineering, system software, and programming languages
2 papers
Compilers and program optimization · 100%

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

TopicWeightPapersLastEvidence papers
Performance modeling and evaluation
benchmarking
0.312018
An empirical study of the effect of source-level loop transformations on compiler stability · Proc. ACM Program. Lang. 2018
Compilers and program optimization
vectorization
0.112018
An empirical study of the effect of source-level loop transformations on compiler stability · Proc. ACM Program. Lang. 2018
Memory systems
memory consistency
0.112009
BulkCompiler: high-performance sequential consistency through cooperative compiler and hardware support · MICRO 2009
Memory systems › memory consistency › memory consistency model
sequential consistency
0.112009
BulkCompiler: high-performance sequential consistency through cooperative compiler and hardware support · MICRO 2009

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

source-to-source transformation · 0.7empirical benchmarking · 0.7
YearPublicationVenuePosition
2018 An empirical study of the effect of source-level loop transformations on compiler stability
abstract
Modern compiler optimization is a complex process that offers no guarantees to deliver the fastest, most efficient target code. For this reason, compilers struggle to produce a stable performance from versions of code that carry out the same computation and only differ in the order of operations. This instability makes compilers much less effective program optimization tools and often forces programmers to carry out a brute force search when tuning for performance. In this paper, we analyze the stability of the compilation process and the performance headroom of three widely used general purpose compilers: GCC, ICC, and Clang. For the study, we extracted over 1,000 for loop nests from well-known benchmarks, libraries, and real applications; then, we applied sequences of source-level loop transformations to these loop nests to create numerous semantically equivalent mutations ; finally, we analyzed the impact of transformations on code quality in terms of locality, dynamic instruction count, and vectorization. Our results show that, by applying source-to-source transformations and searching for the best vectorization setting, the percentage of loops sped up by at least 1.15x is 46.7% for GCC, 35.7% for ICC, and 46.5% for Clang, and on average the potential for performance improvement is estimated to be at least 23.7% for GCC, 18.1% for ICC, and 26.4% for Clang. Our stability analysis shows that, under our experimental setup, the average coefficient of variation of the execution time across all mutations is 18.2% for GCC, 19.5% for ICC, and 16.9% for Clang, and the highest coefficient of variation for a single loop nest reaches 118.9% for GCC, 124.3% for ICC, and 110.5% for Clang. We conclude that the evaluated compilers need further improvements to claim they have stable behavior.
Zhangxiaowen Gong, Zhi Chen 0001, Justin Josef Szaday, David C. Wong 0001, Zehra Sura, Neftali Watkinson Medina, Saeed Maleki, David A. Padua, Alexander V. Veidenbaum, Alexandru Nicolau, Josep Torrellas
Proc. ACM Program. Lang.4
2017 An Incremental Methodology for Energy Measurement and Modeling
abstract
This paper presents an empirical approach to measuring and modeling the energy consumption of multicore processors.The modeling approach allows us to find a breakdown of the energy consumption among a set of key hardware components, also called HW nodes. We explicitly model the front-end and the back-end in terms of the number of instructions executed. We also model the L1, L2 and L3 caches. Furthermore, we explicitly model the static and dynamic energy consumed by the the uncore and core components. From a software perspective, our methodology allows us to correlate energy to the executed code, which helps find opportunities for code optimization and tuning.
Abdelhafid Mazouz, David C. Wong 0001, David J. Kuck, William Jalby
ICPE2
2009 BulkCompiler: high-performance sequential consistency through cooperative compiler and hardware support
abstract
A platform that supported Sequential Consistency (SC) for all codes --- not only the well-synchronized ones --- would simplify the task of programmers. Recently, several hardware architectures that support high-performance SC by committing groups of instructions at a time have been proposed. However, for a platform to support SC, it is insufficient that the hardware does; the compiler has to support SC as well.
Wonsun Ahn, Shanxiang Qi, M. Nicolaides, Josep Torrellas, Jae-Woo Lee, Samuel P. Midkiff, David C. Wong 0001
MICRO8