Intel® oneAPI Threading Building Blocks
Ask questions and share information about adding parallelism to your applications when using this threading library.

Intel TBB and playstation 3 (ps3)

adwaitrj
Beginner
486 Views
I want to run some performance tests for parallel programs. And I have a ps3 to my disposal. So I was planning to install an OS on ps3 (yellowdog/ubuntu suggestions welcome) and run the Intel TBB code. If anyone has tried this on ps3 before, can you tell me what additional support software I need to install to get this running?
0 Kudos
10 Replies
RafSchietekat
Valued Contributor III
486 Views

(Duplicate, go to http://software.intel.com/en-us/forums/showthread.php?t=63941

instead. Well, actually that one is the duplicate, but never mind...)

(Added after #2) I give up...
0 Kudos
pvonkaenel
New Contributor III
486 Views
Quoting - adwaitrj
I want to run some performance tests for parallel programs. And I have a ps3 to my disposal. So I was planning to install an OS on ps3 (yellowdog/ubuntu suggestions welcome) and run the Intel TBB code. If anyone has tried this on ps3 before, can you tell me what additional support software I need to install to get this running?

Yellowdog seems like a good distribution for PS3 since its main focus is PPC and there are special instructions available from IBM about installing it. Also get the SDK from IBM developerworks instead of using what is built into Yellowdog. They seem to have some of theSDK in the base distro, but not everything.

Peter
0 Kudos
abh_spark
Beginner
486 Views
I am new to TBB and have a doubt !!!
Wheather power pc version of TBB will be able to schedule threads on spe cores of cell BE?
Beacuse normaly on cell BE both ppe and spe's are programmed seperatelly.

I think a normal ppc version of tbb won't be aware of 7 spe cores.
0 Kudos
Chris_M__Thomasson
New Contributor I
486 Views
Quoting - abh_spark
I am new to TBB and have a doubt !!!
Wheather power pc version of TBB will be able to schedule threads on spe cores of cell BE?
Beacuse normaly on cell BE both ppe and spe's are programmed seperatelly.

I think a normal ppc version of tbb won't be aware of 7 spe cores.


I have created some experimental hard-core in-house programs for the Cell:


http://groups.google.com/group/comp.arch/browse_frm/thread/4c97441d6704d8a1

http://groups.google.com/group/comp.arch/browse_frm/thread/93b1619857dfce03


AFAICT, the Intel TBB will only distribute work across the main onboard PPCs. Therefore, you are correct. I am not sure that Intel TBB is compatible with such a distributed system...
0 Kudos
Chris_M__Thomasson
New Contributor I
486 Views


I have created some experimental hard-core in-house programs for the Cell:


http://groups.google.com/group/comp.arch/browse_frm/thread/4c97441d6704d8a1

http://groups.google.com/group/comp.arch/browse_frm/thread/93b1619857dfce03


AFAICT, the Intel TBB will only distribute work across the main onboard PPCs. Therefore, you are correct. I am not sure that Intel TBB is compatible with such a distributed system...


I refer to the PPC as onboard because I consider them to be clustered together on the same master node. The SPUs are remote independent processing units with 100% private memory. IMVHO, they are off on an island and communications between them should be VERY short and sweet.
0 Kudos
pvonkaenel
New Contributor III
486 Views
Quoting - abh_spark
I am new to TBB and have a doubt !!!
Wheather power pc version of TBB will be able to schedule threads on spe cores of cell BE?
Beacuse normaly on cell BE both ppe and spe's are programmed seperatelly.

I think a normal ppc version of tbb won't be aware of 7 spe cores.

If you're seriously considering working on the Cell and want some level of portable code, you might want to considering buying IBM's compiler for it. I think I read somewhere that the latest version was going to support OpenMP to distribute threads to SPUs. However, this is a commercial compiler that needs to be purchased.
0 Kudos
abh_spark
Beginner
486 Views
Thanks for your comments!!

Now I get it , since Cell BE is not strictly SMP or Shared Memory , so no TBB on it.
I was looking to port existing TBB + C++ code and benchmark it on PS3.

But now i am wondering , whether is it feasible/possible to port TBB on Cell BE??
Since there is some support for SPE threads in YDL kernel.


0 Kudos
Chris_M__Thomasson
New Contributor I
486 Views
Quoting - pvonkaenel

If you're seriously considering working on the Cell and want some level of portable code, you might want to considering buying IBM's compiler for it. I think I read somewhere that the latest version was going to support OpenMP to distribute threads to SPUs. However, this is a commercial compiler that needs to be purchased.



Well, you can take a look at:

http://www.ibm.com/developerworks/power/cell/downloads.html

http://www.alphaworks.ibm.com/tech/cellsystemsim

http://cell.scei.co.jp/e_download.html


AFAICT, you can get the developer SDK package free of charge from IBM, however, it not intended to be used for the development of commercial software.


http://www.snsys.com/products/SN-DBS.asp

This compiler is free for registered PlayStation 3 developers.



http://www.bsc.es/plantillaH.php?cat_id=461

You can download free GCC tool chain for the PCC and the SPU architectures.
0 Kudos
Chris_M__Thomasson
New Contributor I
486 Views
Quoting - abh_spark
I am new to TBB and have a doubt !!!
Wheather power pc version of TBB will be able to schedule threads on spe cores of cell BE?
Beacuse normaly on cell BE both ppe and spe's are programmed seperatelly.

I think a normal ppc version of tbb won't be aware of 7 spe cores.

Don'y you mean 8 SPE's? ;^)


Anyway, I don't quite see how the TBB could efficiently distribute work to the SPE's.

I guess TBB could have a separately compiled "SPE worker thread" program and spawn said program on all the SPE's. Then use the DMA channel instructions (e.g., rdch, wrch, rchcnt, ect...), atomic DMA channel instructions (e.g., getllar, putllc, ect...) and memory barrier instructions (e.g., sync, dsync, ect...) to funnel work between the PPE's and the SPE'. However, it will not be as efficient as a well throughout DMA communication plan that is specific to a given application. There are lots of interesting techniques to consider (e.g., use double-buffering or multi-buffering?)


http://www.redbooks.ibm.com/redbooks/pdfs/sg247575.pdf


http://publib.boulder.ibm.com/infocenter/ieduasst/stgv1r0/topic/com.ibm.iea.cbe/cbe/1.0/Programming/L3T2H1_39_DevelopingCodeForCellDMA.pdf

0 Kudos
pvonkaenel
New Contributor III
486 Views



Well, you can take a look at:

http://www.ibm.com/developerworks/power/cell/downloads.html

http://www.alphaworks.ibm.com/tech/cellsystemsim

http://cell.scei.co.jp/e_download.html


AFAICT, you can get the developer SDK package free of charge from IBM, however, it not intended to be used for the development of commercial software.


http://www.snsys.com/products/SN-DBS.asp

This compiler is free for registered PlayStation 3 developers.



http://www.bsc.es/plantillaH.php?cat_id=461

You can download free GCC tool chain for the PCC and the SPU architectures.

The GCC compiler for Cell is free as is the SDK, but IBM's xlc compiler is not. If I remember correctly OMP for Cell is only available in the xlc compiler.

Peter
0 Kudos
Reply