Goto Chapter: Top 1 2 3 4 5 6 7 8 9 Bib Ind
Top of Book Next Chapter

# SCSCP

## Symbolic Computation Software Composability Protocol

Version 1.2.0

30 March 2010

Alexander Konovalov
Email: alexk at mcs dot st-andrews dot ac dot uk
Homepage: http://www.cs.st-andrews.ac.uk/~alexk/
Address:
School of Computer Science
University of St Andrews
Jack Cole Building, North Haugh,
St Andrews, Fife, KY16 9SX, Scotland

Steve Linton
Email: sal at cs dot st-andrews dot ac dot uk
Homepage: http://www.cs.st-andrews.ac.uk/~sal/
Address:
School of Computer Science
University of St Andrews
Jack Cole Building, North Haugh,
St Andrews, Fife, KY16 9SX, Scotland

### Abstract

The GAP package SCSCP implements the Symbolic Computation Software Composability protocol (http://www.symbolic-computation.org/scscp) for the computational algebra system GAP.

### Copyright

© 2007-2010 by Alexander Konovalov and Steve Linton

SCSCP is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. For details, see the FSF's own site http://www.gnu.org/licenses/gpl.html.

If you obtained SCSCP, we would be grateful for a short notification sent to one of the authors.

If you publish a result which was partially obtained with the usage of SCSCP, please cite it in the following form:

A. Konovalov and S. Linton. SCSCP --- Symbolic Computation Software Composability Protocol, Version 1.2; 2010 (http://www.cs.st-andrews.ac.uk/~alexk/scscp.htm).

### Acknowledgements

The project 026133 "SCIEnce - Symbolic Computation Infrastructure for Europe" (http://www.symbolic-computation.org/) is supported by the EU FP6 Programme.

### Colophon

Versions history:

- Version 0.1 - first half of 2007;

- Version 0.2 - December 2007;

- Version 0.3 - May 2008;

- Version 0.4 - August 2008;

- Version 1.0 - March 2009;

- Version 1.1 - May 2009;

- Version 1.2 - March 2010.

### Contents

1 Preface
2 Installation
2.1 Installation and system requirements
2.2 Configuration files
3 Using streams
3.1 Input-output TCP streams
3.1-1 IsInputOutputTCPStream
3.1-2 IsInputOutputTCPStreamRep
3.1-3 InputOutputTCPStream
3.1-4 InputOutputTCPStream
3.2 Example of client-server communication via input-output TCP streams
4 Message exchange by SCSCP
4.1 Communication with the SCSCP server
4.1-1 StartSCSCPsession
4.1-2 OMPutProcedureCall
4.1-3 SCSCPwait
4.1-4 OMGetObjectWithAttributes
4.2 Communication with the SCSCP client
4.2-1 OMPutProcedureCompleted
4.2-2 OMPutProcedureTerminated
4.3 Example: SCSCP session
5 Running SCSCP server
5.1 Installation of SCSCP procedures
5.1-1 InstallSCSCPprocedure
5.1-2 OMsymRecord
5.2 Starting SCSCP server
5.2-1 RunSCSCPserver
5.3 Procedures to get information about the SCSCP server
5.3-1 GetServiceDescription
5.3-2 GetAllowedHeads
5.3-3 IsAllowedHead
5.3-4 GetTransientCD
5.3-5 GetSignature
6 Client's functionality
6.1 Sending request and getting result
6.1-1 IsProcess
6.1-2 NewProcess
6.1-3 CompleteProcess
6.1-4 EvaluateBySCSCP
6.1-5 TerminateProcess
6.2 Remote objects
6.2-1 StoreAsRemoteObjectPersistently
6.2-2 IsRemoteObject
6.2-3 RemoteObjectsFamily
6.2-4 RetrieveRemoteObject
6.2-5 UnbindRemoteObject
7 Examples of SCSCP usage
7.1 Providing services with the SCSCP package
7.2 Identifying groups of order 512
8 Parallel computing with SCSCP
8.1 Managing multiple requests
8.1-1 SynchronizeProcesses
8.1-2 FirstProcess
8.1-3 SCSCPservers
8.1-4 ParQuickWithSCSCP
8.2 MasterWorker skeleton
8.2-1 ParListWithSCSCP
8.2-2 SCSCPreset
8.2-3 SCSCPLogTracesToGlobal
8.3 Example: parallelising Karatsuba multiplication for polynomials
9 Service functions
9.1 Tools for making documentation
9.1-1 SCSCPBuildManual
9.1-2 SCSCPBuildManualHTML
9.2 Other commands
9.2-1 PingSCSCPservice
9.2-2 PingStatistic
9.2-3 InfoSCSCP
9.2-4 InfoMasterWorker
9.2-5 DateISO8601
9.2-6 CurrentTimestamp
9.2-7 Hostname
9.2-8 MemoryUsageByGAPinKbytes
9.2-9 LastReceivedCallID
9.2-10 IO_PickleToString
9.2-11 IO_UnpickleFromString
Top of Book Next Chapter
Goto Chapter: Top 1 2 3 4 5 6 7 8 9 Bib Ind

generated by GAPDoc2HTML