In NESL it is possible to evaluate any top-level expression on a remote machine. The remote machine can be another workstation, a Cray Y-MP, a CM-2 or CM-5, a Maspar, or one of the supported MPI machines. To run expressions on a remote machine, configurations first need to be set up using defconfig (see Section 5.5). Assuming that the configuration files have already been set up, this section describes the top-level commands used for remote execution.
show configs;
This displays a list of currently-available machine configurations.
Note that the same physical machine might be in multiple
configurations, depending on the turnaround time requested for a job,
how many processors are used, etc.
<Nesl> show configs; The current machine configurations are: LOCAL CRAY CM5 To use one type: set config <config>;
set config config;
This causes all future NESL expressions (until the next set
config command) to be evaluated on the machine configuration
config. (In order to use NESL graphics, you must first give the
remote machine access to your X server by executing the command
xhost + remote_machine in a local shell.)
<Nesl> set config cray; [...] <Nesl> 2 + 3; Compiling..Writing..Loading on PSC Cray C90 (mario).. Running.. Exiting..Reading.. it = 5 : int
show config;
This displays parameters of the current machine configuration. At a
minimum, it displays the name of the configuration, the default memory
size, the path to the VCODE interpreter ,
the path to the X11 graphics interface program xneslplot
(see Section 5.5), and the
directory used by the NESL system for temporary files. Remote
configurations may also include the name of the remote machine, the
rsh command used to start up the VCODE interpreter, and the
name of the script used to submit batch jobs.
<Nesl> show config; Configuration Name: "cray" interp_file: "/afs/cs.uvwx.edu/user/joeuser/nesl/bin/vinterp.cray" memory_size: 3600000 temp_dir: "/afs/cs.uvwx.edu/user/joeuser/tmp/" plot_file: "/afs/cs.uvwx.edu/user/joeuser/nesl/bin/xneslplot.cray" rsh_command: "rsh -l joeuser mario.psc.edu" machine_name: "CRAY C90 at PSC" background_command: "background-cray"
set memory_size n;
This sets the amount of memory that the VCODE interpreter
allocates for data storage in the current
configuration. In the standard configurations, it defaults to 1048576
() 64-bit words. See Section 2.4 for what
happens when you run out of memory.