3

When you code a distributed algorithm, do you use any library to model abstract things like processor, register, message, link, etc.? Is there any library that does that?

I'm thinking about e.g. self-stabilizing algorithms, like self-stabilizing minimum spanning-tree algorithms.

Jon Seigel
  • 12,251
  • 8
  • 58
  • 92

3 Answers3

1

There's a DVM system that can be used for implementing different distributed algorithms. It works on top of MPI.

However it is more for matrix-oriented scientific algorithms where distribution is done in terms of data blocks. I had a brief experience using it - it's much more convenient than direct usage of MPI and allows for much more readable and maintainable code.

sharptooth
  • 167,383
  • 100
  • 513
  • 979
0

I think you might find the distributed Apache projects to be helpful:

  • Apache Hadoop provides distributed filesystems and processing
  • Apache Zookeeper is a coordination service, which might be right up your alley. It can be used as a public-subscribe mechanism.

There's also the Java Parallel Processing Framework which abstracts entire machines and their composition, allowing you to focus on the processing.

Depends on your needs.

The Alchemist
  • 3,397
  • 21
  • 22
0

You may want to check out OpenMP.

Not Sure
  • 5,873
  • 3
  • 23
  • 29