home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #16 / NN_1992_16.iso / spool / comp / arch / 8281 < prev    next >
Encoding:
Internet Message Format  |  1992-07-24  |  2.1 KB

  1. Path: sparky!uunet!mcsun!uknet!strath-cs!baird!jim
  2. From: jim@cs.strath.ac.uk (Jim Reid)
  3. Newsgroups: comp.arch
  4. Subject: Re: Sun 600MP Benchmark Anomaly
  5. Message-ID: <JIM.92Jul24155432@hunter.cs.strath.ac.uk>
  6. Date: 24 Jul 92 14:54:32 GMT
  7. References: <l6asqqINNhvm@exodus.Eng.Sun.COM> <l6c2l5INNcds@appserv.Eng.Sun.COM>
  8.     <1992Jul23.145502.20975@ncrcae.ColumbiaSC.NCR.COM>
  9.     <l6tucvINNbqt@appserv.Eng.Sun.COM>
  10. Sender: news@cs.strath.ac.uk
  11. Organization: Computer Science Dept., Strathclyde Univ., Glasgow, Scotland.
  12. Lines: 32
  13. Nntp-Posting-Host: hunter
  14. In-reply-to: limes@ouroborous.Eng.Sun.COM's message of 23 Jul 92 18:25:35 GMT
  15.  
  16. In article <l6tucvINNbqt@appserv.Eng.Sun.COM> limes@ouroborous.Eng.Sun.COM (Greg Limes) writes:
  17.  
  18.    In article <1992Jul23.145502.20975@ncrcae.ColumbiaSC.NCR.COM> Jeff.McElroy@ColumbiaSC.NCR.COM writes:
  19.    | So, how many processors can take and service interrupts?  
  20.  
  21.    Two answers, as usual ;-)
  22.  
  23.    First answer: All CPUs can accept and service interrupts,
  24.    without regard to which CPU initiated the action that
  25.    eventually triggered the interrupt. The same chip that handles
  26.    MBus arbitration handles distribution of the interrupts; an
  27.    internal register tells it which CPU gets them.
  28.  
  29.    Second answer: Only one CPU at a time can receive interrupt
  30.    requests from devices in the system, and the software design of
  31.    the 4.1.2mp kernel requires that device interrupt service
  32.    routines execute within the single lock, so only one CPU at a
  33.    time will be inside interrupt service routines.
  34.  
  35. So does this mean that this "symmetrical multi-processor SunOS" isn't
  36. really what it claims to be? If only one CPU at a time can be executing 
  37. interrupt service code, what we've got is an OS with one dedicated
  38. (but not fixed) I/O processor.
  39.  
  40. It shouldn't be that difficult to arrange for multiple processors to
  41. execute multiple interrupt service routines simultaneously. Encore
  42. - whatever happened to them? - and Sequent have had UNIX kernels which
  43. have done this for years (albeit with hardware assistance to handle
  44. bus/interrupt/CPU arbitration). Perhaps there's some problem with
  45. cache consistency and RISC chipsets at the bottom of all this?
  46.  
  47.         Jim
  48.