0

I have a project and the task of the project is implementing matrix multiplication in respective parallel distributed environment (at least on 2 computers). I want to solve my problem in JAVA. There is no problem with matrix multiplication, just don't know which technology to use for running it in parallel distributed environment. What do you suggest? Thanx :)

2
  • There are so many possible solutions, it hard to know where to start. Is this just an exercise or do you need the martix multiplication to be faster on 2 machines than one alone? Commented Dec 1, 2011 at 10:55
  • That's a bit too broad, you should look more into the details of your project (see en.wikipedia.org/wiki/Distributed_computing); if you only need a small scale solution, you can just create your own client and servers (it basically boils down to how you want to define your tasks). Commented Dec 1, 2011 at 11:00

3 Answers 3

1

I've worked with Hazelcast before. Very easy and straightforward. Just be careful with parallel processing. The job needs to be big enough with a small data footprint, else you're going to be tied down by network communication.

i.e. multiplying matrices may be faster on a sinlge processor; but a hard genetic algorithm works great as each cpu can be an island as a islandic ga implementation. Network communication will be limited to emigration strategies.

good luck!

Sign up to request clarification or add additional context in comments.

3 Comments

Thank you. What about java + mpi solution?
With Hazelcast, better if you can divide the data among servers and do local operations. It will be much easier than MPI.
Fuad, thank you for advice. I'll necessarily try Hazelcast ;)
1

Hadoop is one of most widely used distributed computing tool. Though your computing requirement is not very intensive, its a good good tool to explore.

Comments

0

The Akka actor library has excellent support for remote actors which transparently handle data serialization. If you can decompose your matrix multiplication to use actors, you can then later configure your actors to run in the distributed environment quite easily using Akka.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.