I need to run simple tests on a Linux cluster fro parallel programing. I have used only C++ before, but this Compositional C++ is not that good idea as I thought at first. I have read that there is also MPI libraries and High performance Fortran, but I have no idea of those two. So please help me I need to start from somewhere with this parallel programing.

Recommended Answers

All 12 Replies

At first ask the Linux cluster system administrator which of programming tools are installed and in use...

I just learned some MPI recently and I have a PDF with some basics about how to use it with C (and possibly fortran, i forget). Just PM me your email address and I'll send it over.

If you are new to the parallel way of doing things,
I wouldn't start with MPI.
You should start with simple threading.
And pthreads are installed by default,
and has quite good documentation.

good luck

I just learned some MPI recently and I have a PDF with some basics about how to use it with C (and possibly fortran, i forget). Just PM me your email address and I'll send it over.

Tahnk you for the PDF in advance! Here it is my e-mail: ninabox2002@yahoo.com
and the one at the work: Nina.Dobrinkova@ecb.europa.eu
I really need a starting point I have deadlines coming but no one next to me for discussion or for advice.
Thanks one more time.

Nina

At first ask the Linux cluster system administrator which of programming tools are installed and in use...

Ok, I have asked the administartor about the programming tools and I got this e-mail (I will copy it here):

hpclt30:~ # uname -a
Linux hpclt30 2.6.16.46-0.12-smp #1 SMP Thu May 17 14:00:09 UTC 2007 x86_64 x86_64 x86_64 GNU/Linux

hpclt30:~ # gcc --version
gcc (GCC) 4.1.2 20070115 (prerelease) (SUSE Linux)
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

hpclt30:~ # g++ --version
g++ (GCC) 4.1.2 20070115 (prerelease) (SUSE Linux)
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


hpclt30:~ # cat /etc/issue

Welcome to SUSE Linux Enterprise Server 10 SP1 (x86_64) - Kernel \r (\l).

(SLES 10 SP1)

RPM Groups -> all under Development


hpclt30:~ # rpm -qi eclipse
Name : eclipse Relocations: (not relocatable)
Version : 3.2.1 Vendor: SUSE LINUX Products GmbH, Nuernberg, Germany
Release : 5.7 Build Date: Mon May 14 18:32:16 2007
Install Date: Fri Jun 13 10:43:14 2008 Build Host: pythagoras.suse.de
Group : Development/Tools/IDE Source RPM: eclipse-3.2.1-5.7.src.rpm
Size : 190 License: Other License(s), see package
Signature : DSA/SHA1, Mon May 14 18:35:39 2007, Key ID a84edae89c800aca
Packager : http://bugs.opensuse.org
URL : http://www.eclipse.org
Summary : Eclipse Platform and Java IDE
Description :
The Eclipse Platform is designed for building integrated development
environments (IDEs) that can be extended by custom plug-ins. The base
distribution also contains a full-featured Java development
environment.

NOTE: Although it runs with the open source gcj Java, it is advisable
to install SUN's, IBM's or BEA's Java
(java-1_4_2-sun,java-1_5_0-sun,java-1_4_2-ibm, java-1_5_0-ibm or
java-1_4_2-bea) due to performance reasons.

Me and the administarator are quite new in this parallel programing field, but the thing is that I have to learn how to run at first very siplme tests on the cluster and that I have to learn as fast as possible. So please if you have any manuals or any information from where I should start please send me the infmation to one of my e-mails: Nina.Dobrinkova@ecb.europa.eu or ninabox2002@yahoo.com.

Thank you in advance.

Nina

If you are new to the parallel way of doing things,
I wouldn't start with MPI.
You should start with simple threading.
And pthreads are installed by default,
and has quite good documentation.

good luck

Ok, I will start with the MPI, but I have never used MPI before. Do you have any manuals on topic like getting started with MPI?

My e-mails if you have any information are:

Nina.Dobrinkova@ecb.europa.eu
or
ninabox2002@yahoo.com

For example, start from
http://www-unix.mcs.anl.gov/mpi/
Have you ever use Google? ;)
Try to search "MPI"...
Lots of URLs...

Thanks ! :) I will start digging into the deep :)

That's programmer's destiny...
I have started from that URL some years ago (when my wife wanted to dig MPI into the deep ;))..

Good luck!

Apropos: are you sure you have a cluster? May be it's a simple multiprocessor with shared memory? If so no need in MPI (for true clusters) and you can restrict your parallel programming tools to semaphores...
It's a very strange cluster where the system administrator do not know anything about MPI stuff and no proper docs/distributives on this topic...

That's programmer's destiny...
I have started from that URL some years ago (when my wife wanted to dig MPI into the deep ;))..

Good luck!

Thaks for the help and the wishes once again ;)
I have just started to read the URL you have send to me ;)

Apropos: are you sure you have a cluster? May be it's a simple multiprocessor with shared memory? If so no need in MPI (for true clusters) and you can restrict your parallel programming tools to semaphores...
It's a very strange cluster where the system administrator do not know anything about MPI stuff and no proper docs/distributives on this topic...

Well It is a pilot version of a project...(I can not say more sorry about that)
We have like two small clusters with Windows and Linux OS. We have to run parallel programming on both of them and compare which one is better. The clusters are actually very small have like 16 and 19 workers on them but if the results are OK they will expand them. I am not very familiar with the hardware, so I asume that we have clusters :)

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.