System Requirements

  • OS: We support either of
    • Microsoft Windows 2000 or later + Cygwin
    • FreeBSD
    • Linux
  • Common Lisp implementation: We support either of
  • To execute Tascell programs in distributed memory environments, you need either of
  • The "indent" utility (a C program formatter) is required. You can install this using a package system (e.g., yum, apt-get) on most Linux distribution.

Installation of the SC Language System

The Tascell Compiler requires the SC language system. So install it first following the instruction in doc/README.1st in the archive.

Executing Tascell Programs in Shared Memory Environments

Sample programs of Tascell are located in
sc/src/sample/tcell/*.tcell
in the archive.

After the installation of SC, you can compile these Tascell programs by
% make xxx-gcc    # xxx is a basename of .tcell files.

Then, execute the generated execution program.
% ./fib-gcc -n 8 -i "1 44"   
Here, 8 is the nubmer of workers and "1 44" is the input for the fib program. See the comment in each .tcell source for the format of the input.


Executing Tascell Programs in Distributed Memory Environments

To execute Tascell programs in distributed memory environments, you need to execute a Tascell Server first and then execute worker program (e.g., fib-gcc) connecting to the server process.

You can execute a Tascell Server by
% alisp    # or "sbcl"
> (load "LOAD.lsp")
> (ms :local-host "hhhh" :n-wait-children 4 :auto-initial-task "1 44")
   # hhhh is the hostname accessible from worker ndoes
Here, 4 is the number of worker nodes and "1 44" is the input for the worker program.

Then, execute the worker program on each worker node.
% ./fib-gcc -n 8 -s hhhh   
   # hhhh is the hostname of the server

The server uses the TCP/9865 connection for communications among the server and the workers. If you want to change the port number, specify the number by the :chidren-port keyword argument (server) and the -p command line argument (worker).