• Home
  • Search
  • SIMD Vectorization of Histogram Functions
  • Cite Icon25
  • https://doi.org/10.1109/asap.2007.4429976Copy DOI Icon

SIMD Vectorization of Histogram Functions

  • Jul 1, 2007
  • Asadollah Shahbahrami +2 more
Show More
  • Abstract
  • Literature Map
  • References
  • Citations
  • Similar Papers
Abstract

Existing SIMD extensions cannot efficiently vectorize the histogram function due to memory collisions. We propose two techniques to avoid this problem. In the first, a hierarchical structure of three levels is proposed. In order to provide n-way parallelism, auxiliary arrays that have n and n/2 subarrays are used in the first and second level, respectively. The last level has the primary histogram array. Indirect SIMD load and store instructions are designed in order to access different elements of different subarrays. The different subarrays in the lower levels are merged and finally at the end, the calculated results are stored in the primary histogram array. In the second method, parallel comparators are used in order to count the number of subwords within a media register that are the same. Thereafter, these numbers are added to the values of the histogram array simultaneously. Experimental results obtained by extending the SimpleScalar toolset show that proposed techniques improve the performance compared to the fastest scalar version by a factor of 7.37 and 5.52, respectively.

Similar Papers
  • Conference Article
  • Citations5

A shared scratchpad memory with synchronization support

  • Oct 01, 2017
  • Henrik Enggaard Hansen +4
  • Conference Article
  • Citations160

Speculative execution via address prediction and data prefetching

  • Jan 01, 1997
  • José González +1
  • Book Chapter

Chapter 6 - Instruction Usage Examples

  • Jan 01, 2011
  • The Definitive Guide to the ARM Cortex-M0
  • Joseph Yiu
  • Conference Article
  • Citations25

CoDaRR: Continuous Data Space Randomization against Data-Only Attacks

  • Oct 05, 2020
  • Prabhu Rajasekaran +5
  • PDF
  • Research Article
  • Citations3

����� ��������� �������� �������� �� ������ ���������� ������������ ���������� ����������� � ���������� �������

  • Jan 01, 2015
  • Proceedings of the Institute for System Programming of the RAS
  • A Kamkin +2
  • Research Article
  • Citations10

DudeTM

  • Apr 04, 2017
  • ACM SIGOPS Operating Systems Review
  • Mengxing Liu +6
  • Research Article
  • Citations28

DudeTM

  • Apr 04, 2017
  • ACM SIGPLAN Notices
  • Mengxing Liu +6
  • Research Article
  • Citations4

Studying Optimal Spilling in the Light of SSA

  • Jan 09, 2015
  • ACM Transactions on Architecture and Code Optimization
  • Quentin Colombet +2
  • Research Article

Software acceptance testing that goes beyond the book

  • Jan 01, 1978
  • ACM SIGSOFT Software Engineering Notes
  • K A Martin
  • Research Article
  • Citations4

Treegraph-based Instruction Scheduling for Stack-based Virtual Machines

  • Nov 25, 2011
  • Electronic Notes in Theoretical Computer Science
  • Jiin Park +5
  • Conference Article
  • Citations4

Prophet Synchronization Thread Model and Compiler Support

  • Sep 01, 2010
  • Xuhao Wang +4
  • Research Article

Register allocation and spilling using the expected distance heuristic

  • Feb 07, 2016
  • Software: Practice and Experience
  • Neil Burroughs
  • Conference Article
  • Citations3

Impact of JVM superoperators on energy consumption in resource-constrained embedded systems

  • Jun 12, 2008
  • Carmen Badea +2
  • Research Article
  • Citations7

Using Network Traffic to Infer Hardware State

  • Apr 30, 2015
  • ACM Transactions on Embedded Computing Systems
  • Lanier Watkins +2
  • Conference Article
  • Citations1

An introduction to an array memory processor for application specific acceleration

  • Sep 01, 2017
  • Gerald G Pechanek +1
Cactus Communications logo

Copyright 2026 Cactus Communications. All rights reserved.