home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!sun-barr!news2me.ebay.sun.com!seven-up.East.Sun.COM!uk-news.UK.Sun.COM!sunfen!adrianc
- From: adrian.cockcroft@uk.sun.com (Adrian Cockcroft - Sun UK - Cambridge SE - SPARC Specialist)
- Newsgroups: comp.arch
- Subject: Solaris (was: Sun 600MP Benchmark Anomaly)
- Date: 24 Jul 1992 19:07:39 GMT
- Organization: Sun Microsystems
- Lines: 62
- Distribution: world
- Message-ID: <14pkdrINN5ni@uk-news.UK.Sun.COM>
- References: <1992Jul16.210353.6464@sequent.com>
- Reply-To: adrian.cockcroft@uk.sun.com
- NNTP-Posting-Host: 129.156.129.1
-
- In article 6464@sequent.com, dafuller@sequent.com (David Fuller) writes:
- >
- >In the case of Sun and their current OS, the critical discrimination between
- >symmetrical and asymmetric is irrelevant since once you're out of a single
- >CPU's ability to service OS requests you're out of business. With a 2 CPU
- >system that means system time is limited to 50%, which is reasonable. With
- >a 4 CPU system it's down to 25%, which may not be reasonable at high numbers
- >of processes.
- >
- >So while the Sun offering is symmetrical it is not useful symmetry at this
- >juncture.
-
- If a system is running at more than 25% system time continuously I can
- usually find plenty of scope for tuning to get it down to below 25%.
- This has the desired effect in terms of getting a S600MP to work well
- with 4.1.2.
-
- >I'm sure that Solaris 2 will address this, it's just a question of
- >where it degrades to a single thread and whether these places are harmful
- >to system performance.
-
- I have run a two processor S600MP with a Solaris 2 beta release with
- both CPU's at over 95% system time (to show that it can be done). The
- basic kernel, NFS code and the streams code at least are already multi
- threaded and scale with CPU's.
-
-
- The first version of Solaris 2.0 is now shipping (and is being used to
- generate this posting :-) but only runs on sun4c (i.e. desktop
- SPARCstation machines) since the S600MP arrived too late in the
- development/test cycle. A second release at the end of this year will
- support the S600MP, SuperSPARC, everything else and lots of
- processors.
-
- To oversimplify the issues and explain the essence of what Solaris 2.0 does:
-
- There are two ways of adding MP to Unix. One is to place locks around
- critical regions of code, which is the way that most small scale MP
- implementations have been done in the past. The other, used in Solaris
- 2.0 is to place locks in data structures. This is much more scalable.
-
- For example, if a section of the kernel messes with a table it could
- have locks placed in the code so that only one CPU at a time can run
- that code. This is the way that a uniprocessor Unix kernel is written
- using interrupt level masks to protect code regions. In Solaris 2 every
- entry in the table would have a lock as part of its data structure and
- every CPU can run the code simultaneously as long as they are modifying
- different parts of the table.
-
- One benefit is that the kernel is fully pre-emptible rather than having
- preemption points and has a sub-millisecond guaranteed response time
- for real time processes.
-
- See ftp.uu.net:/systems/sun/papers/SunOS-5.0-MT for the full scoop.
-
- Regards Adrian
-
- ---
- Adrian Cockcroft - adrian.cockcroft@uk.sun.com or adrian.cockcroft@sun.co.uk
- Sun Microsystems, 306 Science Park, Milton Road, Cambridge CB4 4WG, UK
- Phone +44 223 420421 - Fax +44 223 420257 Sun Mailstop: ECBG01
-
-