Now that we have covered a basic Epiphany program, we will go on to a more complex example that executes in Parallel. This program can be found in the epiphany-examples/apps/dotproduct/ directory on your Parallella board. Before we start discussing the code, let’s discuss the problem.
Calculating Dot Product in Parallel The dot product between two arrays is the sum of the products. Consider the arrays $A= [1,2,3]$ and $B=[4,5,6]$. The dot product of these two arrays is $1 \times 4 + 2 \times 5 + 3 \times 6 = 4 + 10 + 18 = 32$.
Read More…
In this post, I’m going to walk you through Epiphany’s hello world program, which can be found in the epiphany-examples/apps/hello-world directory. I strongly encourage you to see my previous post about the Epiphany architecture to assist you with your understanding of the material in this post. I will assume you understand Epiphany’s basic memory model and architecture. This post was adapted from my slides and lecture notes that I used to teach my students during the Epiphany unit we had this past semester.
Read More…
In this post, I’m going to give you an overview of the Epiphany co-processor architecture, including the motivations for a co-processors and hardware accelerators, what sets co-processors apart, and then the details of the Epiphany co-processor.
While you may think that this post is not as important as the future posts that will walk you through how to run programs on the Epiphany chip, I urge you not to skip it.
Read More…
Before we get into the nitty gritty of programming the Epiphany architecture, we are going to do a quick demo and benchmarking study to illustrate how to use it. For the purposes of this demo (and cluster demo that will be posted later), we will be concentrating on the Epiphany implementation of John the Ripper, which was contributed by Katja Malvoni, and is accessible under the parallella-examples/john subdirectory on your Parallella board, or through the parallela-examples Git repository.
Read More…
This page serves to collect all the posts related to my teaching materials for the Epiphany programming module. This material was originally delivered to my students as part of my parallel computing course which debuted in Spring 2015. Please visit the links below to access my lecture materials on the subject:
Running our first Epiphany Program
Overview of Epiphany Architecture
Hello Epiphany
The Dot Product Program
The Dot Product Program Revisited
Read More…