DOE Patents title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: Generating and executing programs for a floating point single instruction multiple data instruction set architecture

Abstract

Mechanisms for generating and executing programs for a floating point (FP) only single instruction multiple data (SIMD) instruction set architecture (ISA) are provided. A computer program product comprising a computer recordable medium having a computer readable program recorded thereon is provided. The computer readable program, when executed on a computing device, causes the computing device to receive one or more instructions and execute the one or more instructions using logic in an execution unit of the computing device. The logic implements a floating point (FP) only single instruction multiple data (SIMD) instruction set architecture (ISA), based on data stored in a vector register file of the computing device. The vector register file is configured to store both scalar and floating point values as vectors having a plurality of vector elements.

Inventors:
Issue Date:
Research Org.:
International Business Machines Corp., Armonk, NY (United States)
Sponsoring Org.:
USDOE
OSTI Identifier:
1083443
Patent Number(s):
8423983
Application Number:
12/250,581
Assignee:
International Business Machines Corporation (Armonk, NY)
Patent Classifications (CPCs):
G - PHYSICS G06 - COMPUTING G06F - ELECTRIC DIGITAL DATA PROCESSING
DOE Contract Number:  
B554331
Resource Type:
Patent
Country of Publication:
United States
Language:
English
Subject:
97 MATHEMATICS AND COMPUTING

Citation Formats

Gschwind, Michael K. Generating and executing programs for a floating point single instruction multiple data instruction set architecture. United States: N. p., 2013. Web.
Gschwind, Michael K. Generating and executing programs for a floating point single instruction multiple data instruction set architecture. United States.
Gschwind, Michael K. Tue . "Generating and executing programs for a floating point single instruction multiple data instruction set architecture". United States. https://www.osti.gov/servlets/purl/1083443.
@article{osti_1083443,
title = {Generating and executing programs for a floating point single instruction multiple data instruction set architecture},
author = {Gschwind, Michael K},
abstractNote = {Mechanisms for generating and executing programs for a floating point (FP) only single instruction multiple data (SIMD) instruction set architecture (ISA) are provided. A computer program product comprising a computer recordable medium having a computer readable program recorded thereon is provided. The computer readable program, when executed on a computing device, causes the computing device to receive one or more instructions and execute the one or more instructions using logic in an execution unit of the computing device. The logic implements a floating point (FP) only single instruction multiple data (SIMD) instruction set architecture (ISA), based on data stored in a vector register file of the computing device. The vector register file is configured to store both scalar and floating point values as vectors having a plurality of vector elements.},
doi = {},
journal = {},
number = ,
volume = ,
place = {United States},
year = {Tue Apr 16 00:00:00 EDT 2013},
month = {Tue Apr 16 00:00:00 EDT 2013}
}

Works referenced in this record:

Dependency analysis system and method
patent, August 2009


Optimized Scalar Promotion with Load and Splat SIMD Instructions
patent-application, December 2009


Denormalization system and method of operation
patent, July 1997


Vectorized table lookup
patent, September 2002


DFG Program
journal, December 1999


SIMD Vectorization of Straight Line FFT Code
book, January 2003


Compiler with cache utilization optimizations
patent, July 2010


Map compiler pipelined loop structure
patent, November 2006


An Open Source Environment for Cell Broadband Engine System Software
journal, June 2007


Using advanced compiler technology to exploit the performance of the Cell Broadband Engineā„¢ architecture
journal, January 2006


Chip multiprocessing and the cell broadband engine
conference, January 2006


Complex Matrix Multiplication Operations with Data Pre-Conditioning in a High Performance Computing Architecture
patent-application, February 2011


Alignment and ordering of vector elements for single instruction multiple data processing
patent, August 1999


IBM PowerPC 440 FPU with complex-arithmetic extensions
journal, March 2005


Sharing compiler optimizations in a multi-node system
patent, February 2012


A high-performance SIMD floating point unit for BlueGene/L: architecture, compilation, and algorithm design
conference, January 2004


Dual function system and method for shuffling packed data elements
patent, March 2000


Automatic Intra-Register Vectorization for the IntelĀ® Architecture
journal, January 2002


Vectorization for SIMD architectures with alignment constraints
conference, January 2004

  • Eichenberger, Alexandre E.; Wu, Peng; O'Brien, Kevin
  • Proceedings of the ACM SIGPLAN 2004 conference on Programming language design and implementation - PLDI '04
  • https://doi.org/10.1145/996841.996853

Efficient function interpolation using SIMD vector permute functionality
patent, August 2005


Insertion of Operation-and-Indicate Instructions for Optimized SIMD Code
patent-application, February 2011


Compiler analysis for cache coherence: interprocedural array data-flow analysis and its impact on cache performance
journal, January 2000


The Cell Broadband Engine: Exploiting Multiple Levels of Parallelism in a Chip Multiprocessor
journal, April 2007


Synergistic Processing in Cell's Multicore Architecture
journal, March 2006


An integrated simdization framework using virtual vectors
conference, January 2005


Compilation for a SIMD RISC processor
patent, November 2010


Optimizing Compiler for the CELL Processor
conference, January 2005

  • Eichenberger, A. E.; O'Brien, K.; O'Brien, K.
  • PACT 2005. 14th International Conference on Parallel Architectures and Compilation Techniques, 14th International Conference on Parallel Architectures and Compilation Techniques (PACT'05)
  • https://doi.org/10.1109/PACT.2005.33

Using a shuffle unit to implement shift operations in a processor
patent, December 2008


Logical inference techniques for loop parallelization
journal, August 2012


Method for optimizing array bounds checks in programs
patent, January 2002