From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: fac41,9a0ff0bffdf63657 X-Google-Attributes: gidfac41,public X-Google-Thread: 1108a1,9a0ff0bffdf63657 X-Google-Attributes: gid1108a1,public X-Google-Thread: 103376,a498aa1404ef5d87 X-Google-Attributes: gid103376,public X-Google-Thread: f43e6,9a0ff0bffdf63657 X-Google-Attributes: gidf43e6,public From: dennison@telepath.com Subject: Re: Why C++ is successful Date: 1998/07/30 Message-ID: <6pq15d$1s$1@nnrp1.dejanews.com>#1/1 X-Deja-AN: 376340254 References: <35AE4621.2EBC7F6A@eiffel.com> <6p83vj$657$1@news.intellistor.com> <35B79E7D.6068DCDF@eiffel.com> <6pg7fg$qhi$1@news.interlog.com> <901533851.20058.0.nnrp-04.9e980ba3@news.demon.co.uk> <35be2a94.57352308@netnews.msn.com> <6plvgl$eaf$1@news-1.news.gte.net> <35bebe5f.95187031@netnews.msn.com> <6pn9af$hqd$1@uuneo.neosoft.com> <35BF51A2.B199FDFA@gmv.es> <6poobv$8dn$1@uuneo.neosoft.com> <35C00670.56E78687@earthlink.net> Organization: Deja News - The Leader in Internet Discussion X-Article-Creation-Date: Thu Jul 30 14:49:16 1998 GMT Newsgroups: comp.lang.eiffel,comp.object,comp.software-eng,comp.lang.ada X-Http-User-Agent: Mozilla/4.0 (compatible; MSIE 4.0; Windows NT; Gateway2000) Date: 1998-07-30T00:00:00+00:00 List-Id: In article <35C00670.56E78687@earthlink.net>, Jay Martin wrote: > Pat Rogers wrote: > > Since you mention it, what would you say is Fortran's niche that the language is > > unbeatable in filling? (Serious request for opinion, not yet another language > > flame war ignition.) > > I believe Fortran (i.e. High Performance Fortran) is king for > scientific array calculations on massively parallel > machines. These compilers will take a program > that does calculations on arrays and generate code > that distributes the arrays across all the processors > and efficiently schedules data communication between > the processors. I don't know if there is a > viable "High Performance C/C++" in the market yet. I just finished a graduate-level course in compiler optimizations on concurrent architectures. There is a large amount of research being poured into getting Fortran compilers to optimize code on vector and multiprocessor machines. This has little to do with the suitability of Fortran, but is mostly due to the fact that the purchasers of these machines have lots of Fortran code they want to run. HPF has special loop constructs that map directly to "do this instruction on every processor in parallel" and "do this instruction across the whole array at once as a vector". These allows the s/w developer to explicitly code parallelsim that he knows his hardware supports. Of course the coder has to be able to think in these terms, which takes some getting used to. That being said, I noticed two things wrt supporting other languages on these platforms. First, because of C's universal reliance on pointers, just about every loop optimization that we studied would have to be disabled in a C compiler. Safely doing most optimizations would entail very complicated alias analisis, usually going across compilation units. Secondly, because of Ada's parameter passing rules and static type checking, an Ada compiler would actually have to do LESS work than the HPF compiler to optimize the same algorithm. The entire semester I found myself asking the instructor, "Gee, you wouldn't have to do any of this work you just spent half the class going over if the language was defined to (insert Ada language rule here), would you?" Of course Ada does support pointers, but dosen't have C's aliasing problem since aliased variables are much rarer, and have to be clearly marked as such in the source code. Of course language suitability is only part of the picture. If all the purchasers of these machines have Fortran code they want to run on them, a really great Ada or C compiler won't do them much good. T.E.D. -----== Posted via Deja News, The Leader in Internet Discussion ==----- http://www.dejanews.com/rg_mkgrp.xp Create Your Own Free Member Forum