home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!sun-barr!news2me.ebay.sun.com!exodus.Eng.Sun.COM!appserv.Eng.Sun.COM!ouroborous.Eng.Sun.COM!limes
- From: limes@ouroborous.Eng.Sun.COM (Greg Limes)
- Newsgroups: comp.arch
- Subject: Re: MP interrupt handling was(Re: Sun 600MP Benchmark Anomaly)
- Date: 24 Jul 1992 17:37:43 GMT
- Organization: Sun Microsystems, Inc.
- Lines: 22
- Message-ID: <l70fv7INNgft@appserv.Eng.Sun.COM>
- References: <1992Jul20.150259.16021@crd.ge.com> <21b002x91bnp01@JUTS.ccc.amdahl.com> <1992Jul24.133407.18743@cis.uab.edu>
- NNTP-Posting-Host: ouroborous
-
- In article <1992Jul24.133407.18743@cis.uab.edu> hyatt@cis.uab.edu (Robert Hyatt) writes:
- | As near as I can tell, the new SUN MP systems have symmetric hardware where
- | any cpu can field an interrupt, but I don't know how a SUN multiprocessor
- | arbitrates who (whom?) gets an interrupt when all cpus are interrupt-
- | enabled. Apparently the "big lock" problem currently hangs the suns....
-
- We solved it, as usual for the 4.1.2mp product, in the simplest way.
- The bus arbiter has a register which tells it which CPU to send
- interrupts to, and the software has responsibility for updating it. We
- knew that the interrupt dispatch policy would be different for various
- versions of the operating system, so we didn't lock it down in the
- hardware.
-
- Yes, the "big lock" does impact the policy. It means that if one CPU is
- inside the kernel, and some other CPU is idle, we really do want the
- interrupt to go to the cpu that is inside the kernel. In practice, we
- only have to update the interrupt target register if we receive an
- interrupt and fail to acquire the lock; the common case seems to
- slide on through the path in minimum time.
-
- I think the SunSoft guys did a paper on how they are handling
- interrupts in their multithreaded kernel, but I'm not up on that.
-