Talk:Software pipelining
This article has not yet been rated on Wikipedia's content assessment scale. It is of interest to the following WikiProjects: | ||||||||||||||||||||||||||||
|
i think it lacks bibliography
maybe this is the original paper? http://portal.acm.org/citation.cfm?id=54022&dl=GUIDE,
References inserted - kdc Kdcooper (talk) 03:03, 8 December 2009 (UTC)
I tried to clarify the history of software pipelining, distinguish between SWP and modulo scheduling, and generally to credit Rao, Lam, and Gao with their true accomplishments. The article would be stronger with better references to SWP pre-modulo scheduling. I'm pretty sure that CDC and FPS hand coders used the technique. I know that hand coders at Multiflow who were unexposed to the literature wrote SWP loops for some of the BLAS. There are hints that Fisher knew about the technique for microcode before he invented trace scheduling. —Preceding unsigned comment added by John Ruttenberg (talk • contribs) 18:49, 4 February 2010 (UTC)
There are hints?? You could, say, ask me? In fact the CDC-6600 Fortran compiler, which I was familiar with a little, did the most rudimentary software pipelining you could imagine (it basically pattern-recognized simple cases). Anyway, from Rau&Fisher, j. supercomputing: Early work in software pipelining consisted of ad hoc hand-coding techniques [Charlesworth 1981; Cohen 19781. Both the quality of the schedules and the attempts at automating the generation of software pipelined schedules were hampered by the architecture of the early array processors. Nevertheless, Floating Point Systems developed, for the FPS-164 array processor, a compiler that could software pipeline a loop consisting of a single basic block [Touzeau 1984]. Weiss and Smith [I987] note that a limited form of software pipelining was present both in certain hand-coded libraries for the CDC 6600 and also as a capability in the Fortran compiler for the CDC 6600.
I'll try to fix the article's history when I get a chance. Josh (talk) 22:41, 3 May 2010 (UTC)
Modulo Variable Expansion Even though John Ruttenberg wrote the words and he knows a lot more than I do about software pipelining and certainly where the bodies are buried, I corrected modulo renaming to modulo variable expansion as that's what Monica Lam calls it in her paper and in her thesis. Olsonist (talk) 23:03, 6 November 2017 (UTC)
- Here's a paper that uses both terms in the Introduction: https://link.springer.com/chapter/10.1007/BFb0032706 Just to check, we are 100% confident that both terms refer to the exact same thing, aren't we? (I think so, but I could be mistaken...) Silas S. Brown (email, talk) 10:31, 7 November 2017 (UTC)