Date: Wed, 31 May 2000 23:26:38 -0600 From: Wes Peters <wes@softweyr.com> To: mjacob@feral.com Cc: Terry Lambert <tlambert@primenet.com>, Chuck Paterson <cp@bsdi.com>, Doug Rabson <dfr@nlsystems.com>, arch@FreeBSD.ORG Subject: Re: Sparc & api for asynchronous task execution (2) Message-ID: <3935F40E.761717F5@softweyr.com> References: <Pine.BSF.4.05.10005312026450.477-100000@semuta.feral.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Matthew Jacob wrote: > > This is a late response on this (I was away for three weeks), but I can report > some historical context on sparc register windows and performance issues with > them- in going to the DKI/DDI in the SVr4 port, adding the up-tree/down-tree > calls for all the DDI calls cost, initially, a 20% performance hit because we > really started overflowing windows substantially more with deeper call stacks > than had been there in SunOS 4.0. This made the DKI/DDI extremely unpopular > within Sun (for obvious reasons other than rules are annoying). > > I believe that compilers have gotten substantially better since then so I > think that this is much less of an issue than it used to be. There are also > some other tricks that can make life easier to manage window spills/unspills. > > The orig SPARC architecture specified a maximum of 32 windows. I don't believe > any chips were done deeper than 8- which certainly was and is too small. UltraSPARC stacks 8 sets of 32 windows in an almost 3-D manner on the chip, and uses multiple ports into the register file to access registers at different stages of the pipeline. It also has additional scratchpad registers for interrupt contexts, alleviating register window overflows during interrupt processing. Read more at: http://php.iupui.edu/~rsosborn/Scholars_Quest/References/Gathering/Reference_Tools/Bibl/Test-bibl-html.html -- "Where am I, and what am I doing in this handbasket?" Wes Peters Softweyr LLC wes@softweyr.com http://softweyr.com/ To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3935F40E.761717F5>