VLDB 2026 Research / reviewers in the wild / expert
Lingxiang Xiang
dblp:66/5266
· DBLP profile ↗
8ranked-venue papers
5as first author
0since 2021 · last 2017
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 8 · 5 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
2 papers |
Concurrent programming · 60% Compilers and program optimization · 40% | |
| Computer architecture, parallel and distributed computing, and storage systems
1 paper |
Parallel and multicore computing · 100% |
Topics — the 5 heaviest of 5, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Compilers and program optimization › compiler construction
compiler support for transactional memory |
0.2 | 1 | 2015 | Software partitioning of hardware transactions · PPoPP 2015 |
Parallel and multicore computing › transactional memory
hardware transactional memory |
0.2 | 1 | 2015 | Software partitioning of hardware transactions · PPoPP 2015 |
Parallel and multicore computing
transactional memory |
0.2 | 1 | 2015 | Software partitioning of hardware transactions · PPoPP 2015 |
Concurrent programming
concurrent data structures |
0.2 | 1 | 2013 | Compiler aided manual speculation for high performance concurrent data structures · PPoPP 2013 |
Concurrent programming
speculative execution |
0.2 | 1 | 2013 | Compiler aided manual speculation for high performance concurrent data structures · PPoPP 2013 |
Methods — techniques the papers use, named apart from their topics
semantic atomicity validation · 0.4best-effort hardware transactional memory · 0.4compiler-aided speculation · 0.2
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2017 | Performance Improvement via Always-Abort HTMabstractSeveral research groups have noted that hardware transactional memory (HTM), even in the case of aborts, can have the side effect of warming up the branch predictor and caches, thereby accelerating subsequent execution. We propose to employ this side effect deliberately, in cases where execution must wait for action in another thread. In doing so, we allow "warm-up" transactions to observe inconsistent state. We must therefore ensure that they never accidentally commit. To that end, we propose that the hardware allow the program to specify, at the start of a transaction, that it should in all cases abort, even if it (accidentally) executes a commit instruction. We discuss several scenarios in which always-abort HTM (AAHTM) can be useful, and present lock and barrier implementations that employ it. We demonstrate the value of these implementations on several real-world applications, obtaining performance improvements of up to 2.5x with almost no programmer effort. Joseph Izraelevitz, Lingxiang Xiang, Michael L. Scott |
PACT | 2 |
| 2016 | Sparso: Context-driven Optimizations of Sparse Linear AlgebraabstractThe sparse matrix is a key data structure in various domains such as high-performance computing, machine learning, and graph analytics. To maximize performance of sparse matrix operations, it is especially important to optimize across the operations and not just within individual operations. While a straightforward per-operation mapping to library routines misses optimization opportunities, manually optimizing across the boundary of library routines is time-consuming and error-prone, sacrificing productivity. Hongbo Rong, Jongsoo Park, Lingxiang Xiang, Todd A. Anderson 0001, Mikhail Smelyanskiy |
PACT | 3 |
| 2015 | Software partitioning of hardware transactionsabstractBest-effort hardware transactional memory (HTM) allows complex operations to execute atomically and in parallel, so long as hardware buffers do not overflow, and conflicts are not encountered with concurrent operations. We describe a programming technique and compiler support to reduce both overflow and conflict rates by partitioning common operations into read-mostly (planning) and write-mostly (completion) operations, which then execute separately. The completion operation remains transactional; planning can often occur in ordinary code. High-level (semantic) atomicity for the overall operation is ensured by passing an application-specific validator object between planning and completion. Transparent composition of partitioned operations is made possible through fully-automated compiler support, which migrates all planning operations out of the parent transaction while respecting all program data flow and dependences. For both micro- and macro-benchmarks, experiments on IBM z-Series and Intel Haswell machines demonstrate that partitioning can lead to dramatically lower abort rates and higher scalability. Lingxiang Xiang, Michael L. Scott |
PPoPP | 1 |
| 2015 | Conflict Reduction in Hardware Transactions Using Advisory LocksabstractPreliminary experience with hardware transactional memory suggests that aborts due to data conflicts are one of the principal obstacles to scale-up. To reduce the incidence of conflict, we propose an automatic, high-level mechanism that uses advisory locks to serialize (just) the portions of the transactions in which conflicting accesses occur. We demonstrate the feasibility of this mechanism, which we refer to as staggered transactions, with fully developed compiler and runtime support,running on simulated hardware. Our compiler identifies and instruments a small subset of the accesses in each transaction, which it determines, statically, are likely to constitute initial accesses to shared locations. At run time, the instrumentation acquires an advisory lock on the accessed datum, if (and only if) prior execution history suggests that the datum---or locations``downstream'' of it---are indeed a likely source of conflict. Policy to drive the decision requires one hardware feature not generally found in current commercial offerings: nontransactional loads and stores within transactions. It can also benefit from a mechanism to record the program counter at which a cache line was first accessed in a transaction. Simulation results show that staggered transactions can significantly reduce the frequency of conflict aborts and increase program performance. Lingxiang Xiang, Michael L. Scott |
SPAA | 1 |
| 2013 | Compiler aided manual speculation for high performance concurrent data structuresabstractSpeculation is a well-known means of increasing parallelism among concurrent methods that are usually but not always independent. Traditional nonblocking data structures employ a particularly restrictive form of speculation. Software transactional memory (STM) systems employ a much more general---though typically blocking---form, and there is a wealth of options in between. Lingxiang Xiang, Michael L. Scott |
PPoPP | 1 |
| 2009 | L1 Collective Cache: Managing Shared Data for Chip Multiprocessors
Guanjun Jiang, Degui Feng, Liangliang Tong, Lingxiang Xiang, Chao Wang 0058, Tianzhou Chen |
APPT | 4 |
| 2009 | Less reused filter: improving l2 cache performance via filtering less reused linesabstractThe L2 cache is commonly managed using LRU policy. For workloads that have a working set larger than L2 cache, LRU behaves poorly, resulting in a great number of less reused lines that are never reused or reused for few times. In this case, the cache performance can be improved through retaining a portion of working set in cache for a period long enough. Previous schemes approach this by bypassing never reused lines. Nevertheless, severely constrained by the number of never reused lines, sometimes they deliver no benefit due to the lack of never reused lines. Lingxiang Xiang, Tianzhou Chen, Qingsong Shi, Wei Hu 0001 |
ICS | 1 |
| 2007 | The Design and Implementation of the DVS Based Dynamic Compiler for Power Reduction
Lingxiang Xiang, Jiangwei Huang, Weihua Sheng, Tianzhou Chen |
APPT | 1 |