Path: utzoo!dciem!nrcaer!sce!ajai From: ajai@sce.carleton.ca (Ajai Sehgal) Newsgroups: comp.sys.ibm.pc Subject: Re: Why The Move To RISC Architectures? ('386 vs. RISC) Summary: Programming in assembly is essential to some! Message-ID: <805@sce.carleton.ca> Date: 25 Mar 90 18:39:12 GMT References: <28011@cup.portal.com> <1990Mar20.233504.4946@seri.gov> <1990Mar21.210152.3294@holos0.uucp> Organization: Systems & Computer Eng. Dept., Carleton University, Ottawa, Canada Lines: 63 In article <1990Mar21.210152.3294@holos0.uucp>, lbr@holos0.uucp (Len Reed) writes: > In article <1990Mar20.233504.4946@seri.gov> marshall@wind55.seri.gov (Marshall L. Buhl) writes: > > >Just a wild guess. Hardware guys like RISC, software guys like CISC. > >RISC puts the work on the shoulders of the software folks. It's easier > >to impliment RISC in hardware. If I were developing software in > >assembler, I'd probably hate RISC. > > This shows some odd reasoning for someone with the title of "Senior > Computer Engineer." In my experience hardware people *love* to do On the contrary, this is very good reasoning for a Senior Computer ENGINEER (not computer scientist). RISC certainly does put the burden on the shoulders of the software folks. Although it probably wasn't a contrived "plot" , it remains a fact. > RISC does *not* put the burden on the software folks, but rather upon > a small subset of them: compiler writers. Or really, compiler writers > involved in optimization and code generation. As to developing software > in assembler for a RISC machine: you don't do it, or you do only a tiny > amount of it. Most software people, even in operating systems, will > use something above the assembler level. You speak as if "writing in > assembler" is a choice made independent of architecture, as if some problems > are naturals for assembler and some are not. Nonsense. The idea is > to do almost everything in a language *above* the base architecture > level in a RISC machine; things that are coded in assembler on a CISC > would not necessarily be so coded on a RISC. > > The alleged benefit of RISC has *nothing* to do with ease of implementation, Your view on who is programming what using what type of language and at what level is narrowed by a lack of experience outside of your own domain (sorry for the flame but ....). The people who would most be attracted to the performance gains available in RISC architectures certainly are concerned with programming in assembly language. For example, any real time application where timing is critical (such as Digital Signal Processing), requires code optimisation that cannot be achieved with even the most optimal of optimizing compilers (good luck to whoever wants to write an optimising compiler for a RISC chip such as the i860!). Even on CISCs an FFT (fast fourier transform - basic building block for DSP) algorithm, implemented in C or FORTRAN and compiled with the best compilers can only come within 35% of a hand coded (assembly) version of the same algorithm - in terms of speed of execution [see article by L.R. Morris in IEEE Micro Sep 87]. Now try to program a RISC chip by hand (assembly). The intel i860 for example with its "exposed" pipeline has a ridiculous learning curve. If we can't program these chips in assembly and writing optimising compilers are difficult (either impossible or too expensive - I don't believe anything is impossible [except dribbling a football!]) we won't use them --- unless the performance improvements are such that using "dirty" compilers still give better performance than CISCs. With the introduction of the 80486 and the 68040 with most of the most often used instructions approaching single cycle execution as in RISCs, it is unlikely that the RISCs will grab an appreciable slice of the market. RISC is a passing fad that as technology advances, will be left in the dust. TO PREEMPT ANY FLAMERS OUT THERE - I apologize for posting this to this Newsgroup and in future will refrain from doing so. Ajai (ajai@sce.carleton.ca)