In this course, you'll learn how to program the Parallella-16 board, gain a basic understanding of the advantages and disadvantages of parallel programming, and take a look at a common parallel programming model used by Google for data analytics. You'll start by learning how to connect to the Parallella via the command line and SSH, before running some of the example programs that come preinstalled. We'll show you how the examples work and why they are well-suited for the Parallella, and then start writing our own programs in Python and C. All the code snippets, commands, and guides used in the lectures are available, making it easy to debug your programs or poke through the code to see how it works. The course will probably take about three hours (plus time to burn the SD card,) and by the end you'll be able to write simple programs on the Parallella and understand the tradeoffs that come with parallel programming.
How to connect to the Parallella so that you can start using it
How to run the "Hello World" and "Eprime" example programs available on the Parallella
How to download Epython and write programs for the Parallella
How to create example programs in C for the Parallella
How to determine if your program should be parallelized
Ray Hightower is a software developer, tech company founder, organizer of ChicagoRuby, and creator of WindyCityRails. He is currently exploring parallelism and the Internet of Things.
Hightower founded WisdomGroup in 1994 and sold the company to 8th Light in 2016.
Ally Huske is an intern at WisdomGroup, a Chicago-based software company. During her internship she has focused on parallelism and artificial life. She is currently working on an artificial life program in Python simulating simple evolution. Ally is also an undergraduate student at MIT interested in studying biology and computer science.
Thomas Malthouse is a physics major at Reed College in Portland, Oregon; an intern at WisdomGroup; and a C developer with a focus on scientific computing. He's currently working on an n-body gravitational simulator that predicts the trajectories of spacecraft, and investigating the feasibility of using Golang for scientific computing.