description | A Guile (Scheme) library containing RPC routines for parallel computation on MPI systems. |
owner | git |
last change | Mon, 30 May 2022 20:12:43 +0000 (13:12 -0700) |
URL | https://artulab.com/git/guile-orca |
Orca, a Guile (https://www.gnu.org/s/guile/) library that aims to provide Remote Procedure Call (RPC) capabilities using Message Passing Interface (MPI).
Code to gather computation results from all processes:
(use-modules (orca))
(define (process-id-message) (format #f "process ~a" (rpc-worker-process-id)))
(rpc-start)
(format #t "I'm master process. Received ~s ~%" (rpc-make '(process-id-message)))
(rpc-finalize)
Command to run program using 4 processes:
mpirun -n 4 ./rpc-print-process-ids.scm
Output:
I'm master process. Received ("process 0" "process 1" "process 2" "process 3")
See examples
directory for more examples.
This project is licensed under the GNU Lesser General Public License - see the COPYING.LESSER file for details.
Please send comments on orca to ahmet@artulab.com
Copyright (C) 2022 Ahmet Artu Yildirim
2022-05-30 | Ahmet Artu... | Use html for the code block in README master | commit | commitdiff | tree | snapshot |
2021-10-08 | Ahmet Artu... | Add debug statements in rpc-stream-map-sum example | commit | commitdiff | tree | snapshot |
2020-12-05 | Ahmet Artu... | Add unit tests for rpc-apply-bcast | commit | commitdiff | tree | snapshot |
2020-11-21 | Ahmet Artu... | Commit initial version | commit | commitdiff | tree | snapshot |
3 years ago | v0.1.0 | version 0.1.0 | tag | | commit | shortlog | log |
2 years ago | master | shortlog | log | tree |