Power consumption undoubtedly is one of the most important factors we look at today. Whether it's your smartphone, tablet, laptop, or machine in the datacenter, the goal is the same. You want to get the best possible performance for the lowest power cost.
In previous articles, such as Kernel or ISA, we saw how complicated interacting with Epiphany chip could be. A whole bunch of registers, memory banks, and funky addressing scheme. It's a lot to know, for someone who just wants to run a "hello world" program... If only we had some C library that would hide all this complex logic from us?!
Making use of hardware is much harder than owning it, especially when we speak about uniquely designed SBCs such as Parallella. Why? Because problems that can be solved best with parallel computing are hard...
In previous posts, we were introduced to the hardware and made it operational with the kernel module. Soooo... (drum rolls) it's time to write and run a program on the Epiphany chip! But how can one do it? What compiler do I use? What "language" does the Epiphany chip understands? Is it C, C++, assembly, binary, or what?