Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Parallella: Supercomputer for Embedded Systems

Ray Hightower
December 09, 2015

Parallella: Supercomputer for Embedded Systems

Parallella is about the size of a Raspberry Pi, but with 18 cores instead of two. This presentation will show how to get up and running with Parallella, and why developers might care about supercomputing. Why does parallel computing matter? How can developers use parallel computing to deliver better results for clients? Let’s explore these questions together.

Details: http://rayhightower.com/blog/2015/12/09/chicago-acm-and-parallella/

Curious about the Internet of Things? Check out http://WindyCityThings.com.

Ray Hightower

December 09, 2015
Tweet

More Decks by Ray Hightower

Other Decks in Technology

Transcript

  1. Moore’s Law: 2x every 18 months Moore’s Law 1993 -

    2013 http://www.washingtonpost.com/blogs/innovations/wp/2015/04/14/10-images-that-explain-the- incredible-power-of-moores-law/ https://www.parallella.org/board/
  2. If one ox could not do the job they did

    not try to grow a bigger ox, but used two oxen. When we need greater computer power, the answer is not to get a bigger computer, but to build systems of computers and operate them in parallel. -Grace Hopper
  3. 1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <math.h> 4

    #include <time.h> 5 6 #define DEFAULT_MAX_TESTS 16000000 7 8 inline int isprime(unsigned long number) 9 { 10 unsigned long i; 11 unsigned long s = sqrt(number); 12 for(i=3;i<=s;i+=2) 13 { 14 if(number % i == 0) 15 return 0; 16 } 17 return 1; 18 } /* Copyright (c) Adapteva, contributed by M. Thompson with modifications by T. Malthouse. */
  4. 8 inline int isprime(unsigned long number) 9 { 10 unsigned

    long i; 11 unsigned long s = sqrt(number); 12 for(i=3;i<=s;i+=2) 13 { 14 if(number % i == 0) 15 return 0; 16 } 17 return 1; 18 } /* Copyright (c) Adapteva, contributed by M. Thompson with modifications by T. Malthouse. */
  5. 27 #include <e-hal.h> 28 29 // Default max number of

    prime tests per core 30 // Used if a limit it not provided in argv[1] 31 #define DEFAULT_MAX_TESTS 500000 32 33 int main(int argc, char *argv[]) 34 { 35 unsigned row, col, coreid, i, j; 36 e_platform_t platform; 37 e_epiphany_t dev; 38 /* Copyright (c) Adapteva, contributed by M. Thompson with modifications by T. Malthouse.*/
  6. Summary: Finding Primes 0" 50" 100" 150" 200" 250" Parallel

    Parallella Serial Mac Serial Parallella 18.6 sec 14.4 sec 237.1 sec ($2,000.00 Apple MacBook Pro) ($150.00 Parallella)