Just Starting Out - PS3

YDL running on the Sony Playstation 3

Moderator: billb

Just Starting Out - PS3

Postby chinabean » 04 Jul 2012, 04:22

Sorry if this is not the right section of the forum. Mods, please move it if necessary.

I am just now getting started with linux on PS3 and need some advise. I'm somewhat of a newb to linux, but I can perform simple tasks like installing packages and configure/make/make install.

So here's the deal: I have a PS3 with 3.55 CFW on it which I will probably be converting to the OtherOS++ CFW. Next I understand that I need to choose a distro of Linux for my install, and what I'm going to be using it for might affect that.

Basically what I am hoping to do is setting up the PS3 as a media encoding server. I am currently using a quad-core PC to run FFMPEG to encode various videos and audio files, but the number of videos I need to convert is out growing the PC. Anyway, I would like to run ffmpeg on the PS3 to convert the videos, as I was hoping to take advantage of the CELL cpu.

As far as I can tell, there has not been any optimized version of ffmpeg created for this purpose, but I thought I might give it a shot anyways.

Any suggestions as to which distro I should be using? and which version of the recommended distro would be best suited? I have read that I would need a PowerPC version, is that true? Does the kernel see each SPU similar to the way it would see a "core" in a multi-core PC? Any other advise you might offer is much appreciated!

Thanks in advance!
chinabean
ydl newbie
ydl newbie
 
Posts: 1
Joined: 04 Jul 2012, 04:20

Re: Just Starting Out - PS3

Postby ppietro » 04 Jul 2012, 23:51

chinabean wrote:Sorry if this is not the right section of the forum. Mods, please move it if necessary.


No - this is a fine place to ask. :D

chinabean wrote:Basically what I am hoping to do is setting up the PS3 as a media encoding server. I am currently using a quad-core PC to run FFMPEG to encode various videos and audio files, but the number of videos I need to convert is out growing the PC. Anyway, I would like to run ffmpeg on the PS3 to convert the videos, as I was hoping to take advantage of the CELL cpu.


er...um... yeah - ffmpeg isn't Cell optimized.....um...yeah....

chinabean wrote:As far as I can tell, there has not been any optimized version of ffmpeg created for this purpose, but I thought I might give it a shot anyways.


Um...er...yeah....you might find it's pretty slow in comparison to your quad core....

chinabean wrote:Any suggestions as to which distro I should be using? and which version of the recommended distro would be best suited? I have read that I would need a PowerPC version, is that true? Does the kernel see each SPU similar to the way it would see a "core" in a multi-core PC?


Yes - you'll need to run a PowerPC Linux. As for the rest of your questions, let me explain a little bit about the Cell and maybe that will help you make an informed decision.

So, the Cell processor has a central PowerPC processor - called the PPE (Power Processing Element) - and 7 satellite processors called SPEs (Synergistic Processing Elements). Six of these SPEs are available to PS3 Games/Linux with the 7th reserved for internal PS3 encryption/decryption/security. Unfortunately, the 6 SPEs are not binary compliant with the PPE - the SPEs do not use the PowerPC instruction set. What this means is that the Linux kernel only runs on the PowerPC PPE core, and doesn't natively take advantage of the 6 SPEs.

The PPE is a single core, hyper-threaded processor. Although it appears to the system as a dual-core, it's actually a single-core processor that can handle two simultaneous threads. In addition, since it was optimized for gaming, the PPU is an "in-order" processor. This is different from your quad core - which is an "out-of-order" processor. I won't go into specifics here, but an in-order processor is slower than an out-of-order processor. Basically, in-order processors stall waiting for certain instructions to execute, whereas out-of-order processors work around them and keep processing.

To place it in historical perspective, I believe the Pentium was the last major in-order processor.

To use the SPEs, programs must be specifically compiled to send SPE-compatible binary code to them. In addition, SPEs are not strictly Turing compliant, which means they are not true stand-alone processors. Instead, most applications use them for math acceleration. There are very few Linux programs that take advantage of them. Basically, there are three that I know about: a video scaling application, a version of MesaGL, and a custom version of Mplayer. There are other programs that use SPEs out there - but they're generally pretty custom.

In addition, Linux is blocked from using the nVidia RSX GPU by the hypervisor. This means that PS3 Linux video is unaccelerated, and uses the basic framebuffer display - which is controlled by the PPE CPU, slowing the system down further.

The PPE, like its bigger PowerPC brethren, does contain an AltiVec accelerator - and ffmpeg will take advantage of that. However - it's still pretty slow for encoding video. Frankly, IMHO, you're better off with your quad core.

As for distros, I'm partial to Red Hat derivatives, which rules Debian variants like Ubuntu out for me. That's why I'm such a huge fan of YDL - it's based on Red Hat Enterprise via the CentOS recompile. However - Enterprise Linuxes like CentOS are not everyone's cup of tea. Generally, they lag about 3 years behind current Linux distros. This makes them very stable, but not particularly cutting edge. If you're looking for stability, YDL is a good choice. However - if you need cutting edge, you might be better off with Ubuntu or OpenSUSE (if they're still doing PowerPC). I would also recommend Fedora, but I think they gave up on the PS3 and it won't install any longer.

Hope that helps.

Cheers,
Paul
User avatar
ppietro
Site Admin
Site Admin
 
Posts: 4965
Joined: 13 Sep 2007, 22:18


Return to Playstation 3

Who is online

Users browsing this forum: No registered users and 11 guests