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

Alex Gontmakher

dblp:12/5109 · DBLP profile ↗
← Back
4ranked-venue papers
4as 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 · 4 · 4 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
2 papers
Processor architecture and microarchitecture · 62% Parallel and multicore computing · 25% Energy-efficient computing · 13%
Software engineering, system software, and programming languages
2 papers
Concurrent programming · 54% Programming languages and type systems · 40% Runtime systems and virtual machines · 6%

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

TopicWeightPapersLastEvidence papers
Processor architecture and microarchitecture › multithreading
fine-grain multithreading
0.122007
Using fine grain multithreading for energy efficient computing · PPoPP 2007
Speculative synchronization and thread management for fine granularity threads · HPCA 2006
Energy-efficient computing › energy-efficient architecture
energy-efficient processor
0.112007
Using fine grain multithreading for energy efficient computing · PPoPP 2007
Processor architecture and microarchitecture › microprocessor design › processor core design
in-order core
0.112007
Using fine grain multithreading for energy efficient computing · PPoPP 2007
Processor architecture and microarchitecture
multithreading
0.112007
Using fine grain multithreading for energy efficient computing · PPoPP 2007
Parallel and multicore computing
thread-level parallelism
0.112007
Using fine grain multithreading for energy efficient computing · PPoPP 2007
Processor architecture and microarchitecture
speculative execution
0.112006
Speculative synchronization and thread management for fine granularity threads · HPCA 2006
Parallel and multicore computing › parallel programming runtimes
thread management
0.112006
Speculative synchronization and thread management for fine granularity threads · HPCA 2006
Concurrent programming › memory models
java memory model
0.012000
Java consistency: nonoperational characterizations for Java memory behavior · ACM Trans. Comput. Syst. 2000
Programming languages and type systems
language semantics
0.012000
Java consistency: nonoperational characterizations for Java memory behavior · ACM Trans. Comput. Syst. 2000
Concurrent programming
memory models
0.012000
Java consistency: nonoperational characterizations for Java memory behavior · ACM Trans. Comput. Syst. 2000
Programming languages and type systems › language semantics › formal semantics
operational semantics
0.012000
Java consistency: nonoperational characterizations for Java memory behavior · ACM Trans. Comput. Syst. 2000
Runtime systems and virtual machines › virtual machine implementation
java virtual machine
0.012000
Java consistency: nonoperational characterizations for Java memory behavior · ACM Trans. Comput. Syst. 2000

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

speculative execution · 0.1recovery mechanisms · 0.1register sharing · 0.1axiomatic specification · 0.0
YearPublicationVenuePosition
2007 Code Compilation for an Explicitly Parallel Register-Sharing Architecture
abstract
Code generation for a multithreaded register sharing architecture is inherently complex and involves some issues absent in conventional code compilation. To approach the problem, we define a consistency contract between the program and the hardware and require the compiler to preserve the contract during code transformations. To apply the contract to compiler implementation, we develop a correctness framework that ensures preservation of the contract and use it to adjust the code optimizations for correctness under parallel code. One area that is naturally affected by register sharing is register allocation. We discuss adaptation of existing coloring-based algorithms for shared code and show how they benefit from the consistency contract. Another benefit affects the general compiler optimizations. We show that these optimizations need very little restrictions in order to be correct for parallel code, allowing the compiler to realize its potential to a high degree.
Alex Gontmakher, Avi Mendelson, Assaf Schuster, Gregory Shklover
ICPP1
2007 Using fine grain multithreading for energy efficient computing
abstract
We investigate extremely fine-grain multithreading as a means for improving energy efficiency of single-task program execution.Our work is based on low-overhead threads executing an explicitly parallel program in a register-sharing context. The thread-based parallelism takes the place of instruction-level parallelism, allowing us to use simple and more energy-efficient in-order pipelines while retaining performance that is characteristic of classical out-of-order processors. Our evaluation shows that in energy terms, the parallelized code running over in-order pipelines can outperform both plain in-order and out-of-order processors.
Alex Gontmakher, Avi Mendelson, Assaf Schuster
PPoPP1
2006 Speculative synchronization and thread management for fine granularity threads
abstract
Performance of multithreaded programs is heavily influenced by the latencies of the thread management and synchronization operations. Improving these latencies becomes especially important when the parallelization is performed at fine granularity. In this work we examine the interaction of speculative execution with the thread-related operations. We develop a unified framework which allows all such operations to be executed speculatively and provides efficient recovery mechanisms to handle misspeculation of branches which affect instructions in several threads. The framework was evaluated in the context of Inthreads, a programming model designed for very fine grain parallelization. Our measurements show that the speedup obtained by speculative execution of the threads-related instructions can reach 25%.
Alex Gontmakher, Avi Mendelson, Assaf Schuster, Gregory Shklover
HPCA1
2000 Java consistency: nonoperational characterizations for Java memory behavior
abstract
The Java Language Specification (JLS) [Gosling et al. 1996] provides an operational definition for the consistency of shared variables. The definition remains unchanged in the JLS 2nd edition, currently under peer review, which relies on a specific abstract machine as its underlying model, is very complicated. Several subsequent works have tried to simplify and formalize it. However, these revised definitions are also operational, and thus have failed to highlight the intuition behind the original specification. In this work we provide a complete nonoperational specification for Java and for the JVM, excluding synchronized operations. We provide a simpler definition, in which we clearly distinguish the consistency model that is promised to the programmer from that which should be implemented in the JVM. This distinction, which was implicit in the original definition, is crucial for building the JVM. We find that the programmer model is strictly weaker than that of the JVM, and precisely define their discrepancy. Moreover, our definition is independent of any specific (or even abstract) machine, and can thus be used to verify JVM implementations and compiler optimizations on any platform. Finally, we show the precise range of consistency relaxations obtainable for the Java memory model when a certain compiler optimization— called prescient stores in JLS—is applicable.
Alex Gontmakher, Assaf Schuster
ACM Trans. Comput. Syst.1