[K42-discussion] Possible benefit of running K42 on Cell CBE ...

Elvis John Dowson elvis_dowson at hotmail.com
Wed Dec 21 12:08:09 EST 2005


Hi,

        The initial idea for taking a look at K42 for the Cell, was to see
if can be used to support dynamic management via addition and removal of
Cell Computational Nodes from a Cell Cluster, and to see if data can be
shared and access via the individual SPUs, using a shared memory model. I
posted a query regarding support for this type of operation, in the
hardware, on the cell forum and they said that the Element Interconnect Bus
on the Cell processor can be configured for operation in a coherent mode,
but would require the additional support of a coherent memory switch.
http://www-128.ibm.com/developerworks/forums/dw_thread.jsp?forum=739
<http://www-128.ibm.com/developerworks/forums/dw_thread.jsp?forum=739&thread
=102913&cat=46> &thread=102913&cat=46 

 

Maybe, from a K42 perspective, there may not be much to do SPU specific and
the host PPU could co-ordinate all I/O communications, but if an SPU were to
reference a DMA memory operation (queue/request a read or write) to the
local storage of another SPU, in a computational grid, I guess some level of
O/S support should exist. 

 

The initial work on UML, I plan to do is to target specific SPU code
generation from specific UML Model Elements that have been specifically
tagged and stereotype for the SPU. I have already tested the UML automatic
code generation framework for the PPU and it works. I'm just waiting for
simulator network support for the Cell Simulator so that the PPU application
can be debugged at the model level, for example, 

*	real-time animation of the UML sequence diagram, 
*	to show external message communication between active objects in the
system, 
*	the state of the threads running in the system, 
*	dynamic UML state-charts that show the current state of the
individual objects in the system, 
*	plus inspection of object states at the UML model level from within
the model browser and inspect the current state of the object attributes at
the UML model level, at run-time

 

Note that GDB is not required for debugging and animating the UML model; you
are effectively debugging and animating the model at the design level. If
you find an execution trace that is not right or an object struck at a
particular state, you it would be possible to try to launch a GDB session
and debug the code at the code / assembly level, concurrently with the UML
model, being debugged at the design level. I have been working in this
manner for all the projects that I have worked on, in my previous companies
(British Aerospace and Snecma Aerospace) for both real-time asynchronous
(UML) and real-time synchronous (SCADE) model driven development environment
for real-time embedded avionics safety critical systems and desktop
scientific engineering application development.

 

Right now I'm attempting to define a CBE UML Profile, for the Cell
Processor, the outline steps can be found here in this post :
http://www-128.ibm.com/developerworks/forums/dw_thread.jsp?forum=739
<http://www-128.ibm.com/developerworks/forums/dw_thread.jsp?forum=739&thread
=102743&cat=46> &thread=102743&cat=46 

 

At some stage, after I finish this work, I would like to investigate the K42
O/S to see if can be used to support the development of a dynamically
reconfigurable and scalable computational cluster, identify the specific
portions that would need to be adapted and estimate the effort for this
adaptation. 

 

Having a UML model representation of the K42 sources would have helped,
first in being able to understand the O/S, and second, in being able to
completely generate the code from the UML models and debug it at the model
level. The same techniques that I have outlined in the dW post about the CBE
Profile can be adapted to work for creating specific C/C++ emitted code
templates using an automatic code-generator that will parse a K42 specific
UML Meta-Model. This meta-model, when used along with the C/C++ ( or
virtually any programming language, including assembly ) code generation
rules, can be applied to a UML model created and code automatically
generated for that UML model. 

 

Best regards,

 

Elvis Dowson

 

 

  _____  

From: Orran Y Krieger [mailto:okrieg at us.ibm.com] 
Sent: Wednesday, December 21, 2005 12:12 AM
To: Elvis John Dowson
Cc: 'Andrew Baumann'; 'Jimi Xenidis'; k42-discussion at ozlabs.org
Subject: RE: [K42-discussion] What is the correct version of gcc, glibc,
binutils, linux and linuxthreads required for a successful K42 build ?

 





>> I don't really understand why the primary thing you are focused on, i.e.,
having a way to generate SPU code from UML really relates to K42.  I don't
object, mind you, for people to use K42, I love it, but I hate to add pure
overhead to your primary goal? 
  



-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://ozlabs.org/pipermail/k42-discussion/attachments/20051221/7ecba99a/attachment.htm 


More information about the K42-discussion mailing list