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.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,c4cb2c432feebd9d X-Google-Thread: 1094ba,c4cb2c432feebd9d X-Google-Attributes: gid103376,gid1094ba,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news2.google.com!news4.google.com!border1.nntp.dca.giganews.com!nntp.giganews.com!newsfeed00.sul.t-online.de!newsfeed01.sul.t-online.de!t-online.de!news-in.ntli.net!newsrout1-win.ntli.net!ntli.net!news.highwinds-media.com!newspeer1-win.ntli.net!newsfe2-win.ntli.net.POSTED!53ab2750!not-for-mail From: "Dr. Adrian Wrigley" Subject: Re: Ada vs Fortran for scientific applications User-Agent: Pan/0.14.2 (This is not a psychotic episode. It's a cleansing moment of clarity.) Message-ID: Newsgroups: comp.lang.ada,comp.lang.fortran References: <0ugu4e.4i7.ln@hunter.axlog.fr> <_iHcg.5599$oa3.1506@trnddc08> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Date: Tue, 23 May 2006 23:21:20 GMT NNTP-Posting-Host: 82.10.238.153 X-Trace: newsfe2-win.ntli.net 1148426480 82.10.238.153 (Wed, 24 May 2006 00:21:20 BST) NNTP-Posting-Date: Wed, 24 May 2006 00:21:20 BST Organization: NTL Xref: g2news2.google.com comp.lang.ada:4396 comp.lang.fortran:10157 Date: 2006-05-23T23:21:20+00:00 List-Id: On Tue, 23 May 2006 22:49:50 +0000, Dan Nagle wrote: > > Dr. Adrian Wrigley wrote: ... >> I did briefly work >> on more general ideas for language/hardware co-design using >> co-arrays and similar. Initial results were encouraging, but >> to make use of the technology, you really need a custom parallel >> processor built. And rewriting your software :( > > But today, interprocessor communications are approaching > the performance of memory buses. I believe co-arrays > will deliver performance at or better than MPI on many architectures, > and in many clusters. > > Any application re-write is minimal compared to inserting MPI calls. Thank you for your input on this topic. I had looked at things like UPC when I was looking into the topic. There still seems to be quite a spread of different ideas, but only modest "progress". Something like the new 'Cell' processor would be a good target for a co-array language. But instead, the Cell programming tools have a disappointing, ad-hoc collection of programming (band) aids to help coders use the parallelism. It's expected to be "guru" level coding to get decent efficiency code at the metal. As regards interprocessor communications vs. memory buses, it depends at what levels you make the comparisons. On chip memory arrays may be 1000's of bits wide at GHz speeds. Communications between processor chips are a small fraction of that. The challenge for co-array and SIMD computing is to work out simple hardware that can utilize inter- and intra-chip communications and memories efficiently. This needs to have a sensible programming model (eg assembly language, instruction set architecture). Only then is it worth considering what language features (if any) are necessary to compile for it. Sadly, what passed for SIMD computing in the '70s and '80s was way too restrictive and often inefficient for its capabilities to be worth providing for in general-purpose languages. Progress is glacial :( I wish the Fortran committee the best of luck with their co-arrays! -- Adrian