Editing Talk:Synergistic Processing Unit (SPU)

Jump to navigation Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.

Latest revision Your text
Line 15: Line 15:
need quotation / proper sources / documentation
need quotation / proper sources / documentation


== Cell SPE Task Library ==
quoted intro:<br />
&nbsp;&nbsp;"
''This project contains a thread-safe digital signal processing and computational microtask execution library for the IBM Cell Broadband Engine. It works in Linux and the IBM Cell SDK 2.1 on the Playstation3 and Cell Blade. The project consists not really of a library but of source code and header files that you can include in your Cell program. The license is GNU LGPL.''


''The SPE program is started once on 1..N SPEs, where it will stay running and waiting for tasks that can be sent to it from your PPU program. The running SPE program(s) can be sent different such computing tasks. Tasks can be single or a chained queue of tasks, for example of different types. The SPE program uses faster mailbox communication, and latencies from task start to end on the PPU side are quite low. There is an additional framework for PPU code that makes accessing the computing SPEs and their tasks threadsafe.''
==local store dumping of SPE ==
 
''The set of computational tasks (commands) can be easily extended with your own funcs. The code allows more control over processing, DMAs and buffering than the IBM ALF framework.''
 
''Another point for this project is to collect a bag of computational tricks and fast DSP funcs, in the form of cut&paste source code snippets that you can can copy into your own SPE programs. These code pieces include very fast sine and cosine calculation, complex multiply accumlate, and others.''
&nbsp;&nbsp;"<br />
 
Location: http://cellspe-tasklib.sourceforge.net/


==local store dumping of SPE ==
<pre>
  LSPWN v0.1
  LSPWN v0.1
  &nbsp;
  &nbsp;
Line 53: Line 39:
  - gui in v0.2 release
  - gui in v0.2 release
  - support for isolation mode if there is demand
  - support for isolation mode if there is demand
</pre>
  &nbsp;
 
  '''greetz:''' gitbrew, mathieulh, geohot, sonic iso, #ps3secret, uf6667, zerkman
=shufb mask decoding=
and too many others to mention.
For your convenience:
&nbsp;
  In [60]: str_shufb(0xC0D0E0F0C0D0E0F8080808080808080)
&nbsp;
  Out[60]: '12, 13, 14, 15, 12, 13, 14, 15, z, z, z, z, z, z, z, z'
'''addendum:''' contact me, adrianc on efnet or adriancps3@gmail.com,
This would work well with IDA Python...
if you wish to donate and help purchase a reference tool for the community.
[http://pastie.org/2774108 shufb decoder (Python)][http://paste.ubuntu.com/24647636/ Mirror]
this has many benefits such as new keys, debugging for all devs, syscon exploits and many more.
 
your support will not be forgotten.
= Useful slides =
&nbsp;
* https://pt.slideshare.net/naughty_dog/spu-optimizationspart-1
-adrianc
Please note that all contributions to PS3 Developer wiki are considered to be released under the GNU Free Documentation License 1.2 (see PS3 Developer wiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To protect the wiki against automated edit spam, we kindly ask you to solve the following hCaptcha:

Cancel Editing help (opens in new window)