Demo Data from EDBT 2026 / reviewers in the wild / expert
Joseph J. Sharkey
dblp:47/3416
· DBLP profile ↗
19ranked-venue papers
13as first author
0since 2021 · last 2008
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 18 · 13 first-authorApplied, interdisciplinary, general and emerging computing · 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.
| Computer architecture, parallel and distributed computing, and storage systems
5 papers |
Processor architecture and microarchitecture · 77% Electronic design automation · 14% Energy-efficient computing · 7% |
Topics — the 9 heaviest of 10, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Processor architecture and microarchitecture › multithreading
simultaneous multithreading |
0.2 | 3 | 2008 | Reducing register pressure in SMT processors through L2-miss-driven early register release · ACM Trans. Archit. Code Optim. 2008 Exploiting Operand Availability for Efficient Simultaneous Multithreading · IEEE Trans. Computers 2007 Efficient instruction schedulers for SMT processors · HPCA 2006 |
Processor architecture and microarchitecture
instruction scheduling |
0.2 | 3 | 2007 | Exploiting Operand Availability for Efficient Simultaneous Multithreading · IEEE Trans. Computers 2007 Instruction packing: Toward fast and energy-efficient instruction scheduling · ACM Trans. Archit. Code Optim. 2006 Efficient instruction schedulers for SMT processors · HPCA 2006 |
Processor architecture and microarchitecture › out-of-order execution
issue queue design |
0.2 | 3 | 2007 | Exploiting Operand Availability for Efficient Simultaneous Multithreading · IEEE Trans. Computers 2007 Instruction packing: Toward fast and energy-efficient instruction scheduling · ACM Trans. Archit. Code Optim. 2006 Efficient instruction schedulers for SMT processors · HPCA 2006 |
Electronic design automation › high-level synthesis › resource binding
register allocation |
0.2 | 2 | 2008 | Predicting and Exploiting Transient Values for Reducing Register File Pressure and Energy Consumption · IEEE Trans. Computers 2008 Reducing register pressure in SMT processors through L2-miss-driven early register release · ACM Trans. Archit. Code Optim. 2008 |
Processor architecture and microarchitecture
register file |
0.2 | 2 | 2008 | Predicting and Exploiting Transient Values for Reducing Register File Pressure and Energy Consumption · IEEE Trans. Computers 2008 Reducing register pressure in SMT processors through L2-miss-driven early register release · ACM Trans. Archit. Code Optim. 2008 |
Energy-efficient computing
power management |
0.1 | 2 | 2008 | Instruction packing: Toward fast and energy-efficient instruction scheduling · ACM Trans. Archit. Code Optim. 2006 Predicting and Exploiting Transient Values for Reducing Register File Pressure and Energy Consumption · IEEE Trans. Computers 2008 |
Processor architecture and microarchitecture › register file
register file management |
0.1 | 1 | 2008 | Reducing register pressure in SMT processors through L2-miss-driven early register release · ACM Trans. Archit. Code Optim. 2008 |
Processor architecture and microarchitecture › instruction scheduling
speculative scheduling |
0.1 | 1 | 2007 | Exploiting Operand Availability for Efficient Simultaneous Multithreading · IEEE Trans. Computers 2007 |
Memory systems › memory hierarchy
cache hierarchy |
0.0 | 1 | 2008 | Reducing register pressure in SMT processors through L2-miss-driven early register release · ACM Trans. Archit. Code Optim. 2008 |
Methods — techniques the papers use, named apart from their topics
instruction packing · 0.1speculative avoidance · 0.1simulation · 0.1microarchitectural extension · 0.1microarchitectural simulation · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2008 | Hiding Communication Delays in Clustered MicroarchitecturesabstractClustered micro architectures represent a viable solution for addressing wire delays in communication-bound architectures by partitioning monolithic data path structures into smaller components. While supporting high frequencies, clustered processors usually degrade the instruction throughput due to the inter-cluster communication delays and non-balanced workload distribution. In this paper, we propose and evaluate novel instruction steering policies to reduce or eliminate cross-cluster communication delays while respecting workload balance. Our first technique hides the inter-cluster communication latencies by examining operand readiness information. The proposed policy steers instructions with two register sources to the cluster predicted to generate the last-produced operand. While the later-produced operand is being generated, the transport of the early-produced operand can occur in parallel, hiding the communication delay. Our second technique steers an entire group of instructions co-renamed in a cycle to the same cluster if the number of intra-group register dependencies exceed a threshold. This is done in a round-robin fashion in order to reduce impact on workload balancing. Robert J. LaDuca, Joseph J. Sharkey, Dmitry V. Ponomarev |
SBAC-PAD | 2 |
| 2008 | Reducing register pressure in SMT processors through L2-miss-driven early register releaseabstractThe register file is one of the most critical datapath components limiting the number of threads that can be supported on a simultaneous multithreading (SMT) processor. To allow the use of smaller register files without degrading performance, techniques that maximize the efficiency of using registers through aggressive register allocation/deallocation can be considered. In this article, we propose a novel technique to early deallocate physical registers allocated to threads which experience L2 cache misses. This is accomplished by speculatively committing the load-independent instructions and deallocating the registers corresponding to the previous mappings of their destinations, without waiting for the cache miss request to be serviced. The early deallocated registers are then made immediately available for allocation to instructions within the same thread as well as within other threads, thus improving the overall processor throughput. On the average across the simulated mixes of multiprogrammed SPEC 2000 workloads, our technique results in 33% improvement in throughput and 25% improvement in terms of harmonic mean of weighted IPCs over the baseline SMT with the state-of-the-art DCRA policy. This is achieved without creating checkpoints, maintaining per-register counters of pending consumers, performing tag rebroadcasts, register remappings, and/or additional associative searches. Joseph J. Sharkey, Jason Loew, Dmitry V. Ponomarev |
ACM Trans. Archit. Code Optim. | 1 |
| 2008 | Predicting and Exploiting Transient Values for Reducing Register File Pressure and Energy ConsumptionabstractHigh-performance microprocessors use large, heavily ported physical register files (RFs) to increase the instruction throughput. The high complexity and power dissipation of such RFs mainly stem from the need to maintain each and every result for a large number of cycles after the result generation. We observed that a significant fraction (about 45 percent) of the result values are never read from the register file and are not required to reconstruct the precise state following branch mispredictions. In this paper, we propose Speculative Avoidance of Register allocations to Transient values (SPARTAN) - a set of microarchitectural extensions that predicts such transient values and, in many cases, completely avoids physical register allocations to them. We show that the transient values can be predicted as such with more than 97 percent accuracy, on average, across simulated SPEC 2000 benchmarks. We evaluate the performance of SPARTAN on a variety of configurations and show that significant improvements in performance and energy efficiency can be realized. Furthermore, we directly compare SPARTAN against a number of previously proposed schemes for register optimizations and show that our technique significantly outperforms all those schemes. Deniz Balkan, Joseph J. Sharkey, Dmitry V. Ponomarev, Kanad Ghose |
IEEE Trans. Computers | 2 |
| 2008 | Selective Writeback: Reducing Register File Pressure and Energy ConsumptionabstractMuch of the complexity in today's superscalar microprocessors stems from the need to maintain the speculatively produced results within the on-chip storage components until these results can be safely discarded without endangering the reconstruction of the precise state or impeding the recovery from possible branch misspeculations. For this, modern designs use large, heavily-ported physical register files (RFs) to increase the instruction throughput. The high complexity and power dissipation of such RFs mainly stem from the need to maintain each and every result for a large number of cycles after the result generation. We observed that a significant fraction (about 45%) of the result values are delivered to their consumers via the bypass network (consumed ldquoon-the-flyrdquo) and are never read out from the destination registers. In this paper, we first formulate conditions for identifying such transient values and describe their microarchitectural implementation; then we propose a technique to avoid the writeback of such transient values into the RF. With 64-entry integer and floating point register files, our technique achieves an 11% performance improvement and 29% reduction in the RF energy consumption compared to the baseline machine with the same number of registers. Furthermore, for the same performance target, the selective writeback scheme results in a 38% reduction in the energy consumption of the RF compared to the baseline machine. Deniz Balkan, Joseph J. Sharkey, Dmitry V. Ponomarev, Kanad Ghose |
IEEE Trans. Very Large Scale Integr. Syst. | 2 |
| 2007 | An L2-miss-driven early register deallocation for SMT processorsabstractThe register file is one of the most critical datapath components limiting the number of threads that can be supported on a Simultaneous Multithreading (SMT) processor. To allow the use of smaller register files without degrading performance, techniques that maximize the efficiency of using registers through aggressive register allocation/deallocation can be considered. In this paper, we propose a novel technique to early deallocate physical registers allocated to threads that experience L2 cache misses. This is accomplished by speculatively committing the load-independent instructions and deallocating the registers corresponding to the previous mappings of their destinations, without waiting for the cache miss request to be serviced. The early deallocated registers are then made immediately available for allocation to instructions within the same thread as well as within other threads, thus improving the overall processor throughput. On the average across the simulated mixes of multiprogrammed SPEC 2000 workloads, our technique results in 33% improvement in throughput and 25% improvement in terms of harmonic mean of weighted IPCs over the baseline SMT with the state-of-the-art DCRA policy. This is achieved without creating checkpoints, maintaining per-register counters of pending consumers, performing tag re-broadcasts, register re-mappings and/or additional associative searches. Joseph J. Sharkey, Dmitry V. Ponomarev |
ICS | 1 |
| 2007 | Evaluating design tradeoffs in on-chip power management for CMPsabstractIn light of the recent shift towards multi-core processor designs, dynamic power-management techniques that were designed for single-core microprocessors must be augmented with larger chip-level control. In this paper, we explore the design-tradeoffs associated with CMP power management solutions in a full-system simulation environment. We show that global power management solutions outperform solutions that locally manage power per-core. We then show that global power management is most effective at finer granularities that allow it to adapt to changing workload behavior and thus conclude that on-chip hardware solutions for CMP power management are an important consideration for future CMP microprocessors. Joseph J. Sharkey, Alper Buyuktosunoglu, Pradip Bose |
ISLPED | 1 |
| 2007 | Exploiting Operand Availability for Efficient Simultaneous MultithreadingabstractWe propose several schemes to improve the scalability, reduce the complexity and delays, and increase the throughput of dynamic scheduling in SMT processors. Our first design is an adaptation of the proposed instruction packing to SMT. Instruction packing opportunistically packs two instructions (possibly from different threads), each with at most one nonready source operand at the time of dispatch, into the same issue queue entry. Our second design, termed 2OP_BLOCK, takes these ideas one step further and completely avoids the dispatching of the instructions with two nonready source operands. This technique has several advantages. First, it reduces the scheduling complexity (and the associated delays) as the logic needed to support the instructions with two nonready source operands is eliminated. More surprisingly, 2OP_BLOCK simultaneously improves the performance as the same issue queue entry may be reallocated multiple times to the instructions with at most one nonready source (which usually spends fewer cycles in the queue) as opposed to hogging the entry with an instruction which enters the queue with two nonready sources. For, schedulers with the capacity to hold 64 instructions on a 4-way SMT, the 2OP_BLOCK design outperforms the traditional queue by 14 percent, on average, and at the same time results in a 10 percent reduction in the overall scheduling delay. We also present mechanisms to support speculative scheduling with 2OP_BLOCK and introduce the hybrid scheme that dynamically switches between 2OP_BLOCK and instruction packing modes depending on the workload characteristics, to achieve further performance gains Joseph J. Sharkey, Dmitry V. Ponomarev |
IEEE Trans. Computers | 1 |
| 2006 | SPARTAN: speculative avoidance of register allocations to transient values for performance and energy efficiencyabstractHigh-performance microprocessors use large, heavily-ported physical register files (RFs) to increase the instruction throughput. The high complexity and power dissipation of such RFs mainly stem from the need to maintain each and every result for a large number of cycles after the result generation. We observed that a significant fraction (about 45%) of the result values are never read from the register file and are not required to recover from branch mispredictions. In this paper, we propose SPARTAN - a set of micro-architectural extensions that predicts such transient values and in many cases completely avoids physical register allocations to them. We show that the transient values can be predicted as such with more than 97% accuracy on the average across simulated SPEC 2000 benchmarks. We evaluate the performance of SPARTAN on a variety of configurations and show that significant improvements in performance and energy-efficiency can be realized. Furthermore, we directly compare SPARTAN against a number of previously proposed schemes for register optimizations and show that our technique significantly outperforms all those schemes. Deniz Balkan, Joseph J. Sharkey, Dmitry V. Ponomarev, Kanad Ghose |
PACT | 2 |
| 2006 | Adaptive reorder buffers for SMT processorsabstractIn SMT processors, the complex interplay between private and shared datapath resources needs to be considered in order to realize the full performance potential. In this paper, we show that blindly increasing the size of the per-thread reorder buffers to provide a larger number of in-flight instructions does not result in the expected performance gains but, quite in contrast, degrades the instruction throughput for virtually all multithreaded workloads. The reason for this performance loss is the excessive pressure on the shared datapath resources, especially the instruction scheduling logic. We propose intelligent mechanisms for dynamically adapting the number of reorder buffer entries allocated to each thread in an effort to avoid such allocations if they detrimentally impact the scheduler. We achieve this goal through categorizing the program execution into issue-bound and commit-bound phases and only performing the buffer allocations to the threads operating in commit-bound phases. Our adaptive technique achieves improvements of 21% in instruction throughput and 10% in the fairness metric compared to the best performing baseline configuration with static ROBs. Joseph J. Sharkey, Deniz Balkan, Dmitry V. Ponomarev |
PACT | 1 |
| 2006 | Trade-Offs in Transient Fault Recovery Schemes for Redundant Multithreaded Processors
Joseph J. Sharkey, Nayef Abu-Ghazeleh, Dmitry V. Ponomarev, Kanad Ghose, Aneesh Aggarwal |
HiPC | 1 |
| 2006 | Efficient instruction schedulers for SMT processorsabstractWe propose dynamic scheduler designs to improve the scheduler scalability and reduce its complexity in the SMT processors. Our first design is an adaptation of the recently proposed instruction packing to SMT. Instruction packing opportunistically packs two instructions (possibly from different threads), each with at most one non-ready source operand at the time of dispatch, into the same issue queue entry. Our second design, termed 2OP/spl I.bar/BLOCK, takes these ideas one step further and completely avoids the dispatching of the instructions with two non-ready source operands. This technique has several advantages. First, it reduces the scheduling complexity (and the associated delays) as the logic needed to support the instructions with 2 non-ready source operands is eliminated. More surprisingly, 2OP/spl I.bar/BLOCK simultaneously improves the performance as the same issue queue entry may be reallocated multiple times to the instructions with at most one non-ready source (which usually spend fewer cycles in the queue) as opposed to hogging the entry with an instruction which enters the queue with two non-ready sources. For the schedulers with the capacity to hold 64 instructions, the 2OP/spl I.bar/BLOCK design outperforms the traditional queue by 11%, on the average, and at the same time results in a 10% reduction in the overall scheduling delay. Joseph J. Sharkey, Dmitry V. Ponomarev |
HPCA | 1 |
| 2006 | Address-Value Decoupling for Early Register DeallocationabstractWe propose a series of aggressive register deallocation mechanisms to reduce the register file pressure and increase the parallelism exploited by superscalar microprocessors. Our techniques are based on a key observation that a register value can be temporarily decoupled from the register identifier. Specifically, even if a physical register is deallocated, the value is still available in the register and can be read by the dependent instructions until the register is overwritten. In these situations, we can effectively overlap the consumption of the produced register value and partial processing of the instruction that gets the same register reassigned to it. In this paper, we propose several realizations of the address-value decoupling idea and discuss their implications on the performance. Our most aggressive scheme achieves an average IPC speedup of 14.6% across simulated SPEC 2000 benchmarks Deniz Balkan, Joseph J. Sharkey, Dmitry V. Ponomarev, Aneesh Aggarwal |
ICPP | 2 |
| 2006 | Balancing ILP and TLP in SMT Architectures through Out-of-Order Instruction DispatchabstractSimultaneous multi-threading (SMT) architectures open up new avenues for datapath optimizations due to the presence of thread-level parallelism (TLP). One recent proposal for exploiting such parallelism is the 2OP_BLOCK scheduler design, which completely avoids the dispatch of instructions with two non-ready source operands into the issue queue. This technique reduces the scheduler complexity and also provides performance benefits for workloads with sufficient TLP, as the issue queue is more efficiently utilized. In this paper we first revisit the 2OP_BLOCK scheduler and show that this design actually results in performance losses for workloads with a limited number of threads because the constraints imposed on the exploitable ILP within each thread outweigh its advantages. To balance the ILP (instruction-level parallelism) and TLP in SMT processors supporting such schedulers, we propose out-of-order dispatch of instructions within each thread. This simple augmentation naturally allows the 2OP_BLOCK scheduler to perform well even when the number of threads is small. Furthermore, for environments with a larger number of threads, the out-of-order dispatch mechanism improves the performance of the original proposal by up to 15% on the average across simulated multithreaded mixes of SPEC 2000 benchmarks Joseph J. Sharkey, Dmitry V. Ponomarev |
ICPP | 1 |
| 2006 | Selective writeback: exploiting transient values for energy-efficiency and performanceabstractToday's superscalar microprocessors use large, heavily-ported physical register files (RFs) to increase the instruction throughput. The high complexity and power dissipation of such RFs mainly stem from the need to maintain each and every result for a large number of cycles after the result generation. We observed that a significant fraction (about 45%) of the result values are delivered to their consumers via the bypass network (consumed on-the-fly) and are never read out from the destination registers. In this paper, we first formulate conditions for identifying such transient values and describe their micro-architectural implementation; then we propose a technique to avoid the writeback of such transient values into the RF. With 64-entry integer and floating point register files, our technique achieves an 11% performance improvement and 29% reduction in the RF energy consumption compared to the baseline machine with the same number of registers. Furthermore, for the same performance target, the Selective Writeback scheme results in a 38% reduction in the energy consumption of the RF compared to the baseline machine. Deniz Balkan, Joseph J. Sharkey, Dmitry V. Ponomarev, Kanad Ghose |
ISLPED | 2 |
| 2006 | Instruction packing: Toward fast and energy-efficient instruction schedulingabstractTraditional dynamic scheduler designs use one issue queue entry per instruction, regardless of the actual number of operands actively involved in the wakeup process. We propose Instruction Packing---a novel microarchitectural technique that reduces both delay and power consumption of the issue queue by sharing the associative part of an issue queue entry between two instructions, each with, at most, one nonready register source operand at the time of dispatch. Our results show that this technique results in 40% reduction of the IQ power and 14% reduction in scheduling delay with negligible IPC degradations. Joseph J. Sharkey, Dmitry V. Ponomarev, Kanad Ghose, Oguz Ergin |
ACM Trans. Archit. Code Optim. | 1 |
| 2005 | Non-uniform Instruction Scheduling
Joseph J. Sharkey, Dmitry V. Ponomarev |
Euro-Par | 1 |
| 2005 | Instruction Recirculation: Eliminating Counting Logic in Wakeup-Free Schedulers
Joseph J. Sharkey, Dmitry V. Ponomarev |
Euro-Par | 1 |
| 2005 | Power-Efficient Wakeup Tag BroadcastabstractThe dynamic instruction scheduling logic is one of the most critical components of modern superscalar microprocessors, both from the delay and power dissipation standpoints. The delay and energy requirement of driving the wakeup tags across the associatively-addressed issue queue accounts for a significant percentage of the scheduler's overhead and also limits the design scalability. We propose tag memoization and tagline folding - two schemes to reduce the power of wakeup tag broadcasts by reducing the number of tag-bits that are driven in each broadcast. Our results show that the combination of these mechanisms provides 223% average reduction of the wakeup tag broadcast power with no impact on the IPC. Joseph J. Sharkey, Kanad Ghose, Dmitry V. Ponomarev, Oguz Ergin |
ICCD | 1 |
| 2005 | Instruction packing: reducing power and delay of the dynamic scheduling logicabstractThe instruction scheduling logic used in modern superscalar microprocessors often relies on associative searching of the issue queue entries to dynamically wakeup instructions for the execution. Traditional designs use one issue queue entry for each instruction, regardless of the actual number of operands actively used in the wakeup process. In this paper we propose Instruction Packing - a novel microarchitectural technique that reduces both the delay and the power consumption of the issue queue by sharing the associative part of an issue queue entry between two instructions, each with at most one non-ready register source operand at the time of dispatch. Our results show that Instruction Packing provides a 39% reduction of the whole issue queue power and 21.6% reduction in the wakeup delay with as little as 0.4% IPC degradation on the average across the simulated SPEC benchmarks Joseph J. Sharkey, Dmitry V. Ponomarev, Kanad Ghose, Oguz Ergin |
ISLPED | 1 |