In this lab you will work on a remote Unix server; we will
use SCIENCE applications server
app.science.oregonstate.edu. You will learn how to use existing
state-of-the-art linear solver libraries: sometimes there is no sense
to redevelop the wheel. This lab spans two weeks. Solve three
projects (students advanced in computing can merge Projects 1-4).
Please read the instructions below before you start doing anything and
wait for my presentation. Items to try ahead of time are in red.
I will give a "live" presentation when
everybody is present. If you can't wait, here is an extra just for you.
Steps:
- Log in to the (application) Linux server using ssh.
Have
your SCIENCE account name and password ready .
- I suggest you use Start X Win icon to start X Windows under CYGWIN.
Open a few terminal windows so you will have somehting to work with.
For example,
type xterm -bg red -fg black &
type xterm -fg yellow -bg black &
so you will have an additional "black" and "red" windows.
- in the black terminal, type
ssh -Y you@app.science.oregonstate.edu and input password
-
type echo $SHELL and if you do not see tcsh as the
answer, start tcsh in each window. (contact COSINE to request that they make tcsh your log-in shell).
- move around in your home directory ... make folder lab3 .. or
something like that.
- On app server, you will compile and link a FORTRAN program. Take a look at what it
does.. You will also need the "other"
module. Plan how you will copy all the files
to the application server - use scp.
in the red terminal ...
scp myfile you@app.science.oregonstate.edu:
- The code uses a call to a separate module and to a library.
This library is the
LAPACK
library; you may also want to read about
BLAS.
Both come from
NETLIB
and are installed on every "real" computing platform.
Take a look !
You have to compile both modules and then link them together. Here is
how f77 -o lab3.o -c lab3.f f77 -o
lab3module.o -c lab3module.f f77 -o lab3 lab3.o
lab3module.o -llapack - Now that you finish building
the binary, run the code
lab3 Does it do what you
thought it should ?
For geeks: you may want to use a Makefile
. Type make and things will work on their own. Or
will they ?
| |