Path: utzoo!attcan!uunet!husc6!think!ames!oliveb!sun!gorodish!guy From: guy@gorodish.Sun.COM (Guy Harris) Newsgroups: comp.arch Subject: Re: Self-modifying code Message-ID: <61269@sun.uucp> Date: 25 Jul 88 19:00:24 GMT References: <6341@bloom-beacon.MIT.EDU> <60859@sun.uucp> <474@m3.mfci.UUCP> Sender: news@sun.uucp Lines: 33 > You are asking for way too much, Guy. Computer system designers > can't even agree on performance metrics, and performance is probably > the easiest thing to measure about a computer system (as compared to, > say, reliability or programmer productivity). Well, I don't necessarily want numbers complete with reliable error bars; I'd be interested just to hear anecdotal stories such as "it took this team 10 times as long to do this project under XYZZY's Ada on a PC as it did for some other team to do it on FFGGF's Ada on the FFGGF Ada-Interpreter-In-Microcode(TM) processor", as long as the two teams were of comparable quality. > But my intuition is also that, for the same reasons that we > instinctively reach for the best tools for the job at hand (C, > assembly, Lisp, Ada, etc.), we would do considerably better as > programmers if the "thing" (including architecture, language, & OS) > executing our code matched our expectations as closely as possible, > and with few surprises. Yes, but is there any indication of whether we'd do better by changing the architecture (meaning the instruction-set architecture) or by changing the compiler, holding other things pretty much equal (e.g., the language)? > And further, if it made sure we knew the nature of whatever surprises > occurred, rather than (a C example) having an array-pointer-out-of-bounds > happen to trash a scalar value that was coincidentally declared nearby. > I don't see higher performance as a very good means of preventing errors > like that. If the performance is enough greater, you could spend some of the performance gain by inserting instructions to do run-time array bounds checks. If the compiler is good enough to optimize away most of those checks, you may spend less than you might expect to.