Non quia difficilia sunt non audemus, sed quia non audemus difficilia sunt
Home -> Publications
all years
    edited volumes
  Full CV [pdf]


  Past Events

Publications of Torsten Hoefler
Copyright Notice:

The documents distributed by this server have been provided by the contributing authors as a means to ensure timely dissemination of scholarly and technical work on a noncommercial basis. Copyright and all rights therein are maintained by the authors or by other copyright holders, notwithstanding that they have offered their works here electronically. It is understood that all persons copying this information will adhere to the terms and constraints invoked by each author's copyright. These works may not be reposted without the explicit permission of the copyright holder.

F. Kjolstad, T. Hoefler and M. Snir:

 Automatic Datatype Generation and Optimization

(In Proceedings of the 17th ACM symposium on Principles and practice of parallel programming, Feb. 2012, (poster paper) )


Many high performance applications spend considerable time packing noncontiguous data into contiguous communication buffers. MPI Datatypes provide an alternative by describing noncontiguous data layouts. This allows sophisticated hardware to retrieve data directly from application data structures. However, packing codes in real-world applications are often complex and specifying equivalent datatypes is difficult, time-consuming, and error prone. We present an algorithm that automates the transformation. We have implemented the algorithm in a tool that transforms packing code to MPI Datatypes, and evaluated it by transforming 90 packing codes from the NAS Parallel Benchmarks. The transformation allows easy porting of applications to new machines that benefit from datatypes, thus improving programmer productivity.


download article:
download attachment:


  author={F. Kjolstad and T. Hoefler and M. Snir},
  title={{Automatic Datatype Generation and Optimization}},
  booktitle={Proceedings of the 17th ACM symposium on Principles and practice of parallel programming},
  note={(poster paper)},

serving:© Torsten Hoefler