Skip to search formSkip to main contentSkip to account menu

Software pipelining

In computer science, software pipelining is a technique used to optimize loops, in a manner that parallels hardware pipelining. Software pipelining… 
Wikipedia (opens in a new tab)

Papers overview

Semantic Scholar uses AI to extract papers important to this topic.
Highly Cited
2010
Highly Cited
2010
Coarse-Grained Reconfigurable Array (CGRA) architectures accelerate the same inner loops that benefit from the high ILP support… 
Highly Cited
2007
Highly Cited
2007
In recent years, microprocessor manufacturers have shifted their focus from single-core to multi-core processors. To avoid… 
Highly Cited
2005
Highly Cited
2005
Until recently, a steadily rising clock rate and other uniprocessor micro architectural improvements could be relied upon to… 
Highly Cited
2004
Highly Cited
2004
  • M. Lam
  • SIGP
  • 2004
  • Corpus ID: 52798114
The basic idea behind software pipelining was first developed by Patel and Davidson for scheduling hardware pipe-lines. As… 
Highly Cited
2004
Highly Cited
2004
Despite the success of instruction-level parallelism (ILP) optimizations in increasing the performance of microprocessors… 
Highly Cited
1996
Highly Cited
1996
This paper is a scientific comparison of two code generation techniques with identical goals --- generation of the best possible… 
Highly Cited
1995
Highly Cited
1995
Utilizing parallelism at the instruction level is an important way to improve performance. Because the time spent in loop… 
Highly Cited
1994
Highly Cited
1994
Modulo scheduling is a framework within which a wide variety of algorithms and heuristics may be defined for software pipelining… 
Highly Cited
1992
Highly Cited
1992
Software pipelining is an important instruction scheduling technique for efficiently overlapping successive iterations of loops… 
Highly Cited
1988
Highly Cited
1988
  • M. Lam
  • ACM-SIGPLAN Symposium on Programming Language…
  • 1988
  • Corpus ID: 14463205
This paper shows that software pipelining is an effective and viable scheduling technique for VLIW processors. In software…