home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #19 / NN_1992_19.iso / spool / comp / arch / 9189 < prev    next >
Encoding:
Internet Message Format  |  1992-09-02  |  3.2 KB

  1. Path: sparky!uunet!olivea!mintaka.lcs.mit.edu!KANCHENJUNGA.LCS.MIT.EDU!tuna
  2. From: tuna@KANCHENJUNGA.LCS.MIT.EDU (Kirk 'UhOh' Johnson)
  3. Newsgroups: comp.arch
  4. Subject: Re: Multi threaded CPUs
  5. Message-ID: <1992Sep3.021846.4137@mintaka.lcs.mit.edu>
  6. Date: 3 Sep 92 02:18:46 GMT
  7. References: <BtxGvn.8MH@pix.com> <BtxHG0.8rz@pix.com> <BtxJDM.CK@rice.edu>
  8. Sender: news@mintaka.lcs.mit.edu
  9. Organization: Massachvsetts Institvte of Technology
  10. Lines: 65
  11.  
  12. stripes@pix.com (Josh Osborne) wrote:
  13.  
  14.     A little while ago I read about a RISC CPU (SPARC I think) that
  15.     some researchers had designed. It had a cache of threads (I got
  16.     the impression that that includes registers, and possibly MMU
  17.     state as well), four in the current chip, and when there was a
  18.     pipe stall the execution would just switch to another thread.
  19.  
  20. to which preston@cs.rice.edu (Preston Briggs) added:
  21.  
  22.     Anant Agarwal, at MIT, was working on a modification of the SPARC,
  23.     called Sparcle, to be used as a node in a large-scale
  24.     multiprocessor called Alewife. He gave a talk on the project last
  25.     year at a workshop during Supercomputing '91. Unfortunately, I
  26.     have only a brief abstract here.
  27.  
  28.     My memory from the talk was that they used each set of registers
  29.     in the SPARC's register windows to support a different thread. Can
  30.     switch threads in 11 cycles. Probably use the multithreaded
  31.     behavior to hide communication latency.
  32.  
  33. this is essentially correct. in SPARCLE, we use the SPARC register
  34. windows to keep the state (registers) for multiple contexts (four, in
  35. this implementation) in hardware so we can rapidly switch between
  36. them (14 cycles). SPARCLE will be used as the integer unit in Alewife;
  37. as preston suggests, the multithreading feature is used as a
  38. communication (and synchronization) latency hiding mechanism. note
  39. that SPARCLE only switches contexts on cache misses and explicit
  40. program directives; random pipe stalls for other reasons do not cause
  41. context switches. also note that the SPARCLE contexts do not include
  42. MMU state.
  43.  
  44. we've had working SPARCLE silicon (40 MHz) for almost six months now;
  45. we're furiously hacking to get the rest of the Alewife hardware ready
  46. to go.
  47.  
  48. anant did give a SPARCLE talk at hot chips, but alas there was no
  49. associated paper. there was an early SPARCLE paper in ISCA'90, though: 
  50.  
  51.  @InProceedings(Agarwal-april,
  52.   Author    = "Anant Agarwal and Beng-Hong Lim and David A. Kranz and
  53.                John Kubiatowicz",
  54.   Title     = "{APRIL: A Processor Architecture for Multiprocessing}",
  55.   BookTitle = "Proceedings 17th Annual International Symposium on
  56.                Computer Architecture",
  57.   Pages     = "104-114",
  58.   Month     = "June",
  59.   Year      = "1990")
  60.  
  61. we are also hoping to have another SPARCLE paper (with quite a bit
  62. more detail) out RSN.
  63.  
  64. there were a couple of papers that appeared as posters in the most
  65. recent ISCA ('92) which talked about issues related to multithreaded
  66. processors -- one from jim laudon (stanford), one from dave culler
  67. (berkeley); both of these made interesting reading. if anybody is
  68. interested and can't get the info themselves, i can probably chase up
  69. better references, e-mail addresses, or postscript for these.
  70.  
  71. share and enjoy,
  72.  
  73. kirk
  74. -- 
  75.  
  76.  Kirk Johnson ------ tuna@lcs.mit.edu ------ Yow! Have I graduated yet?
  77.