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

Amirali Baniasadi

dblp:15/3651 · DBLP profile ↗
← Back
29ranked-venue papers
6as first author
4since 2021 · last 2023
—ORCID · none

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

Systems, architecture and hardware · 21 · 6 first-authorApplied, interdisciplinary, general and emerging computing · 5 · 3 first-authorSoftware engineering, systems software and programming languages · 3Artificial intelligence and machine learning · 2 · 2 since 2021Security and privacy · 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
Processor architecture and microarchitecture · 51% Energy-efficient computing · 46% Interconnection networks and networks-on-chip · 3%
Software engineering, system software, and programming languages
1 paper
Compilers and program optimization · 100%

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

TopicWeightPapersLastEvidence papers
Processor architecture and microarchitecture
branch prediction
0.412020
Energy Efficient On-Demand Dynamic Branch Prediction Models · IEEE Trans. Computers 2020
Energy-efficient computing › power management › device power management
processor power management
0.412020
Energy Efficient On-Demand Dynamic Branch Prediction Models · IEEE Trans. Computers 2020
Compilers and program optimization › compiler optimization
static branch prediction
0.112020
Energy Efficient On-Demand Dynamic Branch Prediction Models · IEEE Trans. Computers 2020
Processor architecture and microarchitecture
clustered architecture
0.012000
Instruction distribution heuristics for quad-cluster, dynamically-scheduled, superscalar processors · MICRO 2000
Interconnection networks and networks-on-chip
inter-cluster communication
0.012000
Instruction distribution heuristics for quad-cluster, dynamically-scheduled, superscalar processors · MICRO 2000
Processor architecture and microarchitecture
superscalar processor
0.012000
Instruction distribution heuristics for quad-cluster, dynamically-scheduled, superscalar processors · MICRO 2000

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

simulation · 0.9SPEC Int 2006 benchmarks · 0.9
YearPublicationVenuePosition
2023 Automatic Modulation Classification for NLOS 5G Signals with Deep Learning Approaches
abstract
The Automatic Modulation Classification (AMC) technique identifies the modulation scheme used in a received signal automatically without any prior knowledge or manual intervention. When multiple signals with different modulation schemes coexist in wireless communication systems, it’s a crucial task. In AMC, features and patterns are typically analyzed to classify signals into one of several predefined modulation schemes based on machine learning algorithms. It has been shown that deep learning (DL) algorithms are effective in AMC. Using deep neural networks for modulation classification is an excellent choice since they can learn complex patterns and hierarchical representations from data. In this paper, first we produce a dataset for non-line-of-sight signals with digital modulation of Binary Phase-shift keying (BPSK), Quadrature Phase Shift Keying (QPSK), and Quadrature Amplitude Modulation (QAM) which are widely used in modern telecommunications to transmit information. We also use three popular DL approaches in many applications for classification and recognition based on DNN, CNN and LSTM for classification. The experimental results show that the CNN approach outperforms the others significantly.
Meisam Abdollahi, Ramin Sabzalizadeh, Samaneh Javadinia, Sepideh Mashhadi, Sara Sanati Mehrizi, Amirali Baniasadi
WINCOM6
2023 DSP: A Deep Neural Network Approach for Serving Cell Positioning in Mobile Networks
abstract
Positioning remains a crucial aspect with wide-ranging applications, despite the availability of various solutions and extensive research. The lack of transparency surrounding the infrastructure topology and precise locations of base stations operated by telecommunication companies further complicates the positioning process. Moreover, as wireless networks continue to evolve with advancements like 5G and 6G, accurate positioning becomes increasingly important, leveraging vast amounts of data and artificial intelligence techniques. This paper proposes a Deep Neural Network (DNN) based approach called DSP for accurately determining the position of telecommunication operator serving cells in outdoor spaces. The proposed method incorporates fingerprint data collection, machine learning algorithms, and big data analysis to enhance accuracy and expand the range of evaluatable parameters. The data was collected and labeled using the drive test method. By employing deep learning techniques, the proposed method successfully predicts the location of the base station connected to the user device. Through effective data preprocessing and optimized hyperparameters, the average distance error was reduced to 20 meters.
Sepideh Mashhadi, Abolfazl Diyanat, Meisam Abdollahi, Amirali Baniasadi
WINCOM4
2021 PrunedCaps: A Case For Primary Capsules Discrimination
abstract
Capsule Networks (CapsNets) are a generation of image classifiers with proven advantages over Convolutional Neural Networks (CNNs). Better robustness to affine transformation and overlapping image detection are some of the benefits associated with CapsNets. However, CapsNets cannot be classified as a resource-efficient deep learning architecture due to the high number of Primary Capsules (PCs). In addition, CapsNets’ training and testing are slow and resource hungry. This paper investigates the possibility of Primary Capsules pruning in CapsNets on MNIST handwritten digits, Fashion-MNIST, CIFAR-10, and SVHN datasets. We show that a pruned version of CapsNet performs up to 9.90x faster than the conventional architecture by removing 95% percent of Capsules without a loss of accuracy. Also, our pruned architecture saves on more than 95.36% of floating-point operations in the dynamic routing stage of the architecture. Moreover, we provide insight into why some datasets benefit significantly from pruning while others fall behind.
Ramin Sharifi, Pouya Shiri, Amirali Baniasadi
ICMLA3
2021 LE-CapsNet: A Light and Enhanced Capsule Network
abstract
Capsule Network (CapsNet) classifier has several advantages over CNNs, including better detection of images containing overlapping categories and higher accuracy on transformed images. Despite the advantages, CapsNet is slow due to its different structure. In addition, CapsNet is resource-hungry, includes many parameters and lags in accuracy compared to CNNs. In this work, we propose LE-CapsNet as a light, enhanced and more accurate variant of CapsNet. Using 3.8M weights, LECapsNet obtains 76.73% accuracy on the CIFAR-10 dataset while performing inference 4x faster than CapsNet. In addition, our proposed network is more robust at detecting images with affine transformations compared to CapsNet. We achieve 94.37% accuracy on the AffNIST dataset (compared to CapsNet’s 90.52%).
Pouya Shiri, Amirali Baniasadi
ICMLA2
2020 Quick-CapsNet (QCN): A Fast Alternative to Capsule Networks
abstract
The basic computational unit in Capsule Network (CapsNet) [1] is a capsule (vs. neurons in Convolutional Neural Networks (CNNs)). A capsule is a set of neurons, which form a vector. CapsNet is used for supervised classification of data and has achieved state-of-the-art accuracy on MNIST digit recognition dataset, outperforming conventional CNNs in detecting overlapping digits. Moreover, CapsNet shows higher robustness towards affine transformation when compared to CNNs for MNIST datasets. One of the drawbacks of CapsNet, however, is slow training and testing. This can be a bottleneck for applications that require a fast network, especially during inference. In this work, we introduce Quick-CapsNet (QCN) as a fast alternative to CapsNet, which can be a starting point to develop CapsNet for fast real-time applications. QCN builds on producing a fewer number of capsules, which results in a faster network. QCN achieves this at the cost of marginal loss in accuracy. Inference is 5x faster on MNIST, F-MNIST, SVHN and Cifar-10 datasets. We also further enhanced QCN by employing a more powerful decoder instead of the default decoder to further improve QCN.
Pouya Shiri, Ramin Sharifi, Amirali Baniasadi
AICCSA3
2020 Improving InSAR Image Quality and Co-Registration through CNN-Based Super-Resolution
abstract
Interferometric Synthetic Aperture Radar (InSAR) is a measuring technology that uses the phase information contained in the images of the Synthetic Aperture Radar (SAR). InSAR has been recognized as a potential method for digital elevation models (DEMs) generation and ground surface deformation measurement. Nonetheless, the quality of InSAR data is influenced by many critical factors. Including image co-registration, interferogram generation, phase unwrapping and geocoding. Image co-registration aims to align two or more images so that the same pixel in each image corresponds to the same point of the target scene. This study proposes a new algorithm for improving Image co-registration and interferogram generation of SAR using learning-based images super-resolution (SR). We show that our approach improves the conventional approaches.
Khaled A. Helal, Amirali Baniasadi, Nikitas J. Dimopoulos, Matthew Gara
ISCAS2
2020 Energy Efficient On-Demand Dynamic Branch Prediction Models
abstract
The branch predictor unit (BPU) is among the main energy consuming components in out-of-order (OoO) processors. For integer applications, we find 16 percent of the processor energy is consumed by the BPU. BPU is accessed in parallel with the instruction cache before it is known if a fetch group contains control instructions. We find 85 percent of BPU lookups are done for non-branch operations, and of the remaining lookups, 42 percent are done for highly biased branches that can be predicted statically with high accuracy. We evaluate two variants of a branch prediction model that combines dynamic and static branch prediction to achieve energy improvements for power-constrained applications. These models, named on-demand branch prediction (ODBP) and path-based on-demand branch prediction (ODBP-PATH), are two novel prediction techniques that eliminate unnecessary BPU lookups using compiler generated hints to identify instructions that can be more accurately predicted statically. ODBP-PATH is an implementation of ODBP that combines static and dynamic branch prediction based on the program path of execution. For a 4-wide OoO processor, ODBP-PATH delivers 11 percent average energy-delay (ED) product improvement, and 9 percent core average energy saving on the SPEC Int 2006 benchmarks.
Milad Mohammadi, Song Han 0003, Ehsan Atoofian, Amirali Baniasadi, Tor M. Aamodt, William J. Dally
IEEE Trans. Computers4
2015 Power-efficient prefetching on GPGPUs
Hajar Falahati, Shaahin Hessabi, Mania Abdi, Amirali Baniasadi
J. Supercomput.4
2014 A case against small data types in GPGPUs
abstract
In this paper, we study application behavior in GPGPUs. We investigate how data type impacts performance in different applications. As we show, expectedly, some applications can take significant advantage of small data types. Such applications benefit from small data types as a result of increasing cache effective capacity, reducing memory pressure, access latency, and memory bandwidth demand. This typical behavior, however, has some exceptions. In this work we show that although using small data types can improve memory efficiency, it can also degrade performance due to an increase in the number of cache miss handling stalls. We present 1D stencil application as a case example where this occurs. We analyze our findings through a combination of real-hardware and cycle-accurate simulation. Studying regular highly-coalesced memory pattern, we conclude that cache miss handling resources can play an important role in negating small data type advantages.
Ahmad Lashgar, Amirali Baniasadi
ASAP2
2014 HARP: Harnessing inactive threads in many-core processors
abstract
SIMT accelerators are equipped with thousands of computational resources. Conventional accelerators, however, fail to fully utilize available resources due to branch and memory divergences. This underutilization is manifested in two underlying inefficiencies: pipeline width underutilization and pipeline depth underutilization. Width underutilization occurs when SIMD execution units are not entirely utilized due to branch divergences. This affects lane activity and results in SIMD inefficiency. Depth underutilization takes place when the pipeline runs out of active threads and is forced to leave pipeline stages idle. This work addresses both inefficiencies by harnessing inactive threads available to the pipeline. We introduce Harnessing inActive thReads in many-core Processors (or simply HARP) to improve width and depth utilization in accelerators. We show how using inactive yet ready threads can enhance performance. Moreover, we investigate implementation details and study microarchitectural changes needed to build a HARP-enhanced accelerator. Furthermore, we evaluate HARP under a variety of microarchitectural design points. We measure the area overhead associated with HARP and compare to conventional alternatives. Under Fermi-like GPUs, we show that HARP provides 10% speedup on average (maximum of 1.6X) at the cost of 3.5% area overhead. Our analysis shows that HARP performs better under narrower SIMD and shorter pipelines.
Ahmad Lashgar, Ahmad Khonsari, Amirali Baniasadi
ACM Trans. Embed. Comput. Syst.3
2013 FARHAD: A Fault-Tolerant Power-Aware Hybrid Adder for add intensive applications
abstract
This paper introduces an alternative FaultTolerant Power-Aware Hybrid Adder (or simply FARHAD). FARHAD is a highly power efficient protection solution against errors in application with high number of additions. FARHAD, similar to earlier studies, relies on performing add operations twice to detect errors. Unlike previous studies, FARHAD uses an aggressive adder to produce the initial outcome and a low-power adder to generate the second outcome, referred to as the checker. FARHAD uses checkpointing, a feature already available to high-performance processors, to recover from errors. FARHAD achieves the high energy-efficiency of time-redundant solutions and the high performance of resource-redundant adders. We evaluate FARHAD from power and performance points of view using a subset of SPEC'2K benchmark. Our evaluations show that FARHAD outperforms an alternative time-redundant solution by 20%. FARHAD reduces the power dissipation of an alternative resource-redundant adder by 40% while maintaining performance.
Mohammad Hossein Hajkazemi, Amirali Baniasadi, Hossein Asadi 0001
ASAP2
2013 Using synchronization stalls in power-aware accelerators
abstract
GPUs spend significant time on synchronization stalls. Such stalls provide ample opportunity to save leakage energy in GPU structures left idle during such periods. In this paper we focus on the register file structure of NVIDIA GPUs and introduce sync-aware low leakage solutions to reduce power. Accordingly, we show that applying the power gating technique to the register file during synchronization stalls can improve power efficiency without considerable performance loss. To this end, we equip the register file with two leakage power saving modes with different levels of power saving and wakeup latencies.
Ali Jooya, Amirali Baniasadi
DATE2
2013 ARV-ALA: Improving performance of software transactional memory through adaptive read and write policies
Ehsan Atoofian, Amirali Baniasadi, Yvonne Coady
Sci. Comput. Program.2
2012 Dynamic warp resizing: Analysis and benefits in high-performance SIMT
abstract
Modern GPUs synchronize threads grouped in warps. The number of threads included in each warp (or warp size) affects divergence, synchronization overhead, and the efficiency of memory access coalescing. Small warps reduce the performance penalty associated with branch and memory divergence at the expense of a reduction in memory coalescing. Large warps enhance memory coalescing significantly but also increase branch and memory divergence. Dynamic workload behavior, including branch/memory divergence and coalescing, is an important factor in determining the warp size returning best performance. Based on this observation, we propose Dynamic Warp Resizing (DWR). DWR outperforms static warp size decisions, up to 2.28X.
Ahmad Lashgar, Amirali Baniasadi, Ahmad Khonsari
ICCD2
2011 Instruction and data cache peak temperature reduction using cache access balancing in embedded processors
abstract
In this work we study cache peak temperature variation under different cache access patterns. In particular we show that unbalanced cache access results in higher cache peak temperature. This is the result of frequent accesses made to overused cache sets. Moreover we study cache peak temperature under cache access balancing techniques and show that exploiting such techniques not only reduces cache miss rate but also results in lower peak temperature. Our study shows that balancing cache access reduces peak temperature by up to 20% and 12% for instruction and data caches respectively. This temperature reduction reduces peak temperature in neighbor components by up to 7%.
Mohsen Taherian, Amirali Baniasadi, Hamid Noori
AICCSA2
2010 Storage-Aware Value Prediction
abstract
Despite the huge potential, value predictors have not been used in modern processors. This is partially due to the complex structures associated with such predictors. In this paper we study value predictors and investigate solutions to reduce storage requirements while imposing negligible coverage cost. Our solutions build on the observation that conventional value predictors do not utilize storage efficiently as they allocate too much space for small and frequently appearing values. We measure data width requirement and entropy in a subset of predictor resources and show that values stored in predictors show limited sizes and very small entropy. We exploit this behavior and suggest different bit sharing solutions for predictors storing single byte values.
Amirali Baniasadi
DSD2
2010 Helia: Heterogeneous Interconnect for Low Resolution Cache Access in snoop-based chip multiprocessors
abstract
In this work we introduce Heterogeneous Interconnect for Low Resolution Cache Access (Helia). Helia improves energy efficiency in snoop-based chip multiprocessors as it eliminates unnecessary activities in both interconnect and cache. This is achieved by using innovative snoop filtering mechanisms coupled with wire management techniques. Our optimizations rely on the observation that a high percentage of cache mismatches could be detected by utilizing a small subset but highly informative portion of the tag bits. Helia relies on the snoop controller to detect possible remote tag mismatches prior to tag array lookup. Power is reduced as a) our wire management techniques permit slow transmission of a subset of tag bits while tag mismatches are being detected and b) we avoid cache access for mismatches detected at the snoop controller. Our Evaluation shows that Helia reduces power in interconnect (dynamic: 64% to 75%, static: 45% to 50%) and cache tag array (dynamic: 57% to 58%, static: 80%) while improving average performance up to 4.4%.
Ali Shafiee, Narges Shahidi, Amirali Baniasadi
ICCD3
2010 System-Level Vulnerability Estimation for Data Caches
abstract
Over the past few years, radiation-induced transient errors, also referred to as soft errors, have been a severe threat to the data integrity of high-end and mainstream processors. Recent studies show that cache memories are among the most vulnerable components to soft errors within high-performance processors. Accurate modeling of the Vulnerability Factor (VF) is an essential step towards developing cost-effective protection techniques for cache memory. Although Fault Injection (FI) techniques can provide relatively accurate VF estimations they are often very time consuming. To overcome the limitation, recent analytical models were proposed to compute the cache VF in a timely fashion. In this paper, we extend previous work and propose an alternative analytical model to compute System-level Vulnerability Factor (SVF) for both write-through and write-back data caches. In our proposed analytical model, we take into account both read frequency and error masking to compute system-level vulnerability of data cache. Previously suggested modeling techniques overlook the issues of read frequency and error masking, mainly focusing on time periods in which an error could propagate in the system. In this work we show that overlooking these two parameters can significantly impact the system-level VFs for data caches. We report our estimations for SPEC'2K benchmarks and compare to previously suggested models. Our experimental results show that the proposed modeling technique changes previous VF estimations by up to 40%.
Aliakbar Haghdoost, Hossein Asadi 0001, Amirali Baniasadi
PRDC3
2009 Application Specific Transistor Sizing for Low Power Full Adders
abstract
Previously suggested transistor sizing algorithms assume that all input transitions are equally important. In this work we show that this is not an accurate assumption as input transitions appear in different frequencies. We take advantage from this phenomenon and introduce application specific transistor sizing. In application specific transistor sizing higher priority is given to more frequent transitions. We apply our technique to two modern and low-power full adders (i.e., hybrid-CMOS and TFA) and show that it is possible to further reduce power dissipation and PDP. By using our technique we improve average PDP by 6% and 9% for TFA and hybrid-CMOS adders respectively. We reduce ALU energy consumption for ALU designs using TFA and hybrid-CMOS FAs by 2.7% and 4 % respectively.
Fatemeh Eslami, Amirali Baniasadi, Mostafa Farahani
ASAP2
2008 Using supplier locality in power-aware interconnects and caches in chip multiprocessors
Ehsan Atoofian, Amirali Baniasadi
J. Syst. Archit.2
2007 A Power-Aware Prediction-Based Cache Coherence Protocol for Chip Multiprocessors
abstract
Snoopy cache coherence protocols broadcast requests to all nodes, reducing the latency of cache to cache transfer misses at the expense of increasing interconnect power. We propose speculative supplier identification (SSI) to reduce power dissipation in binary tree interconnects in snoopy cache coherence implementations. In SSI, instead of broadcasting a request to all processors, we send the request to the node more likely to have the missing data. We reduce power as we limit access only to the interconnect components between the requestor and the supplier node. We evaluate SSI using shared memory applications. We show that SSI reduces interconnect power by 23% in a 4-way multiprocessor. This comes with negligible performance cost and hardware overhead. SSI does not change existing coherence protocols and is completely transparent to software and the operating system.
Ehsan Atoofian, Amirali Baniasadi
IPDPS2
2007 Speculative trivialization point advancing in high-performance processors
Ehsan Atoofian, Amirali Baniasadi
J. Syst. Archit.2
2004 SEPAS: a highly accurate energy-efficient branch predictor
abstract
Designers have invested much effort in developing accurate branch predictors with short learning periods. Such techniques rely on exploiting complex and relatively large structures. Although exploiting such structures is necessary to achieve high accuracy and fast learning, once the short learning phase is over, a simple structure can efficiently predict the branch outcome for the majority of branches. Moreover, for a large number of branches, once the branch reaches the steady state phase, updating the branch predictor unit is unnecessary since there is already enough information available to the predictor to predict the branch outcome accurately. Therefore, aggressive usage of complex large branch predictors appears to be inefficient since it results in unnecessary energy consumption.In this work we introduce Selective Predictor Access (SEPAS) to exploit this design inefficiency. SEPAS uses a simple power efficient structure to identify well behaved branch instructions that are in their steady state phase. Once such branches are identified, the predictor is no longer accessed to predict their outcome or to update the associated data. We show that it is possible to reduce the number of predictor accesses and energy consumption considerably with a negligible performance loss (worst case 0.25%).
Amirali Baniasadi, Andreas Moshovos
ISLPED1
2003 Back-End Dynamic Resource Allocation Heuristics for Power-Aware High-Performance Clustered Architectures
abstract
In this paper, we present dynamic resource allocation heuristics for high-performance clustered processors. Our heuristics aim at saving power by reducing processor back-end size dynamically and at a cluster level. This is done by shutting down or gating one of the clusters in a multi-cluster processor occasionally. Key to success of our heuristics is power-efficient techniques that could identify when a processor back-end could be downsized safely (i.e., without performance cost). We suggest techniques that do so by estimating a) branch confidence b) the available instruction level parallelism (ILP), and c) instruction flow. We show that, on the average, our methods reduce total power dissipation 14% and 11% for a subset of SPEC2K benchmarks and for dual and quad cluster processors. Our techniques improve performance for some benchmarks since they reduce the number of cluster-induced stalls. However, our best techniques come with an average performance loss of 1.1% for dual cluster processors. The lowest average performance cost is 0.9% for quad cluster processors.
Amirali Baniasadi
DSD1
2002 Branch Predictor Prediction: A Power-Aware Branch Predictor for High-Performance Processors
abstract
We introduce branch predictor prediction (BPP) as a power-aware branch prediction technique for high performance processors. Our predictor reduces branch prediction power dissipation by selectively turning on and off two of the three tables used in the combined branch predictor BPP relies on a small buffer that stores the addresses and the sub-predictors used by the most recent branches executed. Later we refer to this buffer to decide if any of the sub-predictors and the selector could be gated without harming performance. In this paper we study power and performance trade-offs for a subset of SPEC 2k benchmarks. We show that on the average and for an 8-way processor, BPP can reduce branch prediction power dissipation by 28% and 14% compared to non-banked and banked 32k predictors respectively. This comes with a negligible impact on performance (1% max). We show that BPP always reduces power even for smaller predictors and that it offers better overall power and performance compared to simpler predictors.
Amirali Baniasadi, Andreas Moshovos
ICCD1
2002 Asymmetric-frequency clustering: a power-aware back-end for high-performance processors
abstract
We introduce asymmetric frequency clustering (AFC), a micro-architectural technique that reduces the dynamic power dissipated by a processor's back-end while maintaining high performance. We present a dual-cluster, dual-frequency machine comprising a performance oriented cluster and a power-aware one. The power-aware cluster operates at half the frequency of the performance oriented cluster and uses a lower voltage supply. We show that this organization significantly reduces back-end power dissipation by executing non-performance-critical instructions in the power-aware cluster. AFC localizes the two frequency/voltage domains. Consequently, it mitigates many of the complexities associated with maintaining multiple supply voltage and frequency domains on the same chip. Key to the success of this technique are methods that assign as many instructions as possible to the slower/ lower power cluster without impacting overall performance. We evaluate our techniques using a subset of SPEC2000 and SPEC95. AFC provides a 16% back-end power reduction with 1.5% performance loss compared to a conventional, dual-clustered processor where each cluster has schedulers of the same width and length.
Amirali Baniasadi, Andreas Moshovos
ISLPED1
2001 Slice-processors: an implementation of operation-based prediction
abstract
We describe the Slice Processor micro-architecture that implements a generalized operation-based prefetching mechanism. Operation-based prefetchers predict the series of operations, or the computation slice that can be used to calculate forthcoming memory references. This is in contrast to outcome-based predictors that exploit regularities in the (address) outcome stream. Slice processors are a generalization of existing operation-based prefetching mechanisms such as stream buffers where the operation itself is fixed in the design (e.g., address + stride). A slice processor dynamically identifies frequently missing loads and extracts on-the-fly the relevant address computation slices. Such slices are then executed in-parallel with the main sequential thread prefetching memory data. We describe the various support structures and emphasize the design of the slice detection mechanism. We demonstrate that a relatively simple organization can significantly improve performance over an aggressive, dynamically-scheduled processor and for a set of pointer-intensive programs and for some integer applications from the SPEC'95 suite. In particular, a slice processor that can detect slices of up to 8 instructions extracted over of a region of up to 32 instructions improves performance by 11% on the average (even if slice detection requires up to 32 cycles). Allowing slices of up to 16 instructions results in an average performance improvement of 15%. Finally, we study how our operation-based predictor interacts with an outcome-based one and find them mutually beneficial.
Andreas Moshovos, Dionisios N. Pnevmatikatos, Amirali Baniasadi
ICS3
2001 Instruction flow-based front-end throttling for power-aware high-performance processors
abstract
We present a number of power-aware instruction front-end (fetch/decode) throttling methods for high-performance dynamically-scheduled superscalar processors. Our methods reduce power dissipation by selectively turning on and off instruction fetch and decode. Moreover, they have a negligible impact on performance as they deliver instructions just in time for exploiting the available parallelism. Previously proposed front-end throttling methods rely on branch prediction confidence estimation. We introduce a new class of methods that exploit information about instruction flow (rate of instructions passing through stages). We show that our methods can boost power savings over previously proposed methods. In particular, for an 8-way processor a combined method reduces traffic by 14%, 20%, 6 % and 6 % for the fetch, decode, issue and complete stages respectively while performance remains mostly unaffected. The best previously proposed method reduces traffic by 10%, 15%, 4 % and 4 % respectively. 1.
Amirali Baniasadi, Andreas Moshovos
ISLPED1
2000 Instruction distribution heuristics for quad-cluster, dynamically-scheduled, superscalar processors
abstract
We investigate instruction distribution methods for quad-cluster, dynamically-scheduled superscalar processors. We study a variety of methods with different cost, performance and complexity characteristics. We investigate both Pion-adaptive and adaptive methods and their sensitivity both to inter-cluster communication latencies and pipeline depth. Furthermore, we develop a set of models that allow us to identify how well each method attacks issue-bandwidth and inter-cluster communication restrictions. We find that a relatively simple method that changes clusters every other three instructions offers only a 17% performance slowdown compared to a non-clustered configuration operating at the same frequency Moreover; we show that by utilizing adaptive methods it is possible to further reduce this gap down to about 14%. Furthermore, performance appears to be more sensitive to inter-cluster communication latencies rather than to pipeline depth. The best performing method offers a slowdown of about 24% when inter-cluster communication latency is two cycle. This gap is only 20% when two additional stages are introduced in the front-end pipeline.
Amirali Baniasadi, Andreas Moshovos
MICRO1