Skip to content

A master service (to combine with matrixslave) for dispatching to the slaves multiple operations of row * column (of a matrix)

License

Notifications You must be signed in to change notification settings

AltiMario/matrixserver

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

matrixserver ver 0.1

It's a master service (to combine with matrixslave) for dispatching to the slaves multiple operations of row * column (of a matrix)

Rational

Distribute the computational load of matrix multiplication, across online services.

Matrixserver is a simple CLI application (designed to be a master), able to send HTTP requests of calculation (row * column) to n instances of the slave in parallel.

  • The matrices are splitted in chuncks of 'rows and columns'
  • every chunk is managed (in parallel) from a single thread
  • the threads call the slave HTTP API (one or many potentially) able to manage multiple instances of request and wait for the result
  • every single elaboration is aggregated (in the matrix result) at the moment of the arrive
  • partial results are displayed until the last thread finished the elaboration (or forced to quit after a defined number of seconds)
  • the file final-matrix.edn will contain the elaboration

Technical Requirements

  • Java 7+ / Clojure 1.8 / Leiningen 2.x

Usage

  • Edit the file resources/matrices.edn to define the matrices to elaborate

  • Edit the file config/config.edn to set where the slave is

  • To run the app

    $ java -jar matrixserver.jar

  • To run the test

    $ lein midje

About

A master service (to combine with matrixslave) for dispatching to the slaves multiple operations of row * column (of a matrix)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published