<br><br><div class="gmail_quote">On Sat, Mar 1, 2008 at 3:00 AM, Roger Larsson <<a href="mailto:roger.larsson@e-gatan.se">roger.larsson@e-gatan.se</a>> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
On fredag 29 februari 2008, jm wrote:<br>
> Toby Thain wrote:<br>
> >>  * Organise a list of project ideas that we'd like students to work<br>
> >>    on.<br>
> ><br>
> > One perennial topic is porting Erlang to embedded/tiny systems, and<br>
> > how small the runtime can feasibly be.<br>
><br>
> Should I mention PS3 and the Cell.<br>
<br>
I have a PS3 myself (with Linux installed). I have been thinking about<br>
how much a PS3 resembles a telephone exchange... And we all know what<br>
language to use for programming those!<br>
<br>
You have the SPEs (and Altivec) connected via an exchange and you would<br>
like to make the best use of the resources.<br>
<br>
Avoid moving executions from one SPE to another (keep the code in<br>
SPE memory) - but on the same time the work might require being split<br>
to several SPEs to meet deadlines (real time games).<br>
[IBM has a real time ray tracer that dynamically how big part of the<br>
 image is computed by what SPE]<br>
<br>
Move the data to the right SPE, but there are rules about how to do this<br>
most efficient using the built in exchange. If data can remain on a SPE<br>
keep it there.<br>
<br>
An outline:<br>
* building the work scheduler in Erlang<br>
* data, binary arrays (required by the SPEs and PowerPC Altivec)<br>
* executables, in form of binary objects (SPE, Altivec, or PowerPC executable)<br>
* work descriptors, connecting executables with data<br>
* building simulation in Erlang, create work descriptors depending on events.<br>
<br>
Wouldn't that make an interesting summer project!<br>
<br>
/RogerL</blockquote></div><br>Depending on the direction of the projects I offer myself as a mentor (need co-mentor(s) since I will be off-line for some time during the summer).<br><br>I have worked with Erlang/OTP for almost 2 years now - the last year full time on a project which creates a telephone exchange where we have dealt with encoding and decoding of Q.SIG (PSS1) plus the Q.SIG protocol stack itself as well as an interface to layer 2 with a C-port.<br>
<br>If those experiences can be used contact me.<br><br>Cheers,<br>Torben<br><br>