Goto Chapter: Top 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 Ind
[Top of Book] [Contents] [Previous Chapter] [Next Chapter]

34 Parallel Computation - Core Functions

### 34 Parallel Computation - Core Functions

`ChildProcess()` `ChildProcess("computer.ac.wales")` `ChildProcess(["-m", "100000M", "-T"])` `ChildProcess("computer.ac.wales", ["-m", "100000M", "-T"])`

This starts a GAP session as a child process and returns a stream to the child process. If no argument is given then the child process is created on the local machine; otherwise the argument should be: 1) the address of a remote computer for which ssh has been configured to require no password from the user; (2) or a list of GAP command line options; (3) or the address of a computer followed by a list of command line options.

(To configure ssh so that the user can login without a password prompt from "thishost" to "remotehost" either consult "man ssh" or
- open a shell on thishost
- cd .ssh
- ls
-> if id_dsa, id_rsa etc exists, skip the next two steps!
- ssh-keygen -t rsa
- ssh-keygen -t dsa
- scp *.pub user@remotehost:~/
- ssh remotehost -l user
- cat id_rsa.pub >> .ssh/authorized_keys
- cat id_dsa.pub >> .ssh/authorized_keys
- rm id_rsa.pub id_dsa.pub
- exit
You should now be able to connect from "thishost" to "remotehost" without a password prompt.)

`ChildClose(s)` This closes the stream s to a child GAP process.
`ChildCommand("cmd;",s)` This runs a GAP command "cmd;" on the child process accessed by the stream s. Here "cmd;" is a string representing the command.
`NextAvailableChild(L)` Inputs a list L of child processes and returns a child in L which is ready for computation (as soon as such a child is available).
`IsAvailableChild(s)` Inputs a child process s and returns true if s is currently available for computations, and false otherwise.
`ChildPut(A,"B",s)` This copies a GAP object A on the parent process to an object B on the child process s. (The copying relies on the function PrintObj(A); )
`ChildGet("A",s)` This functions copies a GAP object A on the child process s and returns it on the parent process. (The copying relies on the function PrintObj(A); )
`HAPPrintTo("file",R)` Inputs a name "file" of a new text file and a HAP object R. It writes the object R to "file". Currently this is only implemented for R equal to a resolution.
`HAPRead("file",R)` Inputs a name "file" containing a HAP object R and returns the object. Currently this is only implemented for R equal to a resolution.

[Top of Book] [Contents] [Previous Chapter] [Next Chapter]
Goto Chapter: Top 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 Ind

generated by GAPDoc2HTML