[Beowulf] A cluster of Arduinos

Vincent Diepeveen diep at xs4all.nl
Wed Jan 11 09:43:17 PST 2012


On Jan 11, 2012, at 5:58 PM, Prentice Bisbal wrote:

> On 01/11/2012 11:18 AM, Lux, Jim (337C) wrote:
>>
>> For educational purposes..
>>
>> Has anyone done something where they implement some sort of message
>> passing API on a network of Arduinos.  Since they cost only $20 each,
>> and have a fairly facile development environment, it seems you could
>> put together a simple demonstration of parallel processing and  
>> various
>> message passing things.
>>
>> For instance, you could introduce errors in the message links and do
>> experiments with Byzantine General type algorithms, or with multiple
>> parallel routes, etc.
>>
>> I've not actually tried hooking up multiple arduinos through a USB  
>> hub
>> to one PC, but if that works, it gives you a nice "head node, debug
>> console" sort of interface.
>>
>> Smaller, lighter, cheaper than lashing together MiniITX mobos or
>> building a Wal-Mart Cluster.
>>
>
> I started tinkering with Arduinos a couple of months ago. Got lots of
> related goodies for Christmas, so I've been looking like a mad  
> scientist
> building arduino things lately. I'm still a beginner arduino  
> hacker, but
> I'd be game for giving this a try,  if anyone else wants to give  
> this a go.
>
> The Arduino Due, which is overdue in the marketplace, will have a
> Cortex-M3 ARM processor.

Completely superior chip that Cortex-M3.

Though i couldn't program much for it so far - difficult to get  
contract jobs for.
Can do fast multiplication 32 x 32 bits.

You can even implement RSA very fast on that chip.
Runs at 70Mhz or so?

Usually writing assembler for such CPU's is more efficient by the way  
than using
a compiler. Compilers are not so efficient, to say polite, for  
embedded cpu's.

Writing assembler for such cpu's is pretty straightforward, whereas  
in HPC things are far more complicated
because of vectorization.

AVX is the latest there. Speaking of AVX, is there already lots of  
HPC support for AVX?

I see that after years of wrestling the George Woltman released some  
prime number
code (GWNUM), of course as always: in beta for the remainder of this  
century, which uses AVX.

Claims are that it's a tad faster than the existing SIMD codes. I saw  
claims of even above 20% faster,
which is really a lot at that level of engineering; usually you work  
6 months for 0.5% speedup.

If you improve algorithm, you still lose it from this code, as your C/ 
C++  code will be default a factor 10 slower if not more.

I remember how i found a clever caching trick in 2006 for a Numeric  
Theoretic Transform (that's a FFT but then in integers, so without
the rounding errors that the floating point FFT's give), yet after  
some hard work there my C code still was factor 8 slower than Woltman's
SIMD assembler.

>
> --
> Prentice
>
>
> _______________________________________________
> Beowulf mailing list, Beowulf at beowulf.org sponsored by Penguin  
> Computing
> To change your subscription (digest mode or unsubscribe) visit  
> http://www.beowulf.org/mailman/listinfo/beowulf




More information about the Beowulf mailing list