comp.lang.ada
 help / color / mirror / Atom feed
From: Matthias Kretschmer <schreib_mir_du_spacken@gmx.de>
Subject: Re: Ada and vectorization
Date: Tue, 18 Jun 2002 18:21:13 +0200
Date: 2002-06-18T18:21:13+02:00	[thread overview]
Message-ID: <aenmlj$6mq$05$1@news.t-online.com> (raw)
In-Reply-To: dstanbro-16FC0C.20004918062002@news-server.bigpond.net.au

Dale Stanbrough wrote:

> In article <aemqnr$grq$07$1@news.t-online.com>,
>  Matthias Kretschmer <schreib_mir_du_spacken@gmx.de> wrote:
> 
>> I think that today compilers -
>> optimizers of compilers - are capable of finding places where to use
>> vector units or what how ever so cool feature of you cpu, so I want them
>> to decide and let me alone with the real important stuff. I do not want
>> to know how many clock cycles A takes in unit B of cpu C. Think of what
>> you have to know just to get something done, which other compilers do for
>> their own without bothering the programmer.
> 
> It would be nice if we let the compiler discover all of the possible
> vectorisations possible.  I've got no idea what the current state
> of the art is in this respect, however I would imagine that it would
> still be -cheaper- to build a simple compiler that took hints or
> directions from the programmer about possible vectorisation.

maybe cheaper, but let me cite Dijkstra: "Are you quite sure that all those 
bells and whistles, all those wonderful facilities of your so-called 
powerful programming languages belong to the solution set rather than to 
the problem set?"

And this is the question we have to ask here I think, and I am quite sure, 
that vectorization hints belong to the problem set ...

and looking at the compiler design people, they are doing a great job, what 
today a compiler does is not compareable to the stuff possible (or 
available) twenty years ago - there are definatively nice compiler 
implementations available today using all those nice feature of your cpu - 
so not all of course, but I don't think it is a solution to move all the 
logic in the language, so the programmer has to care about, it just let's 
the programmer to do all over the stuff again (somehow inventing the wheel 
everytime he writes down code again).

The other advantage is, that old code can gain more performance without 
changing one line of code, just by using a newer version of a compiler or 
another compiler.

Having all features architectures provide accessable through a language I 
think should be called assembler and has nothing to do with abstraction of 
the programming of the underlying hardware. Do we really want to implement 
every single feature cpu-designers provide in the language itself? Then we 
will have some very bloated, complex language which will raise the 
difficult level of programming in this language. And this is not the aim of 
"higher programming languages". They should make it easy, or we all could 
just use assembler. The reason why I personally use Ada is, that it is 
abstract, not that I have to care about the hardware and I think this is 
the way it should be.

> 
> Does anyone have real info instead of my speculation?
> 
> Dale

-- 
Greetings
Matthias Kretschmer



  reply	other threads:[~2002-06-18 16:21 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-06-16  9:56 Ada and vectorization Guillaume Foliard
2002-06-16 12:50 ` Dale Stanbrough
2002-06-16 20:07   ` Matthias Kretschmer
2002-06-16 22:38     ` Robert A Duff
2002-06-18  8:24       ` Matthias Kretschmer
2002-06-18 10:02         ` Dale Stanbrough
2002-06-18 16:21           ` Matthias Kretschmer [this message]
2002-06-18 19:13             ` Robert A Duff
2002-06-18 20:12               ` Matthias Kretschmer
2002-06-18 20:51                 ` Guillaume Foliard
2002-06-19  4:28                   ` Matthias Kretschmer
2002-06-18 20:13             ` Guillaume Foliard
2002-06-18 17:46           ` Ted Dennison
2002-06-16 22:45   ` Ted Dennison
2002-06-17 23:47 ` Robert I. Eachus
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox