[LLVMdev] Decoupled software pipelining (DSWP) in LLVM

Wojciech Danilo wojtek.danilo at gmail.com
Mon Sep 24 03:14:28 PDT 2012


Hi! I'm writing my own project in LLVM and I came across a document
describing Decoupled software pipelining algorithm written in LLVM by The
Liberty Research Group for their VELOCITY C++ compiler:
http://liberty.princeton.edu/Research/DSWP/
http://liberty.princeton.edu/Publications/micro38_dswp.pdf

and some of spectacular results:
http://liberty.princeton.edu/videos/gimp.php
http://liberty.princeton.edu/videos/h263.php

I found out, that there was a project to implement this technique as LLVM
pass:
http://code.google.com/p/15745-project-dswp/source/browse/
http://www.cs.cmu.edu/~fuyaoz/courses/15745/report.pdf

but this project seems to be not continued anymore, and as we can read in
its report - it is not complete and authors dont know if it is working
under all conditions.

The question is - is there any implementation of DSWP in LLVM passes?
I would love to use it in my project and because I'm new to LLVM it would
be very hard and time consuming process to write it by myself.

Or maybe there are some passes in LLVM, that automatically generate
multithreaded execution code out of LLVM IR code?

I would be very thankfull for any response in this topic!
Thank you :)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20120924/a3a04a5a/attachment.html>


More information about the llvm-dev mailing list