New Jersey Institute of Technology Digital Commons @ NJIT
Dissertations Theses and Dissertations
Spring 2012 Vector coprocessor sharing techniques for multicores: performance and energy gains Spiridon Florin Beldianu New Jersey Institute of Technology
Follow this and additional works at: https://digitalcommons.njit.edu/dissertations Part of the Computer Engineering Commons
Recommended Citation Beldianu, Spiridon Florin, "Vector coprocessor sharing techniques for multicores: performance and energy gains" (2012). Dissertations. 326. https://digitalcommons.njit.edu/dissertations/326
This Dissertation is brought to you for free and open access by the Theses and Dissertations at Digital Commons @ NJIT. It has been accepted for inclusion in Dissertations by an authorized administrator of Digital Commons @ NJIT. For more information, please contact [email protected].
Copyright Warning & Restrictions
The copyright law of the United States (Title 17, United States Code) governs the making of photocopies or other reproductions of copyrighted material.
Under certain conditions specified in the law, libraries and archives are authorized to furnish a photocopy or other reproduction. One of these specified conditions is that the photocopy or reproduction is not to be “used for any purpose other than private study, scholarship, or research.” If a, user makes a request for, or later uses, a photocopy or reproduction for purposes in excess of “fair use” that user may be liable for copyright infringement,
This institution reserves the right to refuse to accept a copying order if, in its judgment, fulfillment of the order would involve violation of copyright law.
Please Note: The author retains the copyright while the New Jersey Institute of Technology reserves the right to distribute this thesis or dissertation
Printing note: If you do not wish to print this page, then select “Pages from: first page # to: last page #” on the print dialog screen
The Van Houten library has removed some of the personal information and all signatures from the approval page and biographical sketches of theses and dissertations in order to protect the identity of NJIT graduates and faculty.
ABSTRACT
VECTOR COPROCESSOR SHARING TECHNIQUES FOR MULTICORES: PERFORMANCE AND ENERGY GAINS
by Spiridon Florin Beldianu
Vector Processors (VPs) created the breakthroughs needed for the emergence of computational science many years ago. All commercial computing architectures on the market today contain some form of vector or SIMD processing.
Many high-performance and embedded applications, often dealing with streams of data, cannot efficiently utilize dedicated vector processors for various reasons: limited percentage of sustained vector code due to substantial flow control; inherent small parallelism or the frequent involvement of operating system tasks; varying vector length across applications or within a single application; data dependencies within short sequences of instructions, a problem further exacerbated without loop unrolling or other compiler optimization techniques. Additionally, existing rigid SIMD architectures cannot tolerate efficiently dynamic application environments with many cores that may require the runtime adjustment of assigned vector resources in order to operate at desired energy/performance levels.
To simultaneously alleviate these drawbacks of rigid lane-based VP architectures, while also releasing on-chip real estate for other important design choices, the first part of this research proposes three architectural contexts for the implementation of a shared vector coprocessor in multicore processors. Sharing an expensive resource among multiple cores increases the efficiency of the functional units and the overall system throughput. The second part of the dissertation regards the evaluation and
characterization of the three proposed shared vector architectures from the performance and power perspectives on an FPGA (Field-Programmable Gate Array) prototype. The third part of this work introduces performance and power estimation models based on observations deduced from the experimental results. The results show the opportunity to adaptively adjust the number of vector lanes assigned to individual cores or processing threads in order to minimize various energy-performance metrics on modern vector- capable multicore processors that run applications with dynamic workloads. Therefore, the fourth part of this research focuses on the development of a fine-to-coarse grain power management technique and a relevant adaptive hardware/software infrastructure which dynamically adjusts the assigned VP resources (number of vector lanes) in order to minimize the energy consumption for applications with dynamic workloads. In order to remove the inherent limitations imposed by FPGA technologies, the fifth part of this work consists of implementing an ASIC (Application Specific Integrated Circuit) version of the shared VP towards precise performance-energy studies involving high- performance vector processing in multicore environments.
ii
VECTOR COPROCESSOR SHARING TECHNIQUES FOR MULTICORES: PERFORMANCE AND ENERGY GAINS
by Spiridon Florin Beldianu
A Dissertation Submitted to the Faculty of New Jersey Institute of Technology in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy in Computer Engineering
Department of Electrical and Computer Engineering
May 2012
Copyright © 2012 by Spiridon Florin Beldianu
ALL RIGHTS RESERVED .
APPROVAL PAGE
VECTOR COPROCESSOR SHARING TECHNIQUES FOR MULTICORES: PERFORMANCE AND ENERGY GAINS
Spiridon Florin Beldianu
Dr. Sotirios G. Ziavras, Dissertation Advisor Date Professor of Electrical and Computer Engineering, NJIT
Dr. Edwin Hou, Committee Member Date Associate Professor of Electrical and Computer Engineering, NJIT
Dr. Durgamadhab Misra, Committee Member Date Professor of Electrical and Computer Engineering, NJIT
Dr. Roberto Rojas-Cessa, Committee Member Date Associate Professor of Electrical and Computer Engineering, NJIT
Dr. Alexandros V. Gerbessiotis, Committee Member Date Associate Professor of Computer Science, NJIT