Prev: Effects of Memory Latency and Bandwidth onSupercomputer,Application Performance
Next: Effects of Memory Latency and Bandwidth on Supercomputer,Application Performance
From: MitchAlsup on 12 Aug 2010 18:44 On Aug 11, 12:25 am, Terje Mathisen <"terje.mathisen at tmsw.no"> wrote: > (Personally I've never really understood what was so hard about x86, > except for register pressure, mapping algorithms onto the > register/instruction set have felt quite natural.) Once you (the programmer/debugger) are hidden behind a high level language (like <ahem> C):: does it really mater what the characteristics of the underlying instruction set? I posit No. Mitch
From: MitchAlsup on 12 Aug 2010 18:53 On Aug 12, 12:22 am, Terje Mathisen <"terje.mathisen at tmsw.no"> wrote: > Nick Maclaren wrote: > > Yes. The same remarks were made by the same dogmatists about the > > System/370 series, and they were even less justified. There were > > some weird instructions, but they were used only by people who wrote > > assembler procedures and run-time systems. The basic instruction set > > was very simple, and that is all that almost all compilers used. > > I have been told (read somewhere) that one early IBM compiler was known > for being able to generate, when compiling regular programs, every > single opcode in the instruction set. > > I don't remember which language, maybe Cobol or APL? I remember getting the PL/1 compiler to spit out 90%-odd of the unpriviledged instruction set. I even tricked the compiler into performing a MVC instead of 256 byte moves in a loop for my checkerr playing program. I'm pretty sure the FORTRAN compiler could use most of the integer and numerics instructions. I know that a few of the library routines used the unaligned FP instructions. I'm pretty sure the COBOL compiler could use most of the instruction et pertinate to COBOL adn the needs of COBOLholics. Mitch
From: Nick Maclaren on 12 Aug 2010 19:05 In article <d52c361a-2775-404f-85a9-32eb613eee6f(a)l6g2000yqb.googlegroups.com>, MitchAlsup <MitchAlsup(a)aol.com> wrote: >On Aug 11, 12:25=A0am, Terje Mathisen <"terje.mathisen at tmsw.no"> >wrote: >> (Personally I've never really understood what was so hard about x86, >> except for register pressure, mapping algorithms onto the >> register/instruction set have felt quite natural.) > >Once you (the programmer/debugger) are hidden behind a high level >language (like <ahem> C):: does it really mater what the >characteristics of the underlying instruction set? I posit No. When I was managing our HPC system, I had a few users come to me and say that they were getting slightly different results, and had anything changed. We had only upgraded to a new operating system on a new architecture :-) All right, most modern architectures are as near as dammit identical (even x86 and Alpha), but I was amused by that. It was clear that their code was decently portable :-) Regards, Nick Maclaren.
From: Joe Pfeiffer on 12 Aug 2010 21:45 MitchAlsup <MitchAlsup(a)aol.com> writes: > On Aug 11, 12:25 am, Terje Mathisen <"terje.mathisen at tmsw.no"> > wrote: >> (Personally I've never really understood what was so hard about x86, >> except for register pressure, mapping algorithms onto the >> register/instruction set have felt quite natural.) > > Once you (the programmer/debugger) are hidden behind a high level > language (like <ahem> C):: does it really mater what the > characteristics of the underlying instruction set? I posit No. Sure -- the question is how hard it is to implement the compiler for that HLL. -- As we enjoy great advantages from the inventions of others, we should be glad of an opportunity to serve others by any invention of ours; and this we should do freely and generously. (Benjamin Franklin)
From: Robert Myers on 12 Aug 2010 21:54
On Aug 12, 9:45 pm, Joe Pfeiffer <pfeif...(a)cs.nmsu.edu> wrote: > MitchAlsup <MitchAl...(a)aol.com> writes: > > On Aug 11, 12:25 am, Terje Mathisen <"terje.mathisen at tmsw.no"> > > wrote: > >> (Personally I've never really understood what was so hard about x86, > >> except for register pressure, mapping algorithms onto the > >> register/instruction set have felt quite natural.) > > > Once you (the programmer/debugger) are hidden behind a high level > > language (like <ahem> C):: does it really mater what the > > characteristics of the underlying instruction set? I posit No. > > Sure -- the question is how hard it is to implement the compiler for > that HLL. These conversations always puzzle me. The last time I had the luxury of ignoring what the hardware was actually doing was when I was taking a graduate course in numerical analysis and doing toy problems. If the point of this conversation is that ISA's get way too much attention and discussion, I could not agree more. If the point of the conversation is that HLL's have it all taken care of and that the remaining problems are all for the compiler writers, I'd like to chime in that that particular flavor of wishful thinking is as old as FORTRAN, and that it's no more true now than it was then. Robert. |