954,500 Members — Technology Publication meets Social Media
Username:
Password:
Lost login information?
Have something to say? Contribute New Article Reply to this Article

Multi-threading Vs. Distributed Computing

Which is better?

We're designing a new autonomous robot for the competition we attend during the summer and this is one of our topics for design. I want to do a dual-processor, multi-core computer to run the software. Some others want to do distributed computing (between two laptops). Am I wrong in thinking the performance of multi-threading far outweighs that of distributed computing?

Duki
Nearly a Posting Virtuoso
1,475 posts since Jun 2006
Reputation Points: 817
Solved Threads: 32
 

What if one of the laptops was on your desk, and the other laptop was on your robot?

Something your "dual core" processor could never do.

Salem
Posting Sage
Team Colleague
11,531 posts since Dec 2005
Reputation Points: 5,862
Solved Threads: 953
 

for (;;)
{
Too many factors pro et contra. It depends on control processes architecture.
As usually, multi-core CPUs can't run concurent heavy-floating-point-calcs processes or threads effectively. Distributed computing has its own syhch overheads. Number of data transmission channels...
}

ArkM
Postaholic
2,001 posts since Jul 2008
Reputation Points: 1,234
Solved Threads: 348
 

What if one of the laptops was on your desk, and the other laptop was on your robot?

Something your "dual core" processor could never do.

That would be nice, but both computers have to be directly mounted to the robot. That does bring up a good point though; one that was discussed yesterday. Another pro to having dual computers would be a fail-over system.

Duki
Nearly a Posting Virtuoso
1,475 posts since Jun 2006
Reputation Points: 817
Solved Threads: 32
 

How are you proposing to divide up the work between 2 laptops (if that's the way you go)?

One for each side, so each has one eye, arm, and one side of wheels?
Or one for all input sensors, and another for all movement?
Or maybe something else, say either could do any job based on current work load?

A single multi-core CPU would probably mean you wouldn't have to worry about say load balancing. And inter-process communication is fast and easy.

I'm not sure there's a "killer" argument which favours one or the other.
What about other non-computational requirements, like battery life or weight?

Salem
Posting Sage
Team Colleague
11,531 posts since Dec 2005
Reputation Points: 5,862
Solved Threads: 953
 

This article has been dead for over three months

Post: Markdown Syntax: Formatting Help
You