[clean-list] Matrix timings

Marco Kesseler M.Kesseler@aia.nl
Wed, 31 Oct 2001 09:37:18 +0100


Date sent:      	Wed, 31 Oct 2001 08:33:53 +0100
From:           	Siegfried Gonzi <siegfried.gonzi@kfunigraz.ac.at>
Organization:   	Universitaet Graz
To:             	clean-list@cs.kun.nl
Subject:        	Re: [clean-list] Matrix timings 

> Lest play hardball: Newer processors include parallelism in the
> processor itself. The new G4 processor highly parallise tasks. C and
> Fortran can always exploit this feature. I once red an article by a NASA
> magnetohydrodynamics-guy about G4 parallelism and how one can exploit it
> with C or Fortran (as long a the compiler-vendor supports it).

In principle, Clean should be able to exploit this too, but it is the 
same as with C or Fortran: the compiler vendor must support it. 
This stuff however is rather processor-dependent, so the question 
becomes whether it is reasonable to expect such support from the 
Clean implementers.

These issues indicate that it would be A Good Thing to open 
source the Clean compiler. Unfortunately it seems that the code 
generator (which is written in C, even in 2.0) will not be published. 
Exploiting processor parallellism would certainly require some 
changes in that part of the compiler.
 
> The Clean strategy has been a few years ago to also use parallelism but
> with two and more physical processors. But this is only my assumption
> that to this time the prospect has been that in the future we are using
> highly parallelised machines in form of two and more processors. But it
> seems that hardware manufactures decided to go a different way and embed
> this all into one processor.

The hardware manufacturers do not offer an alternative to multi-
processor machines. They resort to parallellism because they have 
no choice if they want to run their processors at higher speeds. 
Intel and IBM/Motorola all have parallellism on their chips, but thet 
have made different decisions in this respect. The Pentium seeks 
higher speeds in deep pipeline-parallellism which enables higher 
clock rates (partly a marketing issue), whereas the PowerPC 
mainly seeks higher speeds in data-parallellism, avoiding deep 
pipelines to a certain extent (promising good performance at lower 
clock rates - whether this is true in practice I do not know). The 
performance impact of these decisions depend on the application, 
and compiler support for these architectures.

> Here C will always win.

Currently yes, because there are so many more developers 
involved in C/C++ than in Clean.

regards,
Marco
----------------------------------------------------------------------
Aia                                     Phone: +31 24 371 02 30
PO Box 38025                            Fax:   +31 24 371 02 31
6503 AA Nijmegen                        Email: M.Kesseler@aia.nl
The Netherlands                         URL:   http://www.aia.nl
----------------------------------------------------------------------
This E-mail and any files transmitted with it are confidential and
intended solely for the use of the individual or entity to whom they
are adressed. If you have received this E-mail in error please notify
the postmaster (postmaster@aia.nl). The authenticity of this
message cannot, at this moment, be guaranteed by ourselves. For this
reason no legal rights may be granted should the contents differ to
the original sent message. The Aia log-file of sent messages is 
deemed to be the sole, true transcript of communication unless the 
contrary, other than the received message, can be proven.
----------------------------------------------------------------------