Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watnot!watmath!clyde!rutgers!seismo!gatech!mcnc!unc!rentsch From: rentsch@unc.UUCP Newsgroups: comp.arch Subject: Re: Tuning your libraries for your machine Message-ID: <32@unc.unc.UUCP> Date: Tue, 7-Apr-87 23:25:58 EST Article-I.D.: unc.32 Posted: Tue Apr 7 23:25:58 1987 Date-Received: Sat, 11-Apr-87 03:13:21 EST References: <15292@amdcad.UUCP> <978@ames.UUCP> <15694@sun.uucp> <1530@husc6.UUCP> <1537@husc6.UUCP> Reply-To: rentsch@unc.UUCP (Tim Rentsch) Organization: CS Dept, U. of N. Carolina, Chapel Hill Lines: 41 Summary: Sell for large markets, but don't special case each model In article <146@mas1.UUCP> jda@mas1.UUCP (James Allen) writes: > In article <1959@hoptoad.uucp>, gnu@hoptoad.uucp (John Gilmore) writes: > > It only becomes reasonable to tailor a system for a particular piece of > > hardware when there are only a small number of variants that run that > > architecture.... > > I worked on an APL system for the IBM 360/370 and just finding out the > > timings for the 15 or 20 models that could run the code was too much work, > > let alone figuring out which combination would be best until IBM's next > > release. (No flames on 15..20, this was in 1973!) > A simple but common logic flaw in my opinion. Granted that it can > require up to 15 or 20 times the effort to support 15 or 20 models, > but the issue is whether any such model is worth added support. I > can understand a statement like "I'm not going to optimize for the > Lemon III Model B since Lemon Computer Corporation hasn't even sold > one yet." But John Gilmore seems to be saying: "IBM was selling > thousands of machines a month so the only sensible thing was to move > my product to a company whose market was so small they wouldn't > confuse me with multiple models." I read John's posting differently. Obviously he intended to continue APL support for 360/370 (so he was not moving to a different company, or market); it's just that he wrote code for *generic* 360's (or 370's) rather than trying to optimize for a particular model (or mix of models, or special case optimize each model). I *have* seen the timings for one 370 (158, to be precise), and, while complete, the timings were of sufficient complexity so as to be very difficult to use in a practical sense. It would be easier to just try several different programs and get out the old stopwatch. Besides all of which, the 360's (and later, 370's) were sufficiently different in how relatively fast the various operations were so that what was fast on one machine would be dog slow on another. For example, the 360/91 had no packed decimal instructions -- those opcodes were trapped to the OS and simulated in software. Needless to say, packed decimal ran SLOW (and not just relatively) on the 91 compared to other models. cheers, Tim