Beruflich Dokumente
Kultur Dokumente
Adin Zuhri
Iman Dankovi
Nadin Hasani
Sarajevo
November, 2016
Abstract
Nowdays all the performance goals are to be achived with parallelisms instead of
dealing with frequency, what was case before 2004. Many companies have
attempted to create platform that will achieve better performance using parallelism
but not all of them were successful in that try. Adapteva is company that launched
their product, the Parallella board at September 2012.Their main goal was to
provide platform for parallel computing, and also make it accessible and open-
sourced.By creating the Parallella board,credit-size,high performance and also
quite energy efficient computer it was to be expected that the main result-
resarching and sharing knowledge about parallel computing, the good results are
to be expected. In this work are explained basic components of the Parallella and
how they work together when the board is configured. It is discussed about
possibilities of using the Parallella board, and there are also specified parallel
programming choices with advices for programmers while working on the
Parallella board.
CONTENTS
1 INTRODUCTION ...............................................................................................5
1. 1 Problem Statement ...........................................................................................5
1. 2 Objectives ........................................................................................................6
1. 3 Thesis Organisation .........................................................................................6
4 CONCLUSION ....................................................................................................18
REFERENCES ......................................................................................................18
LIST OF FIGURES
INTRODUCTION
The release of the Parallella board provides a cheap and energy efficient
computer that requires minimal cofiguration and it is completly open-source.
Discover from which parts parallella is conifugured and what are the
principels in which parallellas funcionalities are based of
Investigate parallel programing choice and advices while working with the
Parallella board
Chapter 2 explains what is the Parallell board, what were the objectives of
its creation and specifications of the Parallella bord.
Chapter 3 discusses about programming choices and advices for
programmers while using the Parallella board
In Chapter 4 are given the conlcusions and the research is summarised
CHAPTER
2. 1. Intoduction to Epiphany
1
Source: https://www. youtube. com/watch?v=vV9fcqUUe1Y
2. 2 What is parallella?
2. 3. Specifications
As the Parallella board the we will use later is the Parallella board with 16
core Epiphany co-processor, technical specifications of this board are given
below [5].
2
https://www. kickstarter. com/projects/adapteva/parallella-a-supercomputer-for-
everyone
Figure 2:Parallella board architecture (picture taken from [3])
Figure 2 shows that by the dual-core ARM processors the operating system
and interfaces are run with. Other thing that is also running in the ARM
processors are the programs.
In order to set up and run programs on the individual cores it can use the
Epiphany libraries provided with the SDK to [2, 3, 5, 6].
The Parallella board has four expansions connectors placed on the opposite
edges of the bottom side of the board shown in Figure 3.
Connector Functions
PEC_POWER Power and control signal expansion
connector
PEC_FPGA Zynq programmable logic expansion
connector
PEC_NORTH Epiphany north link expansion
connector
PEC_SOUTH Epiphany south link expansion
connector
Robust mating of expansion cards and the Parallella board using matching
BTH-030-01-FDA connectors is allowed becouse of four symmetrically
connectors placed in the bottom side of the Parallella board.
It is possible to connect a single full length credit card sized expansion cards
or two half-length expansion cards, as it shown in the figure below:
Figure 4:Daughter Card Configurations(picture taken from [6])
The Epiphany processor on this board is the Epiphany III (E16G301), the
feature runtime of which is given below [2]:
There are three connections to the router to communicates with the rest of
the chip: red is the read request network, the blue connector is the on-chip write
network, green is the off-chip write network.
Boot into arm runing Linux and FPU logic is configured to hook up the arm
directly inside the memory map of the ARM to coprocesor device that is next to it.
Coprocesor doesnt run Linux 16 core but it does have 16 CPU-us. It runs maths
and operations.
One of the key goals of creating Parallela was to make computing more
accessible by creating an platform which is open-soruce, open documentations and
standards and above that all, affordable.
It is a common thing that platfomrs are proprietaried by the couple of big
universities or companies which causes closing into one architecuture.
The Parallella board is open-sourced. Only thing that is not open source is
Epiphany chip, but that layer is as thin as possible that the most pepople shoud be
able to get away of thinking in a high level apraction and move across platforms.
So, primary aim of Adapteva team while creating the Parallella board was Parallel
programming research. It includes exploring new things like new parallel
lanugages and algorithams.
Secondly, itention to make the Parallella board teaching tool in hope that
universties are going to share their knowledge about parallel computing gained by
working with the Parallella board.
And at the and, it can be used as a fun toy for geeks and hackers. [1;3;]
CHAPTER
3. 1 Programming advice
3. 2 Amdhals Law
Speedup=1/(P/N+S)
P=parallel fraction(1-S)
N=number of processors
S=serial fraction
The amount of serial code should be as less as possible. But even in case that
there is zero serial code, data must be exchanged in the system. It is also
important how data is decomposed, and also locality where data is stored. It also
depends which algorithm is used, and in that case how much dependency among
data is present. [1]
very robust
lot of manual managment, it can be viewed as asembly version of parallel
programing
key lies in fact that programmer has to manage his own memory-create
buffers, own command ques
very flexible and scalable but it scales by the programmer
OPEN MP
(fork join model)
MPI
quite robust
there are a lot of processes in the system, usually one process per server
there is client node that will launch the job and tone of server nodes that
will take care of the procesing
every process has ID
there is usally sofisticated runtime sceduler that will track these ID-s and
were he things are
Key lies in interprocess communication- comunication between proceses is
explicit by send-recive call[1;6]
CHAPTER
CONCLUSION
Objective od projects such as the Parallella board is to make people share their
knowledge. It is obvious that future of programming lies in parallel computing.
Although closing in one architecture with which one is familiar will maybe be a
better solution in that period, nothing can last forever. Without desire for
advancement and to explore new things, technology would never have progressed
to a level where it is now. That exacly was aim of the Parallella board development
team-to make platform that is accessible in order to give others a chance to
progress.
REFERENCES