SUIF

SUIF: an infrastructure for research on parallelizing and optimizing compilers. Compiler infrastructures that support experimental research are crucial to the advancement of high-performance computing. New compiler technology must be implemented and evaluated in the context of a complete compiler, but developing such an infrastructure requires a huge investment in time and resources. We have spent a number of years building the SUIF compiler into a powerful, flexible system, and we would now like to share the results of our efforts.SUIF consists of a small, clearly documented kernel and a toolkit of compiler passes built on top of the kernel. The kernel defines the intermediate representation, provides functions to access and manipulate the intermediate representation, and structures the interface between compiler passes. The toolkit currently includes C and Fortran front ends, a loop-level parallelism and locality optimizer, an optimizing MIPS back end, a set of compiler development tools, and support for instructional use.Although we do not expect SUIF to be suitable for everyone, we think it may be useful for many other researchers. We thus invite you to use SUIF and welcome your contributions to this infrastructure. Directions for obtaining the SUIF software are included at the end of this paper.


References in zbMATH (referenced in 26 articles )

Showing results 1 to 20 of 26.
Sorted by year (citations)

1 2 next

  1. Ozturk, Ozcan; Akturk, Ismail; Kadayif, Ismail; Tosun, Suleyman: Energy reduction in 3D NoCs through communication optimization (2015)
  2. Leung, Alan; Lhoták, Ondřej; Lashari, Ghulam: Parallel execution of Java loops on graphics processing units (2013)
  3. Spacey, Simon; Luk, Wayne; Kelly, Paul H.J.; Kuhn, Daniel: Improving communication latency with the write-only architecture (2012)
  4. Dos Reis, Gabriel; Stroustrup, Bjarne: A principled, complete, and efficient representation of C++ (2011)
  5. Ozturk, Ozcan: Data locality and parallelism optimization using a constraint-based approach (2011)
  6. Russell, Francis P.; Mellor, Michael R.; Kelly, Paul H.J.; Beckmann, Olav: DESOLA: an active linear algebra library using delayed evaluation and runtime code generation (2011)
  7. Liao, Chunhua; Quinlan, Daniel J.; Willcock, Jeremiah J.; Panas, Thomas: Semantic-aware automatic parallelization of modern applications using high-level abstractions (2010)
  8. Ozturk, Ozcan: Improving chip multiprocessor reliability through code replication (2010)
  9. Westermann, Peter; Schwoerer, Ludwig; Kaufmann, Andre: Applying data mapping techniques to vector DSPs (2009)
  10. Bischof, Christian H.; Hovland, Paul D.; Norris, Boyana: On the implementation of automatic differentiation tools (2008)
  11. Kalleberg, Karl Trygve; Visser, Eelco: Fusing a transformation language with an open compiler. (2008)
  12. Ellmenreich, Nils; Lengauer, Christian: Costing stepwise refinements of parallel programs (2007)
  13. Silvano, Cristina; Agosta, Giovanni; Palermo, Gianluca: Efficient architecture/compiler co-exploration using analytical models (2007)
  14. Özer, Emre; Nisbet, Andy P.; Gregg, David; Callanan, Owen: Estimating data bus size for custom processors in embedded systems (2006)
  15. Vilayannur, Murali; Sivasubramaniam, Anand; Kandemir, Mahmut; Thakur, Rajeev; Ross, Robert: Discretionary caching for I/O on clusters (2006)
  16. Zeng, Jia; Mitchell, Chuck; Edwards, Stephen A.: A domain-specific language for generating dataflow analyzers. (2006)
  17. Cosnard, Michel; Jeannot, Emmanuel; Yang, Tao: Compact DAG representation and its symbolic scheduling (2004)
  18. Masselos, K.; Catthoor, F.; Goutis, C.E.; De Man, H.: Systematic application of data transfer and storage optimizing code transformations for power consumption and execution time reduction in ACROPOLIS: A pre-compiler for multimedia applications (2003)
  19. Olmos, Karina; Visser, Eelco: Strategies for source-to-source constant progagation. (2002)
  20. Kasahara, Hironori; Obata, Motoki; Ishizaka, Kazuhisa: Automatic coarse grain task parallel processing on SMP using OpenMP (2001)

1 2 next