Efficient Utilization of SIMD Engines for General-Purpose Processors

被引:1
|
作者
Huang, Libo [1 ,2 ]
Wang, Zhiying [1 ,2 ]
Xiao, Nong [1 ,2 ]
Dou, Qiang [2 ]
机构
[1] Natl Univ Def Technol, State Key Lab High Performance Comp, Changsha 410073, Hunan, Peoples R China
[2] Natl Univ Def Technol, Sch Comp, Changsha 410073, Hunan, Peoples R China
来源
COMPUTER JOURNAL | 2014年 / 57卷 / 08期
基金
中国国家自然科学基金; 国家高技术研究发展计划(863计划);
关键词
SIMD engine; general purpose processor; utilization; MULTIMEDIA; PERFORMANCE;
D O I
10.1093/comjnl/bxt049
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
This paper proposes stream model execution (SME), a new architectural technique that supports the efficient utilization of single-instruction multiple-data (SIMD) engines on general-purpose processors. SME adopts lightweight streaming processing as the intermediate representation. This process uses a hardware-software co-design approach to support efficient SIMD compilation and utilization. From a hardware perspective, the micro-architecture of SIMD engines is enabled for stream support to provide the key components to address the limitations of SIMD utilization, such as data rearrangement and non-consecutive memory access. Thus, sequential code can be compiled efficiently through a two-step procedure (i.e. Ccode -> SMECcode -> vectorized code) and then executed by the SME hardware. Our experimental evaluation shows that SME can outperform previous optimization techniques by an average of 58% for multimedia kernels and 26% for applications.
引用
收藏
页码:1141 / 1154
页数:14
相关论文
共 50 条
  • [21] QUANTITATIVE MEASUREMENTS OF FPGA UTILITY IN SPECIAL AND GENERAL-PURPOSE PROCESSORS
    FAGIN, BS
    JOURNAL OF VLSI SIGNAL PROCESSING, 1993, 6 (02): : 129 - 137
  • [22] Value Similarity Extensions for Approximate Computing in General-Purpose Processors
    Kim, Younghoon
    Venkataramani, Swagath
    Sen, Sanchari
    Raghunathan, Anand
    PROCEEDINGS OF THE 2021 DESIGN, AUTOMATION & TEST IN EUROPE CONFERENCE & EXHIBITION (DATE 2021), 2021, : 481 - 486
  • [23] General-purpose processors target floating-point DSP
    Paavola, S
    EDN, 1999, 44 (07) : 119 - +
  • [24] Performing advanced bit manipulations efficiently in general-purpose processors
    Hilewitz, Yedidya
    Lee, Ruby B.
    18TH IEEE SYMPOSIUM ON COMPUTER ARITHMETIC, PROCEEDINGS, 2007, : 251 - +
  • [25] Streamware: Programming general-purpose multicore processors using streams
    Gummaraju, Jayanth
    Coburn, Joel
    Turner, Yoshio
    Rosenblum, Mendel
    ACM SIGPLAN NOTICES, 2008, 43 (03) : 297 - 307
  • [26] DiAG: A Dataflow-Inspired Architecture for General-Purpose Processors
    Wang, Dong Kai
    Kim, Nam Sung
    ASPLOS XXVI: TWENTY-SIXTH INTERNATIONAL CONFERENCE ON ARCHITECTURAL SUPPORT FOR PROGRAMMING LANGUAGES AND OPERATING SYSTEMS, 2021, : 93 - 106
  • [27] Scaling read aligners to hundreds of threads on general-purpose processors
    Langmead, Ben
    Wilks, Christopher
    Antonescu, Valentin
    Charles, Rone
    BIOINFORMATICS, 2019, 35 (03) : 421 - 432
  • [28] Facts and myths about media processing on general-purpose processors
    Talla, D
    John, LK
    ITRE2003: INTERNATIONAL CONFERENCE ON INFORMATION TECHNOLOGY: RESEARCH AND EDUCATION, 2003, : 45 - 49
  • [29] Performance Implication of Multicore Cache Locking on General-Purpose Processors
    Loach, Matthew
    Zhang, Wei
    2014 IEEE INTERNATIONAL CONFERENCE ON HIGH PERFORMANCE COMPUTING AND COMMUNICATIONS, 2014 IEEE 6TH INTL SYMP ON CYBERSPACE SAFETY AND SECURITY, 2014 IEEE 11TH INTL CONF ON EMBEDDED SOFTWARE AND SYST (HPCC,CSS,ICESS), 2014, : 328 - 331
  • [30] Fuzzy rule-based systems on general-purpose processors
    German Natl Research Cent for, Information Technology
    IEEE Micro, 4 (40-48):