Block unification IF-conversion for high performance architectures

Nadav Rotem, Yosi Ben Asher

Research output: Contribution to journalArticlepeer-review


Graphics Processing Units accelerate data-parallel graphic calculations using wide SIMD vector units. Compiling programs to use the GPU's SIMD architectures require converting multiple control flow paths into a single stream of instructions. IF-conversion is a compiler transformation, which converts control dependencies into data dependencies, and it is used by vectorizing compilers to eliminate control flow and enable efficient code generation. In this work we enhance the IF-conversion transformation by using a block unification method to improve the currently used block flattening method. Our experimental results demonstrate that our IF-conversion method is effective in reducing the number of predicated instructions and in boosting kernel execution speed.

Original languageEnglish
Article number6311412
Pages (from-to)17-20
Number of pages4
JournalIEEE Computer Architecture Letters
Issue number1
StatePublished - Apr 2015

Bibliographical note

Publisher Copyright:
© 2002-2011 IEEE.


  • Code generation
  • Compilers
  • Processors
  • Processors
  • Programming Languages
  • Programming Languages
  • Software/Software Engineering
  • Software/Software Engineering

ASJC Scopus subject areas

  • Hardware and Architecture


Dive into the research topics of 'Block unification IF-conversion for high performance architectures'. Together they form a unique fingerprint.

Cite this