EDBT 2026 Demo / reviewers in the wild / expert
Marcelo H. Cintra
dblp:31/2430
· DBLP profile ↗
8ranked-venue papers
5as first author
0since 2021 · last 2007
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 7 · 4 first-authorSoftware engineering, systems software and programming languages · 1 · 1 first-authorApplied, interdisciplinary, general and emerging computing · 1 · 1 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 |
Parallel and multicore computing · 66% Memory systems · 14% Processor architecture and microarchitecture · 11% | |
| Software engineering, system software, and programming languages
2 papers |
Compilers and program optimization · 100% |
Topics — the 16 heaviest of 16, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Parallel and multicore computing
speculative parallelization |
0.2 | 5 | 2007 | A compiler cost model for speculative parallelization · ACM Trans. Archit. Code Optim. 2007 Design Space Exploration of a Software Speculative Parallelization Scheme · IEEE Trans. Parallel Distributed Syst. 2005 Toward efficient and robust software speculative parallelization on multiprocessors · PPoPP 2003 |
Compilers and program optimization › parallelization
thread-level speculation |
0.1 | 1 | 2007 | A compiler cost model for speculative parallelization · ACM Trans. Archit. Code Optim. 2007 |
Parallel and multicore computing › transactional memory
software transactional memory |
0.0 | 1 | 2003 | Toward efficient and robust software speculative parallelization on multiprocessors · PPoPP 2003 |
Parallel and multicore computing
multiprocessor system |
0.0 | 1 | 2002 | Speculative Multithreading Eliminating Squashes through Learning Cross-Thread Violations in Speculative Parallelization for Multiprocessors · HPCA 2002 |
Processor architecture and microarchitecture › multithreading
speculative multithreading |
0.0 | 1 | 2002 | Speculative Multithreading Eliminating Squashes through Learning Cross-Thread Violations in Speculative Parallelization for Multiprocessors · HPCA 2002 |
Memory systems
cache coherence |
0.0 | 1 | 1999 | Excel-NUMA: Toward Programmability, Simplicity, and High Performance · IEEE Trans. Computers 1999 |
Memory systems › cache › cache miss
cache conflict misses |
0.0 | 1 | 1999 | Excel-NUMA: Toward Programmability, Simplicity, and High Performance · IEEE Trans. Computers 1999 |
Memory systems › non-uniform memory access
CC-NUMA |
0.0 | 1 | 1999 | Excel-NUMA: Toward Programmability, Simplicity, and High Performance · IEEE Trans. Computers 1999 |
Storage systems
data migration |
0.0 | 1 | 1999 | Excel-NUMA: Toward Programmability, Simplicity, and High Performance · IEEE Trans. Computers 1999 |
Performance modeling and evaluation
performance prediction |
0.0 | 1 | 2007 | A compiler cost model for speculative parallelization · ACM Trans. Archit. Code Optim. 2007 |
Compilers and program optimization › parallelization
automatic parallelization |
0.0 | 1 | 2005 | Design Space Exploration of a Software Speculative Parallelization Scheme · IEEE Trans. Parallel Distributed Syst. 2005 |
Compilers and program optimization
parallelization |
0.0 | 1 | 2005 | Design Space Exploration of a Software Speculative Parallelization Scheme · IEEE Trans. Parallel Distributed Syst. 2005 |
Parallel and multicore computing › multiprocessor system
shared-memory multiprocessor |
0.0 | 2 | 2000 | Architectural support for scalable speculative parallelization in shared-memory multiprocessors · ISCA 2000 Excel-NUMA: Toward Programmability, Simplicity, and High Performance · IEEE Trans. Computers 1999 |
Parallel and multicore computing
parallel programming models |
0.0 | 1 | 2003 | Toward efficient and robust software speculative parallelization on multiprocessors · PPoPP 2003 |
Processor architecture and microarchitecture
speculative execution |
0.0 | 1 | 2003 | Toward efficient and robust software speculative parallelization on multiprocessors · PPoPP 2003 |
Processor architecture and microarchitecture
multicore design |
0.0 | 1 | 1999 | Excel-NUMA: Toward Programmability, Simplicity, and High Performance · IEEE Trans. Computers 1999 |
Methods — techniques the papers use, named apart from their topics
static cost modeling · 0.1simulation · 0.1design space exploration · 0.1synchronization policies · 0.0performance monitoring · 0.0value prediction · 0.0stall and release · 0.0delayed disambiguation · 0.0thread-level speculation · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2007 | A compiler cost model for speculative parallelizationabstractSpeculative parallelization is a technique that allows code sections that cannot be fully analyzed by the compiler to be aggressively executed in parallel. However, while speculative parallelization can potentially deliver significant speedups, several overheads associated with this technique can limit these speedups in practice. This paper proposes a novel compiler static cost model of speculative multithreaded execution that can be used to predict the resulting performance. This model attempts to predict the expected speedups, or slowdowns, of the candidate speculative sections based on the estimation of the combined runtime effects of various overheads, and taking into account the scheduling restrictions of most speculative execution environments. The model is based on estimating the likely execution duration of threads and considers all the possible permutations of these threads. This model also produces a quantitative estimate of the speedup, which is different from prior heuristics that only qualitatively estimate the benefits of speculative multithreaded execution. In previous work, a limited version of the framework was evaluated on a number of loops from a collection of SPEC benchmarks that suffer mainly from load imbalance and thread dispatch and commit overheads. In this work, an extended framework is also evaluated on loops that may suffer from data-dependence violations. Experimental results show that prediction accuracy is lower when loops with violations are included. Nevertheless, accuracy is still very high for a static model: the framework can identify, on average, 45% of the loops that cause slowdowns and, on average, 96% of the loops that lead to speedups; it predicts the speedups or slowdowns with an error of less than 20% for an average of 28% of the loops across the benchmarks and with an error of less than 50% for an average of 80% of the loops. Overall, the framework often outperforms, by as much as 25%, a naive approach that attempts to speculatively parallelize all the loops considered, and is able to curb the large slowdowns caused in many cases by this naive approach. Jialin Dou, Marcelo H. Cintra |
ACM Trans. Archit. Code Optim. | 2 |
| 2005 | Design Space Exploration of a Software Speculative Parallelization SchemeabstractWith speculative parallelization, code sections that cannot be fully analyzed by the compiler are optimistically executed in parallel. Hardware schemes are fast but expensive and require modifications to the processors and/or memory system. Software schemes require no changes to the hardware of existing shared-memory systems, but can suffer from significant overheads involved with the speculative execution. In fact, the performance of software schemes is highly dependent on application characteristics, the design and implementation of the scheme, and the system configuration and size. This paper explores the design space of a recently proposed software speculative parallelization scheme. In the process, we gain insight into the most beneficial features of software schemes for speculative parallelization, as well as the most influential application characteristics. For instance, experimental results show that, contrary to intuition, checking for data dependence violations on every speculative store, as opposed to at commit time, leads to little performance degradation in the worst case and to significantly better performance with large configurations. Also, scheduling policies based on windows can perform very close to fully dynamic policies with a fraction of the memory overhead. Finally, experimental results show consistent speedups in the execution of loops that cannot be parallelized at compile time, both with and without RAW data dependences, for 4 to 32 processors. Marcelo H. Cintra, Diego R. Llanos Ferraris |
IEEE Trans. Parallel Distributed Syst. | 1 |
| 2004 | Speculative Parallelization of a Randomized Incremental Convex Hull Algorithm
Marcelo H. Cintra, Diego R. Llanos Ferraris, Belén Palop |
ICCSA (3) | 1 |
| 2003 | Toward efficient and robust software speculative parallelization on multiprocessorsabstractWith speculative parallelization, code sections that cannot be fully analyzed by the compiler are aggressively executed in parallel. Hardware schemes are fast but expensive and require modifications to the processors and memory system. Software schemes require no extra hardware but can be inefficient.This paper proposes a new software-only speculative parallelization scheme. The scheme is developed after a systematic evaluation of the design options available and is shown to be efficient and robust and to outperform previously proposed schemes. The novelty and performance advantage of the scheme stem from the use of carefully tuned data structures, synchronization policies, and scheduling mechanisms. Experimental results show that our scheme has small overheads and, for applications with few or no data dependence violations, realizes on average 71% of the speedup of a manually parallelized version of the code, outperforming two recently proposed software-only speculative parallelization schemes. For applications with many data dependence violations, our performance monitors and switches can effectively curb the performance degradation. Marcelo H. Cintra, Diego R. Llanos Ferraris |
PPoPP | 1 |
| 2002 | Speculative Multithreading Eliminating Squashes through Learning Cross-Thread Violations in Speculative Parallelization for MultiprocessorsabstractWith speculative thread-level parallelization, codes that cannot be fully compiler-analyzed are aggressively executed in parallel. If the hardware detects a cross-thread dependence violation, it squashes offending threads and resumes execution. Unfortunately, frequent squashing cripples performance. This paper proposes a new framework of hardware mechanisms to eliminate most squashes due to data dependences in multiprocessors. The framework works by learning and predicting violations, and applying delayed-disambiguation, value prediction, and stall and release. The framework is suited for directory-based multiprocessors that track memory accesses at the system level with the coarse granularity of memory lines. Simulations of a 16-processor machine show that the framework is very effective. By adding our framework to a speculative CC-NUMA with 64-byte memory lines, we speed-up applications by an average of 4.3 times. Moreover, the resulting system is even 23% faster than a machine that tracks memory accesses at the fine granularity of words-a sophisticated system that is not compatible with mainstream cache coherence protocols. Marcelo H. Cintra, Josep Torrellas |
HPCA | 1 |
| 2000 | Architectural support for scalable speculative parallelization in shared-memory multiprocessorsabstractSpeculative parallelization aggressively executes in parallel codes that cannot be fully parallelized by the compiler. Past proposals of hardware schemes have mostly focused on single-chip multiprocessors (CMPs), whose effectiveness is necessarily limited by their small size. Very few schemes have attempted this technique in the context of scalable shared-memory systems. Marcelo H. Cintra, José F. Martínez, Josep Torrellas |
ISCA | 1 |
| 1999 | Excel-NUMA: Toward Programmability, Simplicity, and High PerformanceabstractWhile hardware-coherent scalable shared-memory multiprocessors are relatively easy to program, they still require substantial programming effort to deliver high performance. Specifically, to minimize remote accesses, data must be carefully laid out in memory for locality and application working sets carefully tuned for caches. It has been claimed that this programming effort is less necessary in hardware COMA machines like Flat-COMA thanks to automatic line-based data migration. Unfortunately, Flat-COMA is complex to design. Consequently, we would like a machine as programmable as Flat-COMA, as simple as plain CC-NUMA, and that outperforms both. This paper presents our proposal: Excel-NUMA (EX-NUMA). The idea is to exploit the fact that, after a memory line is written and cached, the storage that kept the line in memory is unutilized. We use that storage to temporarily hold remote data displaced from the local caches. This enables automatic data migration, like in Flat-COMA, enhancing programmability. The hardware required to manage the system is a simple, local module added to a CC-NUMA; the global cache coherence protocol is not changed. Simulations of Splash2 applications show that EX-NUMA outperforms CC-NUMA and Flat-COMA in every single application and eliminates most of the conflict misses. Zheng Zhang 0001, Marcelo H. Cintra, Josep Torrellas |
IEEE Trans. Computers | 2 |
| 1997 | Prefetching and Multithreading Performance in Bus-Based Multiprocessors with Petri Nets
Edward D. Moreno, Sergio Takeo Kofuji, Marcelo H. Cintra |
Euro-Par | 3 |