
$99 Parallella supercomputing boards start shipping - WestCoastJustin
http://www.parityportal.com/2013/07/24/99-parallella-supercomputing-boards-start-shipping/
======
_delirium
Discussion from ~3 months ago, prior to shipping, has some interesting
comments:
[https://news.ycombinator.com/item?id=5557985](https://news.ycombinator.com/item?id=5557985)

------
yk
The site did run fine for me without java script, after I deleted the semi
transparent div that told me that the site needs java script. ( Apparently to
automatically hide the div.)

Seriously, I sometimes wonder if there would be a market for a lightweight
text display app, the server would then serve some kind of markdown text,
perhaps with a few hints like headlines and the client would render the text
based on the local screen setting and the hints of the text structure in the
markdown. That would be great for short articles.

~~~
wladimir
That sounds pretty useful. Arguably, that's what text-based browsers such as
lynx and links already do but in another way. Those are still what I use when
I want to read some article without distractions, ads, and funny layout and
images.

------
Everlag
It's taken quite awhile but I'm looking forward to getting the board. I hope
there are decently mature go binding because that would be incredible to have
a goroutine coprocessor.

If not, I've been wanting to take a stab at opencl.

~~~
gamegoblin
Both MPI and OpenMP are fairly mature and easy to use with C or C++ (I haven't
used them with FORTRAN, but I believe you can, with a few slight alterations).

------
oomkiller
Anyone know how this thing compares to a cheap $~150 video card that supports
CUDA/OpenCL?

~~~
dragontamer
OpenCL / CUDA is more mature and ready... and a far more understood
architecture. I bet that any GPU will crush this thing in pure compute power.

Where Parallella's advantage comes in, is its grid architecture. Whereas a
typical GPU today is "very very wide" (IE: an AMD 7750 does 512 operations at
the same time), the Epiphany is a "grid", and each node of the grid can be
doing different things.

I'm going to greatly simplify things down for you with this example (so
experts out there... don't shoot me :-p). A GPU can execute 1 program, but
that one program can do 512 operations at once.

On the other hand, the Epiphany-IV truly can run 64-different programs at
once.... all taking different paths and doing their own things.

Epiphany-III and Epiphany IV perform "if statements" more or less how you'd
expect a computer would do it. Which is the important bit... if-statements
don't really slow down your program.

In contrast, the typical wide "wavefront GPU architecture"... the "if
statement" basically halves the speed of your GPU. The GPU has to execute one
"half" of the branch, and then later, it comes back to execute the other
"half". (Its only "really" executing one program, but doing 512 of them at
once. See what I mean?)

GPUs are a "wide" architecture... but Epiphany is the first "grid-based"
supercomputer for ~$99. GPUs are very mature technologies... Epiphany is still
in initial research (as far as the consumer market is concerned)

EDIT: In reality, a modern GPU supports maybe 4 to 8 different wavefronts (8
for the more expensive GPUs, maybe only 4 for the cheaper ~$99 GPUs). But each
of those wavefronts can do hundreds of computations at once.

~~~
hosh
Yeah, it's too bad that the Green Array technology
([http://www.greenarraychips.com/](http://www.greenarraychips.com/)) never put
out a similar product for $99.

~~~
aidenn0
I would hazard a guess that the epiphany cores are more heavyweight than the
GA cores. The GA cores are _extremely_ lightweight, to the point where it is
expected that even the simplest tasks will involve several of them
cooperating. On the other hand the GA chips are optimized for low power and
have significantly more tightly integrated IO than the epiphany.

~~~
hosh
The GA cores are meant to be linked together. According to the docs and
videos, you use the special IDE to define blocks or grids of GA cores and have
them working in tandem.

The GA's biggest weakness is probably the lack of software and libraries. On
the other hand, you could essentially create software-configurable DSPs, or
program the entire array to act as a single, traditional CPU core.

------
kephra
The Parallella projects sounds interesting, but the parityportal is shit.

The site shows a big banner "Please enable javascript to view this site." that
is overlaying the content, but disabling CSS also helps - an other example of
js-failure.

[http://en.wikipedia.org/wiki/Adapteva#Parallella_project](http://en.wikipedia.org/wiki/Adapteva#Parallella_project)
would be a better canidate for HN. Its readable, and also shows some critical
points.

~~~
Amadou
I agree the wiki page is more informative.

I'm just posting to say that I peeled off that retardo javascript-required
page blocker with the "element hiding helper" add-on to the ad-block plus add-
on. I dunno what I was missing without javascript but the site seemed to work
pretty well without it.

[https://adblockplus.org/en/elemhidehelper](https://adblockplus.org/en/elemhidehelper)

------
iandanforth
Basic questions:

1\. Can I run python on linux on this

2\. Would the multiprocessing module work like it does on x86 4 core chips?

~~~
andrewcooke
to correct for my earlier mistake... the board consists of an arm processor
(like a phone) and an array of smaller processors. linux and python will run
on the arm, but not on the smaller processors.

multiprocessing works by running a separate copy of python on each core and
then managing data transfer. so it won't help you here, because you would need
python to be running on each of the smaller processors in the array.

instead you need to target the array processors in a dedicated language.
people are mentioning opencl (which is c-like, but has a very strong emphasis
on all processors doing the same task); the wikipedia page describes a gcc-
based compiler.

at a stretch, perhaps you could use the gcc-based c compiler to compile python
and get multiprocessing working that way. but i imagine that it would be a lot
of work and an inefficient way to use the system (the small cores are not very
powerful, so you need to keep overhead down, so python is a bad idea).

if someone can get erlang working across the array then that might be your
best bet. erlang is a little bit like python and multiprocessing (not terribly
similar, but close enough for many things to make sense).

~~~
iandanforth
Thanks, appreciated!

------
makmanalp
Anyone know how these would be used? I.e. is each processor exposed in the OS
level, or is it more API-like as in CUDA / OpenCL?

~~~
hosh
According to the docs, it would be more like CUDA / OpenCL. I think there are
some OpenCL bindings for it.

------
zoba
The article is a bit confusing, since, as far as I can tell, the "first model
to be shipped" only has 16 (+2 ARM) cores. The 64 (+2) core board is not
shipping/reservable yet.

Congrats to the people at Parallella though! I've been excitedly checking
their site/twitter about every other day.

~~~
nine_k
$99 is the price of exactly the 16-core node they started to ship.

64-core node is going to cost you quite a bit more (the pledge for it on
Kickstrater was $199).

------
throwit1979
I'll believe it when I see it. These guys have been pushing off and pushing
off, I've all but written off my "contribution".

The fact that they're preselling the 16 core boards before we have even
received ours, and that they come with storage( the contributors have to
supply our own sd cards ) at the same price point, I'm left with an unpleasant
taste.

~~~
graue
Where do you see that the pre-orders come with SD cards? The order page at

[http://shop.adapteva.com/collections/parallella/products/par...](http://shop.adapteva.com/collections/parallella/products/parallella-16)

says:

"Unless otherwise specified, the Parallella-16 board ships bare without a 5V
power supply or SD card. (These must be purchased separately.)"

------
gtt
Is there a way to use ability to branch to speed up raytracing? Can I create
with Parallella raytracer in some way more efficient than gpu based ones?

------
BhavdeepSethi
Just when I went ahead and bought a BeagleBone Black. Would like to see how
these boards fare against BBB/RPi.

------
hcarvalhoalves
What are the interesting applications for these boards, considering the slow
interfaces (USB and Ethernet)?

~~~
ChuckMcM
Convolving images on the fly would be one, the Zynq architecture allows for
some pretty high bandwidth throughput. Xilinx keeps pushing it as a solution
to 'smart' cameras (things that know what they are looking at by doing
analysis on the background)

------
synchronise
Would any currently released web server software be able to take advantage of
this board?

~~~
ddedden
Technically you could just run a standard LAMP stack since it's running an
ARM-compatible version of Ubuntu. It just won't take advantage of the multiple
processors.

~~~
synchronise
And web server that would take advantage of the multiple cores?

~~~
felixgallo
it will apparently ship with erlang or be erlang-capable, so it's entirely
possible that you could put the high performance cowboy web framework on the
device.

------
shank8
This makes me wish I didn't already have 3 RPis

------
andyl
Yeah - look forward to getting mine.

Does anyone know if Erlang / Elixir will run on Parallella and take advantage
of all the cores?

~~~
jzelinskie
According to this[1] Erlang has been run on machines with similar number of
cores. This[2] looks like the most interesting work done with Erlang on
Parellella so far. I haven't look at Parallella for a long time, but IIRC the
hardware architecture very much suites the process model in Erlang.

[1] [http://kth.diva-
portal.org/smash/get/diva2:392243/FULLTEXT01](http://kth.diva-
portal.org/smash/get/diva2:392243/FULLTEXT01)

[2] [http://www.parallella.org/2013/05/25/explorations-in-
erlang-...](http://www.parallella.org/2013/05/25/explorations-in-erlang-with-
the-parallela-a-prelude/)

------
rorrr2
I want to see GoLang running on that thing.

~~~
Ecio78
[http://forums.parallella.org/viewtopic.php?f=27&t=138](http://forums.parallella.org/viewtopic.php?f=27&t=138)
and
[https://groups.google.com/forum/?fromgroups=#!searchin/golan...](https://groups.google.com/forum/?fromgroups=#!searchin/golang-
nuts/epiphany/golang-nuts/k0M4d1Za_Tk/ajWsVYrK2n0J)

