From: softlib.cs.rice.edu
Last mod: February 19, 1996
fastlink, 3.0p

Installation


This file describes installation of sequential FASTLINK, version 3.0P. See README for an overview of all the documentation. Most of these instructions apply to the parallel versions, but you should also read README.parallel, README.p4 (for shared-memory), and README.TreadMarks (for networks) to fully install the parallel version.

FTP DIRECTIONS

The code is available by anonymous ftp to a machine at Rice University. Here are specific instructions:
  ftp softlib.cs.rice.edu
Login as anonymous, please leave your FULL e-mail address as password. This is very important in case we need to let you know about bugs, fixes, and future versions.
  cd pub/fastlink
To retrieve everything at once
  get fastlink.tar.Z

  uncompress fastlink.tar.Z

  tar xvf fastlink.tar
All the source code files will be in the subdirectory 3.0P/src They produce fast versions of

	ilink
	lodscore
	linkmap
        mlink
and a FASTLINK-compatible version of
	unknown
In addition to four papers and this README file, the top level directory contains various other pieces of documentation. See the README file for a roadmap to the documentation.

SOURCE CODE ORGANIZATION

The code is broken up into .h files that have just definitions and declarations, and .c files that have just C procedures. Each file opens with a comment explaining what role that file plays. Here we summarize only which files are needed for which programs:
File Name                 Used in
checkpointdefs.h          LODSCORE ILINK LINKMAP MLINK
commondefs.h              LODSCORE ILINK LINKMAP MLINK
compar.h                  ILINK LINKMAP MLINK (parallel versions only)
gemdefs.h                 LODSCORE ILINK
ildefs.h                  ILINK
lidefs.h                  LINKMAP
lodefs.h                  LODSCORE
mldefs.h                  MLINK
moddefs.h                 LODSCORE ILINK LINKMAP MLINK (faster versions)
slowmoddefs.h             LODSCORE ILINK LINKMAP MLINK (slower versions)
strbuff.h                 LINKMAP MLINK (parallel versions only)
automodified.c            LODSCORE ILINK LINKMAP MLINK (faster versions)
check.c                   LODSCORE ILINK LINKMAP MLINK
ckpt.c                    auxiliary checkpointing program
comgetvect.c              LODSCORE ILINK LINKMAP MLINK
cominputcode.c            ILINK LINKMAP MLINK 
commoncode.c              ILINK LINKMAP MLINK
comnuclear.c              LODSCORE ILINK LINKMAP MLINK
comlike.c                 LODSCORE ILINK LINKMAP MLINK
comoutput.c               LINKMAP MLINK (parallel versions only)
compar.c                  ILINK LINKMAP MLINK (parallel versions only)
comrec.c                  LODSCORE ILINK LINKMAP MLINK
ilgetvect.c               ILINK
ilink.c                   ILINK
ilinputcode.c             ILINK
iloldnuclear.c            ILINK
iostuff.c                 LODSCORE ILINK LINKMAP MLINK
ligetvect.c               LINKMAP
liinputcode.c             LINKMAP
linkmap.c                 LINKMAP
lioldnuclear.c            LINKMAP
lodscore.c                LODSCORE
logetvect.c               LODSCORE
loinputcode.c             LODSCORE
looldnuclear.c            LODSCORE
mlgetvect.c               MLINK
mlink.c                   MLINK
mlinputcode.c             MLINK
mloldnuclear.c            MLINK
oldsegup.c                LODSCORE ILINK LINKMAP MLINK
outbuff.c                 MLINK LINKMAP (parallel versions only)
parmodified.c             ILINK MLINK LINKMAP (parallel versions only)
sexmodified.c             LODSCORE ILINK LINKMAP MLINK (faster versions)
slowautomodified.c        LODSCORE ILINK LINKMAP MLINK (slower versions)
slowsexmodified.c         LODSCORE ILINK LINKMAP MLINK (slower versions)
strbuff.c                 MLINK LINKMAP (parallel versions only)
The distinction between faster and slower versions is explained in the COMPILATION section below.

COMPILATION

Part of the distribution is a file called Makefile, which enables you to compile the programs. There are eleven commands you can issue for compilation of sequential FASTLINK:
1. make lodscore
2. make slowlodscore
3. make ilink
4. make slowilink
5. make linkmap
6. make slowlinkmap
7. make mlink
8. make slowmlink
9. make installfast
10. make installslow
11. make unknown

1 and 2 put an executable version of LODSCORE in the file lodscore.
3 and 4 put an executable version of ILINK in the file ilink.
5 and 6 put an executable version of LINKMAP in the file linkmap.
7 and 8 put an executable version of MLINK in the file mlink.
11 puts an executable version of UNKNOWN in the file unknown.
9 does all of 1,3,5, and 11
10 does all of 2,4,6, and 11

In each pair the first version is faster, but may use much more memory depending on the data and run parameters. The second version is slower, though still much faster than LINKAGE 5.1, and uses little memory. If you do not have enough memory to run the faster version, delete the faster version and make the slower one instead. The new compilation structure makes this recompilation much faster than it was in version 1.0 because most of the code does not have to be be recompiled.

The Makefile we distribute works on a variety of systems. For a discussion of portability to various systems, see README.portability and the files it refers to.

The Makefile we are distributing uses the gcc compiler distributed by the Free Software Foundation. You should read README.Makefile for much more detailed instructions on how to use a different compiler and change constant settings.

It is useful that you read README.constants and follow the directions therein before doing any runs with FASTLINK.


back to fastlink