wiki:Orio

Version 3 (modified by hartono, 15 years ago) (diff)

--

ORIO -- An Annotation-Based Performance Tuning Tool

Overview

Orio is an extensible annotation system, implemented in Python, that aims at improving both performance and productivity by enabling software developers to insert annotations into their source code (in C/C++) that trigger a number of low-level performance optimizations on a specified code fragment. The tool generates many tuned versions of the same operation using different optimization parameters, and performs an empirical search for selecting the best among multiple optimized code variants.

Download

Orio 0.0.1 (Alpha)

Installation

For users who want to install in standard Python locations (must have superuser privileges in a Unix system), the installation is simple as shown below.

  1. tar -xvzf orio.tar.gz
  2. cd orio
  3. python setup.py install

To use the Orio tool, execute orcc command.

% orcc --help

description: compile shell for Orio

usage: orcc [options] <ifile> 
  <ifile>   input file containing the annotated code

options:
  -h, --help                     display this message
  -o <file>, --output=<file>     place the output to <file>
  -v, --verbose                  verbosely show details of the results of the running program

Documentations

Currently under construction

Papers

  • Boyana Norris, Albert Hartono, and William Gropp. "Annotations for Productivity and Performance Portability," in Petascale Computing: Algorithms and Applications. Computational Science. Chapman & Hall / CRC Press, Taylor and Francis Group, 2007. Preprint ANL/MCS-P1392-0107. (bib, pdf)

Attachments