[CMake] CMake on Linux + Playstation 3 (IBM Cell BE processor)

Christian Convey christian.convey at gmail.com
Wed Jan 2 20:54:33 EST 2008


On Jan 2, 2008 8:54 PM, Christian Convey <christian.convey at gmail.com> wrote:
> On Jan 2, 2008 10:23 AM, Alexander Neundorf <a.neundorf-work at gmx.net> wrote:
> [snip]
> > Ok. So you have one build tree, and everything's built in this tree, both for
> > the PPC and for the SPEs, and you run make once and get everything ?
>
> Yes.  You typically have one directory for you SPE source code, and
> one directory for your PPC source code.
>
> You set a few Make variables to tell IBM's Make include file which
> code is PPC vs. SPE.  It more or less does the rest.
>
> > Is this the typical setup or do you typically have a "project" for the PPC
> > stuff and a separate project/separate developers for the SPE stuff ?
>
> I'm not sure what the common practices is in this regard.  My guess is
> that you have a single project for the whole deal most often.
>
> On the other hand, there's nothing stopping people from developing SPE
> and/or PPC code libraries, that are sometimes made part of larger
> projects.  So in those cases I suppose there would be subprojects.
>
> >
> > This is indeed cross compiling, or at least building software with one
> > language for different CPUs.
>
> Correct.  Although cross-compiling is possible, my guess is that most
> application developers just invoke a PPC/SPE native compiler that's
> hosted on their Cell system.  For example, in my case, I edit my
> source files on my Ubuntu box, but they're shared via NFS.  I SSH into
> my Playstation and tell it to compile those files.
>
> I suspect that people developing kernels for the Cell use a
> cross-compiler, but I can't really say for sure.
>
> > Is it actually possible to create executables for the SPEs (if yes, can you
> > just run them from the shell ?) or do you create some kind of modules/libs
> > which are then uploaded to the SPEs by the PPC ?
>
> There are a few ways to do it.  You can link SPE object code (they
> call it an SPE program, but I think it's probably just a bunch of
> subroutines) into the binary image of a PPC program.  The Cell SDK
> knows how to hunt down the SPE code within the PPC program's binary
> image, transfer it over to an SPE, and start it running.
>
> It may be possible to have a native SPE program with no PPC code in it
> at all, but I kind of doubt it.
>


More information about the CMake mailing list