PS3 e Linux: aiutoooooooo


Usare una Play Station 3 per installarci Linux è uno strazio senza fine. Soprattuto perché per lavorarci davvero servono degli strumenti di sviluppo che IBM mette a disposizione solo per RedHat Enterprise e Fedora, il che già è un limite. Perché non mettere tali strumenti a disposizione di ogni distribuzione? Ma la beffa non finisce qui. La Play Station 3 non permette di usare tutta la memoria e non vi fa accedere all’hardware. Va tutto in emulazione e per poter sfruttare il potente processore Cell di IBM dovete programmare in Assembler quasi… Beh, se si scrivessero applicazioni direttamente in assembler tale applicazione andrebbe molto più veloce anche se si usasse un AMD 64 o un Core Duo Intel e non necessariamente il processore Cell di IBM. Inoltre per fare una qualsivoglia operazione su Linux in PS3 che ha un hardware emulato ci vogliono ore e ore. Installare Fedora è un’avventura. La documentazione è poca e scarseggia. Io e un mio collega ci siamo messi e abbiamo scritto un breve howto per installare Fedora 7 su PS3. Come vi dicevo, dovendo usare gli strumenti di IBM siamo stati obbligati a usare questa distribuzione.

Sì, obblicati, avete capito bene. A mio avviso è una distriuzione che almeno per PPC64 su Cell fa schifo. Un server grafico che va in crash appena mandate qualche applicazione in più in esecuzione e che ha un pessimo gestore di pacchetti. Se lanciate yum per aggiornare la Fedora su PS3 potete anche andare a dormire e tornare dopo 24 ore. Probabilmente l’aggiornamente dovebbe essere appena andato. È lento come la morte e mette l’intero sistema sotto uno sforzo immane. Inoltre molto spesso capita che i depositi degli RPM di Fedora siano aggiornati mentre gli sviluppatori bevono birra in grandi quantità. Sì perché si incasina di brutto con i pacchetti che dovrebbe installare e quelli che ha già di suo installati. Il tutto in emulazione e quindi vi posso garantire che spesso vi vien voglia di prendere la PS3 e farla volare dal banco di lavoro direttamente sul pavimento. Usare altre distro sarebbe molto meglio, ma ci si complica una vita già complicata per adattarre gli RPM di IBM…
La cosa bella è che Sony vende questo oggetto per 599 EUR, roba da poco insomma. Ora addirittura 399 EUR con 20 GByte in meno di disco rigido e hanno anche rimosso i lettori di smart card. E beh, sì 20 GByte di disco rigido costano 200 EUR, ma che scherzate cavolo. Un mio amico ha comprato un disco da 500 GByte a un po’ più di 100 EUR, forse dovrei scrivere alla Sony e consigliargli lo stesso negozio di materiale per PC. Stessa Sony che abbraccia il famoso DRM che restringe i vostri diritti. Hanno avuto la faccia di vendere CD audio che non si potevano ascoltare ovunque, che avevano dentro delle tracce per il maledetto Windows che addirittura installavano un’applicazione che spiava i vostri dati. Beh, si la Sony non sa più in che modo fare soldi. Almeno in Italia, in Korea invece la vendono con il disco da 80 GByte e quasi sicuramente per un prezzo inferiore a quanto la vendono qui.
Alla fine, siccome ci lavoriamo, non per diretta volontà, infatti a saperlo prima nei dettagli cosa mi aspettava mi sarei dedicato volentieri ad altro, abbiamo scritto un Howto per installare gli IBM SDK 3.0.1 su PS3 per Fedora 7 insieme all’installazione della distro stessa. Magari su PC la stessa distro è fantastica, ma personalmente amo e uso Slackware o FreeBSD. Al limite Gentoo o Debian, ma non certamente Fedora Core.
Appena riesco a capire in che formato posso rendere disponibile questo howto lo pubblico.

6 thoughts on “PS3 e Linux: aiutoooooooo

  1. Ciao,

    ti offendi se indico qualche lieve imprecisione presente nell’articolo?

    L’hardware della PS3 visto da linux è “virtualizzato” (anche questo termine non e’ il massimo della precisione in questo caso), non emulato. Ok, tu dirai: “è _praticamente_ la stessa cosa vista la lentezza…” beh, forse è così, ma per la precisione: l’hypervisor ha il compito di _decidere_ a quale hardware farti accedere e a quale no, e non di _emulare_ via software componenti orginariamente hardware, come nel senso consueto del termine.

    Poi dici che per sfruttare la potenza di PS3 bisogna “programmare in Assmbler quasi… ” e “Beh, se si scrivessero applicazioni direttamente in assembler tale applicazione andrebbe molto più veloce anche se si usasse un AMD 64 o un Core Duo Intel e non necessariamente il processore Cell di IBM”, beh, qui forse perdi di vista la differenza fra l’architettura Cell e quelle consuete di AMD e Intel, e soprattutto non cosideri il _perché_ Sony abbia permesso di mettere linux su PS3.

    Mi spiego un po’ meglio, Cell ha dei processori vettoriali ausiliari (SPE) che le altre piattaforme menzionate non hanno (per accedervi si usa libspe2, etc…), e Linux per PS3 ha in fondo lo scopo di spingere gente a provare _nuovi_ schemi di computazione in parallelo su Cell (su una macchina a costo _relativamente_ basso).

    Se la P3 liscia è in giochino per tutti, la PS3 con linux è un giochino per programmatori (aggiungerei _esperti_) o scienziati, perché programmare le SPE non è proprio banale.

    Sto studiando Cell per la tesi, quindi forse tornerò a visitare questo blog per altre amichevoli, e mi auguro utili, piccole innocue bacchettate😛

    Ciao ciao, Antonio.

  2. Io non sarei così categorico. Ho installato sulla PS3 la Yellow Dog Linux, che è una derivata storica della Fedora Core (i repository si appoggiano alla Core5) e devo dire che conoscendone i limiti, si gestisce bene. Prima di tutto l’emulazione riguarda solo la parte video (non si ha accesso alla strepitosa potenza della GPU della PS3), mentre il kernel vede il Processore Cell in modo diretto e lo utilizza come dualcore. Vedrebbe anche le velocissime sette (di cui 6 disponibili credo) PSU, programmabili indipendentemente, però per quelle occorre il SDK IBM di cui parli (magari qualcuno scrivesse delle ottimizzazioni su patch per il kernel che le sfruttino….!). Il grosso limite è la RAM, che credo che sia limitata a 192MB per linux. Tutto sommato occorre dare atto alla Sony di aver comunque concesso di utilizzare un sistema non proprietario sul suo hardware, che permette di usare la PS3 in modi non convenzionali (vedi La PS3 per i buchi neri) e utili.

    Buon lavoro con la PS3, facci sapere!

  3. La Yellow Dog è stata usata all’inizio del progetto è andava davvero molto male. Molto lenta. Fedora rispetto alla Yellow Dog (che ora è a pagamento) è molto meglio. So perfettamente dell’architettura del Cell. Ci stiamo sbattendo la testa da maggio scorso😉 E abbiamo provato tutte le Fedora: 5, 6 e 7, … saremmo tentati anche di provare la 8 che pare abbia supporto migliorato per PS3, ma non osiamo😀

  4. @Antonio

    Conosco l’architettura di Cell. Hai provato a leggere le montagne di pagine dell’IBM SDK Cell 3.0.1? Si programma quasi in assembler. Magari guadagni molto ma ci devi proprio lavorare molto e a basso livello. So perfettamente che l’hardware a cui non si ha accesso diretto è la scheda video (e non solo). Intendevo non emulazione, ma il fatto che appunto Sony decide se puoi o meno accedere all’hardware e a quale. Al processore è ovvio che ci accedi. Torvalds ha inserito anche il supporto al Cell direttamente nel codice sorgente del kernel😉 . Il problema è che appunto “programmare le SPE non è proprio banale.” per nulla. So perfettamente delle librerie libspe2 e del fatto che ci sono 1 PPU e 6 SPU e che sulla prima ci puoi fare girare un SO, mentre le altre 6 sono specializzate in elaborazioni.
    Al Linux Day a Roma Parlando con un ragazzo che lavora sul Cell di IBM con 2 GByte di RAM e ha detto che le prestazioni davvero buone e infatti in quel caso non c’è virtualizzazione. Usa tutto l’hardware direttamente. Sappiamo perfettamente tutte queste cose solo che non si voleva fare un articolo troppo lungo e tecnico😉 Ci stiamo sanguinando sopra da maggio😉
    Per curiosità. Con chi fai la tesi?

  5. Si kslacky, me lo immaginavo che tu sapessi molto di più di quello che hai scritto, le cose in piu’ nel mio commento erano destinate soprattutto ai tuoi lettori.
    Nell’articolo mancava giusto qualche _allusione_ che mi rendesse sicuro del fatto che il taglio informale dell’articolo fosse voluto🙂
    Io sono nuovo nuovo delle programmazione con Cell, sto leggendo documenti sull’architettura, manuali e articoli scientifici, ho eseguito giusto “Hello World” per SPE e ancora nessun “prodotto” mio🙂

    Tesi in Informatica all’universita’ Federico II di Napoli (non so se il prof. vuole pubblicità per ora ometto il suo nome).

    Ciao ciao, Antonio.

Lascia un commento

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...