PCN Abstract Machine Emulator Authors: Steve Tuecke and Ian Foster Argonne National Laboratory Please see the DISCLAIMER file in the top level directory of the distribution regarding the provisions under which this software is distributed. Running on iPSC/860 To run the system, log into the iPSC/860 front end (SRM). At this point, you can still only run it from the SRM, even though there is no host PCN node on the SRM -- the SRM takes care of loading PCN on the nodes, etc. Then you can run the pcn.ipsc860 executable in one of two ways: directly, or by way of the 'runpcn' program in the directory. To run pcn.ipsc860 directly, you would do the following: % getcube -t 4 % load pcn.ipsc860 -k 700; waitcube % killcube % relcube Unfortunately, there are some problems associated with running it this way. If you try to kill the emulator with ^C, only the waitcube will be killed. So output from the emulator will keep coming. The killcube will still work. But if the emulator is spewing lots of output, you have to type the killcube while this output is flying at you. A better way of running pcn.ipsc860 is to use either the 'runpcn' or the 'pcn' program included in this directory. If 'runpcn' and 'pcn' are not yet installed, log into the SRM, change to the top level PCN source directory, and type: ./install_srm Altenatively, to only install 'runpcn' and 'pcn', log into the SRM, change to this directory, and type: make pcn runpcn make install Assuming there is a 'pcn.ipsc860' executable in the current directory, the above four commands can be replaced by: % runpcn -t 4 -k 700 Alternatively, if you want to do the getcube/relcube yourself (perhaps so that you don't have to give up your nodes, or if you are going to run pcn multiple time), you can do: % getcube -t 4 % runpcn -k 700 ... % relcube You can get the syntax for runpcn by running 'runpcn -h'. It is: runpcn [-t <cubetype>] [<pcn_executable>] [<pcn_args> ...] In other words, the (optional) cubetype must come first. If this argument is left off, it is assumed that a getcube was already done. Otherwise, runpcn does the appropriate getcube and relcube. After the cubetype, the iPSC/860 node executable is (optionally) specified. If this argument is left off, the default name of 'pcn.ipsc860' is used from the current directory, if the file exists. Otherwise, a default node executable (i.e. /usr/local/pcn/bin/pcn.ipsc860) is used. Finally, the pcn emulator arguments are (optionally) given. Alternatively, you can use the 'pcn' program in this directory to run the node executable. The 'pcn' uses 'pcn.ipsc860' in the current directory if it exists, otherwise '/usr/lcoao/pcn/bin/pcn.ipsc860'. It just passes all of its arguments through to the node executable. So to run it, you would do something like: % getcube -t 4 % pcn -k 700 % relcube 'pcncc.ipsc860' can be used just like all the other versions of pcncc. To create a version of the emulator for the iPSC/860 that has file.o linked in and has the name 'mypcn', log into the cross compilation machine and run: % pgcc -c file.c -node % pcncc.ipsc860 file.o -o mypcn Then to run it: % runpcn -t 4 mypcn or: % runpcn -t 4 mypcn -k 700 or: % getcube -t 4 % runpcn mypcn % relcube or whatever. By default, pcncc.ipsc860 produces a node executable called 'pcn.ipsc860'.
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Marcel Waldvogel and Netfuture.ch.