
Hi all, I'm doing an internship at Cray Inc this summer and I might get the opportunity of some computer time on a T3E machine. Now I am also a great Haskell fan and have been wondering about the possibility of getting parallel Haskell running on a real super-computer. I've read that someone is working on porting ghc's parallel features to an MPI implementation and also that someone recently got the alpha port working again. In case you don't know a T3E is a distributed memory alpha based super-computer. It supports MPI & pthreads. So my question is, what is the state of the art? What is the state of the MPI port? Does the alpha port work sufficiently well. One potential problem I can see is that I'm not sure gcc is avaliable on the T3E and I'm not sure how dependant ghc is upon the various GNU C extensions. So, if I can get an account, I'll have untill the end of September to test anything anyone can give me. You know they still program these machines in C, C++ & Fortran. Shocking! ;-) Duncan

So my question is, what is the state of the art? What is the state of the MPI port? Does the alpha port work sufficiently well. One potential problem I can see is that I'm not sure gcc is avaliable on the T3E and I'm not sure how dependant ghc is upon the various GNU C extensions.
Roman Lechtchinsky

Rahul Bhargava
So my question is, what is the state of the art? What is the state of the MPI port? Does the alpha port work sufficiently well. One potential problem I can see is that I'm not sure gcc is avaliable on the T3E and I'm not sure how dependant ghc is upon the various GNU C extensions.
Roman Lechtchinsky
was working towards the same end, GHC on the T3E (after porting gcc).
Yes, Roman has ported gcc to the T3E (you absolutely need gcc for GHC). Last I heard, he was about to submit the relavant patches to the FSF. AFAIK, nothing has been done about the actual port of GHC to the T3E yet. I think, the next logical step would be to try the recent alpha port on the T3E. I guess, this will require to modify the mangler, because AFAIK the assembler on the Cray is a little different to standard alpha assembler (at least gcc's code generation will be different, which might already break the mangler). I am in principle prepared to look into all this, but haven't got much time at the moment...maybe we can get this done in a combined effort. Manuel PS: If you are wondering what the mangler is, look at http://www.cse.unsw.edu.au/~chak/haskell/ghc/comm/the-beast/mangler.html

On Mon, 20 Aug 2001, Manuel M. T. Chakravarty wrote:
Yes, Roman has ported gcc to the T3E (you absolutely need gcc for GHC). Last I heard, he was about to submit the relavant patches to the FSF.
Sorry, didn't read my mail for a couple of days. Yes, I basically got gcc to work on the T3E, the relevant patches are in the gcc-patches mailing list archives at gcc.gnu.org (just search for T3E). Unfortunately, I haven't had time to work on them for a couple of weeks so they are probably somewhat out of date now. I'll update them soon. Right now I'm trying to get the GCC maintainers to include the patches in the gcc source tree.
AFAIK, nothing has been done about the actual port of GHC to the T3E yet. I think, the next logical step would be to try the recent alpha port on the T3E. I guess, this will require to modify the mangler, because AFAIK the assembler on the Cray is a little different to standard alpha assembler (at least gcc's code generation will be different, which might already break the mangler).
Yes, there are differences compared to other Alpha targets, both in assembler syntax and in the generated code. Updating the mangler might be quite a lot of work.
I am in principle prepared to look into all this, but haven't got much time at the moment...maybe we can get this done in a combined effort.
I'm planning to look into this when my gcc patches are accepted and all major bugs are fixed. Any help will be highly appreciated :-) Bye Roman

Hi Duncan, About your question concerning Haskell on the T3E...
So my question is, what is the state of the art? What is the state of the MPI port? Does the alpha port work sufficiently well. One potential problem I can see is that I'm not sure gcc is avaliable on the T3E and I'm not sure how dependant ghc is upon the various GNU C extensions.
There are three (at least) quite distinct approaches to putting Haskell on the T3E, and on related parallel machines. (1) Port GPH to the T3E, letting the runtime system handle the control of parallelism and communication. (2) Port ghc, and write the Haskell program in SPMD style (that is, the same executable is started on every processor in the group, just as with ordinary C+MPI). (3) Same as (2), but transform the final Haskell SPMD program to C+MPI, enabling it to be compiled and run using the standard tools. In the first two approaches, there are a lot of difficulties with getting Haskell running on the T3E. This is partly due to the Alpha processor, but there may also because difficulties due to the Cray operating system. My colleagues and I are currently working on the approaches (2) and (3) above. We are also using a Cray T3E, but for the near future we'll have to run the Haskell on clusters, since we can't generate code for the Cray. The group consists of John O'Donnell, Glasgow, jtod@dcs.gla.ac.uk Thomas Rauber, Halle, rauber@informatik.uni-halle.de Gudula R"unger, Chemnitz, ruenger@informatik.tu-chemnitz.de We are also very interested in getting a Cray port of Haskell, although we're just as interested in ghc as gph. After all, SPMD programming uses sequential programming languages, not parallel ones! Anybody making progress with an Alpha port of ghc, could you please contact us? Good luck with your project, Duncan! John
Hi all,
I'm doing an internship at Cray Inc this summer and I might get the opportunity of some computer time on a T3E machine. Now I am also a great Haskell fan and have been wondering about the possibility of getting parallel Haskell running on a real super-computer. I've read that someone is working on porting ghc's parallel features to an MPI implementation and also that someone recently got the alpha port working again.
In case you don't know a T3E is a distributed memory alpha based super-computer. It supports MPI & pthreads.
So my question is, what is the state of the art? What is the state of the MPI port? Does the alpha port work sufficiently well. One potential problem I can see is that I'm not sure gcc is avaliable on the T3E and I'm not sure how dependant ghc is upon the various GNU C extensions.
So, if I can get an account, I'll have untill the end of September to test anything anyone can give me.
You know they still program these machines in C, C++ & Fortran. Shocking! ;-)
Duncan
_______________________________________________ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Duncan,
The latest version of GpH is based on GHC 4.06 and runs on Linux PCs. A release
based on GHC 5.01 is imminent. In the next couple of months we plan ports to
Sun Solaris, and later to SGI Origins.
GpH is bundled with many GHC versions - details at
http://www.cee.hw.ac.uk/~dsg/gph/, and requires PVM rather than MPI. However,
as Manuel Chakravarty points out, even with gcc on the T3E it's non-trivial to
port GHC.
Phil
On Sat, 18 Aug 2001 17:51:30 -0500 Duncan Coutts
Hi all,
I'm doing an internship at Cray Inc this summer and I might get the opportunity of some computer time on a T3E machine. Now I am also a great Haskell fan and have been wondering about the possibility of getting parallel Haskell running on a real super-computer. I've read that someone is working on porting ghc's parallel features to an MPI implementation and also that someone recently got the alpha port working again.
In case you don't know a T3E is a distributed memory alpha based super-computer. It supports MPI & pthreads.
So my question is, what is the state of the art? What is the state of the MPI port? Does the alpha port work sufficiently well. One potential problem I can see is that I'm not sure gcc is avaliable on the T3E and I'm not sure how dependant ghc is upon the various GNU C extensions.
So, if I can get an account, I'll have untill the end of September to test anything anyone can give me.
You know they still program these machines in C, C++ & Fortran. Shocking! ;-)
Duncan
_______________________________________________ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
-------------------------------------------------- Phil Trinder Department of Computing and Electrical Engineering Heriot Watt University Riccarton Edinburgh, EH14 4AS E-mail: trinder@cee.hw.ac.uk Teleph: +44 (0)131 451 3435 Depart: +44 (0)131 451 3328 Fasmly: +44 (0)131 451 3327 Intrnt: http://www.cee.hw.ac.uk/~trinder

Hi Duncan,
Sounds like you've got a really nice toy out there ;-)
About the MPI port of GPH: right now it's not very high on our (GPH group)
priority list, but it should be fairly easy to do. Actually we already
started on that but haven't had the need to wrap it up properly. As we move
to other machines it will become more of an issue anyway, so it's mainly a
matter of timing.
As already mentioned, the more immediate step would be porting GHC to the
Cray. I'd certainly be very interested to have GPH running on a Cray. So,
if you're going to make an effort into that direction give me shout and
I'll have go at the MPI backend again.
BTW, to geat an idea about on-going implementation work check also
http://www.cee.hw.ac.uk/~dsg/gph/arch-indep.html
and the GPH page mentioned already.
Cheers,
--
Hans Wolfgang
On Sat, 18 Aug 2001 17:51:30 -0500
Duncan Coutts
Hi all,
I'm doing an internship at Cray Inc this summer and I might get the opportunity of some computer time on a T3E machine. Now I am also a great Haskell fan and have been wondering about the possibility of getting parallel Haskell running on a real super-computer. I've read that someone is working on porting ghc's parallel features to an MPI implementation and also that someone recently got the alpha port working again.
In case you don't know a T3E is a distributed memory alpha based super-computer. It supports MPI & pthreads.
So my question is, what is the state of the art? What is the state of the MPI port? Does the alpha port work sufficiently well. One potential problem I can see is that I'm not sure gcc is avaliable on the T3E and I'm not sure how dependant ghc is upon the various GNU C extensions.
So, if I can get an account, I'll have untill the end of September to test anything anyone can give me.
You know they still program these machines in C, C++ & Fortran. Shocking! ;-)
Duncan
_______________________________________________ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

On Tue, 21 Aug 2001, Hans-Wolfgang Loidl wrote: [..]
As already mentioned, the more immediate step would be porting GHC to the Cray. I'd certainly be very interested to have GPH running on a Cray. So, if you're going to make an effort into that direction give me shout and I'll have go at the MPI backend again.
It turns out I didn't check my facts carefully enough, and the T3E actually supports PVM as well as MPI so this might make things easier. However as many people have pointed out, getting ghc running at all will be quite a task. I'll check out the gcc & assembly problems first before pestering anyone to help with the next step. Duncan
participants (7)
-
Duncan Coutts
-
Hans-Wolfgang Loidl
-
John O'Donnell
-
Manuel M. T. Chakravarty
-
Phil Trinder
-
Rahul Bhargava
-
Roman Lechtchinsky