CPU multicore sottoutilizzate, un possibile approccio

In tempi recenti il mercato dei processori ha spostato il campo della competizione dalla gara ai Ghz a quella della quantità di core presenti su ogni singolo die, dunque ci ritroviamo a poter acquistare CPU che presentano un elevato livello di complessità e altrettanto in termini di prestazioni.

Una cpu a quattro core, image courtesy Black Lawrence

Tale scelta è stata dettata principalmente dall’ormai prossimo raggiungimento del limite fisico dei processi di costruzione dei processori e per evitare che i nostri computer si debbano dotare di impianti di raffreddamento ad azoto liquido :D

A cosa mi servono tutti questi core?

Insane coding ci dà il LA per rilfettere su questo trend, soprattutto dal punto di vista di un utente domestico che utilizza il PC prevalentemente per la navigazione in internet, videoscrittura, visualizzazione ed encoding di filmati e magari qualche partita al proprio videogame preferito.

Senza addentrarci troppo in ambito strettamente tecnico, ci sono alcuni utilizzi che possono beneficiare della presenza di più core all’interno di una stessa CPU, per esempio la manipolazione  di contenuti multimediali o la compilazione di codice sorgente, e naturalmente la gestione di più processi attivi contemporaneamente, quest’ultima supportata dal sempre minor costo della memoria di sistema.

Tuttavia ci sono altre applicazioni che non traggono grandi benefici dalla presenza di core multipli, quindi se vi limitate alla scrittura di documenti o similari, dimenticavi incrementi sensazionali in confronto a cpu tradizionali.

La chiave di volta si chiama Multiseat

Ai giorni nostri non è più così inusuale trovare in casa più di un computer, ognuno dei quali dotati di un proprio case, scheda madre, processore, memorie, monitor, mouse e tastiera.

Ma allora perché non usare tale potenza inespressa fornitaci dalle moderne CPU al fine di creare una postazione multiseat e sfruttare al meglio tale potenziale ( e magari risparmiare pure qualcosa ) ?

Una postazione multiseat, image courtesy Wikipedia

L’idea è quella di rendere disponibile un unico computer a più utenti contemporaneamente, ognuno dotato delle proprie periferiche di input e di output, come se ognuno avesse la propria postazione non condivisa.

Ok, mi piace l’idea, e ora?

A livello hardware la realizzazione tecnica non è poi così complessa, oramai la maggior parte dei computer è dotato di innumerevoli porte per la connessione di periferiche, e non è più così strano trovare configurazioni multi-GPU. Anche se in alcuni casi sicuramente un po’ scomodo, con alcuni accorgimenti un approccio del genere permetterebbe di poter risparmiare qualche centinaio di euro, soprattutto in presenza di più di due utenze.

Tuttavia è a livello software dove le cose si complicano.

Su Linux tale approccio esiste da tempo, ma sarebbe interessante poter avere una distribuzione capace senza troppi sforzi di poter configurare una postazione del genere, o magari semplicemente qualche strumento da integrare a distribuzioni già esistenti, comodamente disponibili quale opzioni su GNOME o KDE, giusto per citare i due DE più diffusi.

In rete esistono diversi HOWTO per raggiungere lo scopo, anche se sul wiki di X.org se ne sconsiglia l’uso in favore di MDM, applicazione creata ad hoc.

Inoltre al momento credo proprio che ci sarebbero dei problemi nella gestione dei driver in tali condizioni di utilizzo, principalmente per quanto riguarda l’audio ( anche se i jack alla fine non mancano ) o periferiche di tipo diverso da quelle gestite da X.org.

Considerazioni

Certamente una soluzione di questo tipo sarebbe caldamente consigliata all’interno di biblioteche, aule studio ed uffici o in generale in quei locali in cui è richiesta una grande quantità di computer in uno spazio comune condiviso, magari formato da postazioni attigue.

Il risparmio in termini di hardware potrebbe essere consistente, oltre che nei succitati contesti, anche in quelli casalinghi ove fossero presenti più di due utilizzatori.

Le future tecnologie di comunicazione wireless tra periferiche e PC potrebbero dare una spinta in questa direzione, portando ad un migliore supporto al multiseat sui sistemi operativi general purpose.

In ogni caso farò un tentativo con gli strumenti a mia disposizione sul mio notebook, così da poter finalmente ottenere l’uso esclusivo del computer più potente in casa, che al momento è ad appannaggio di madre e sorella e relegato a servire pagine di giochini in flash -_-‘

Opinioni, idee e critiche sono ben accette.

P.s. Si ringrazia neon che mi ha fornito alcuni chiarimenti tecnici ;)

Ear Candy, si intravede il Compiz per l’audio

Immaginate la scena.

State ascoltando della buona musica con il vostro lettore multimediale preferito ed arriva una chiamata su Skype alla quale volete rispondere.

Cosa fate?

Innanzitutto vi posizionate sulla finestra del player, cliccate su pausa o cercate lo slider del volume per abbassarlo al minimo e poi premete il bottone per rispondere. Una volta terminata la conversazione fate le stesse operazioni all’inverso.

E se invece all’arrivo della chiamata il volume si abbassasse automaticamente con un gradevole effetto di fade per poi ritornare normale quando avete finito di parlare? Non sarebbe fantastico?

Ear Candy permette tutto questo su Linux, più qualcos’altro.

Come funziona Ear Candy

Una cosa del genere è possibile grazie alla capacità di Pulse Audio di gestire separatamente i volumi delle applicazioni ed all’intelligente meccanismo messo a punto dallo sviluppatore di Ear Candy.

Infatti il programma fa uso dei nomi degli stream di Pulse Audio, di quello di applicazioni e finestre ed infine del focus di quest’ultime che, insieme ad una serie di profili per determinarne il comportamento, dà un risultato davvero strabiliante.

Ho registrato un video per dare un’idea di cosa è capace Ear Candy

Interessante, vero?

Inoltre, nel caso in cui si voglia ad esempio vedere un video mentre si sta già ascoltando della musica, nel momento in cui si preme play il volume della canzone si abbassa proprio nello stesso modo descritto in precedenza, per poi essere ripristinato alla fine della visione o quando si riporta in primo piano il player audio e viceversa.

Installare Ear Candy

Per installare Ear Candy bisogna procurarsene il codice dal suo repository utilizzando bzr, se non lo avete installatelo ( Ubuntu: sudo apt-get install bzr )

bzr branch lp:earcandy/0.3

per poi recarsi nella cartella di destinazione e lanciare

./ear_candy

Ricordatevi poi ogni tanto di lanciare un bzr pull per aggiornare il codice con le nuove revisioni.

La piccola utility posiziona una icona nella traybar, dalla quale si accede al pannello delle opzioni

ear_candy_preferences

La finestra delle preferenze permette di configurare il comportamento delle applicazioni già presenti ( ad esempio il volume di entrata ed uscita ) ed aggiungerne di nuove.

Per adesso sono disponibili solamente 3 profili:

  • Music Player
  • Video Player
  • Phone Call Application

ma sulla pagina di launchpad dedicata al progetto viene espressa la volontà di allargare la lista.

Aggiungere un’applicazione

Inserire il proprio lettore audio o video preferito è molto semplice.

Bisogna innanzitutto averlo avviato facendogli riprodurre un qualunque file, in modo che Ear Candy lo riconosca tra gli stream di Pulse Audio attivi.

Il mio consiglio è poi quello di usare il campo Command nella sezione Advanced Options, immetendo il comando corrispondente al programma che si desidera aggiungere.

smplayer_ear_candy

Nell’immagine potete notare una casella di spunta in basso, dal nome By Window Position. Ebbene, questa opzione fa sì che il fade dell’audio cambi anche a seconda di dove è posizionata la finestra sul desktop. E’ divertente giocarci un po’, ve l’assicuro :D

Se dopo aver giocato con le opzioni Ear Candy non dovesse più partire, dovrete ricominciare tutto da capo cancellando la cartella .config/Ear\ Candy/ ( scritta così per via dello spazio tra una parola e l’altra nel nome della cartella ) situata nella vostra home.

Considerazioni

L’effetto creato da Ear Candy è uno degli scenari che Pulse Audio avrebbe dovuto gestire sin dalla sua nascita, un proposito già dichiarato in passato ma mai trasformatosi in realtà.

Certamente possiamo definire Ear Candy una sorta di Compiz per l’audio, almeno per ciò che concerne la sua limitata funzione.

Pulse Audio ne ha di strada da fare per diventare una realtà fruibile nella maggioranza delle combinazioni hardware/software, ma come avete visto è già possibile sfruttarlo per sviluppare idee creative che ci portano qualche passo avanti rispetto agli altri sistemi operativi desktop.

Gnome Do fa schizzare la CPU al 100%

Una delle interfacce di Gnome Do
Una delle interfacce di Gnome Do

Un recente aggiornamento di Gnome Do ( 0.6.0.1 ) ha introdotto un fastidioso bug che porta il programma a far schizzare l’uso della CPU al 100%, rallentando fortemente l’intero sistema. Il tutto è causauto dal modo in cui viene monitorata la clipboard.

Lo stesso David ammette l’errore e consiglia di non aggiornare.

Purtroppo questa stessa versione è al momento integrata all’interno dei repository di Intrepid  Ibex e, se installata, potrebbe compromettere la stabilità di centinaia di migliaia di sistemi. Sicuramente gli sviluppatori troveranno una soluzione prima della chiusura dei repository, pena l’esclusione dall’indice delle applicazioni disponibili.

In attesa dell’uscita di una nuova release ufficiale che risolva definitivamente il problema, gli assidui utilizzatori come me possono compilare l’ultimo aggiornamento del codice sorgente che include le patch per ovviare all’inconveniente.

Per scaricare i file necessari bisogna installare bazaar, il sistema di controllo di versione di Canonical, presente anche nei repository di Ubuntu

sudo apt-get install bzr

Si potrà poi lanciare il comando

bzr branch lp:do gnome-do

che si occuperà di recuperare l’ultimo aggiornamento del codice.

Le dipendenze si possono trovare sul wiki di Gnome Do a fondo pagina.

Prima di iniziare la compilazione è consigliabile disinstallare ogni installazione precedente e poi procedere con

./autogen.sh

make

sudo make install

Se non ci sono errori avremo finalmente uno Gnome Do che non crea più problemi.

Smontare velocemente i dispositivi esterni con Ejecter

Ejecter in azione
Ejecter in azione

Ejecter è una piccola applicazione che, una volta lanciata, si posiziona nella tray bar e permette di smontare velocemente dischi esterni, penne usb e partizioni.

Nulla di nuovo, esiste sempre la possibilità di espellere le periferiche tramite il desktop, dal file manager ( oppure con una comoda applet di AWN per chi usa un composite manager ), ma l’immediatezza che si ha con una icona sempre ben visibile sul proprio pannello è impareggiabile.

Dalla sua ha in più la caratteristica di essere indipendente dal desktop environment in uso.

Scarica Ejecter 0.0.9 per Ubuntu

oppure

Scarica i sorgenti da compilare

Il comportamento è simile alla rimozione sicura di Windows, basta un click con il tasto sinistro del mouse per far apparire il menu tramite il quale potremo scegliere cosa smontare.

Più semplice di così non si può.

L’applicazione si appoggia ad HAL per capire quali sono i device che è possibile disconnettere, dunque se la periferica non è stata montata attraverso HAL non verrà mostrata tra le scelte disponibili. In generale il problema si presenta con i lettori CD interni che hanno una voce in /etc/fstab, ma chi usa Ubuntu Hardy dovrebbe tranquillamente potervi accedere tramite Ejecter.

Lo sviluppatore è un italiano, Federico Pelloni, ed in cantiere ci sono già ulteriori miglioramenti al programma. Aiutamolo segnalando i bug riscontrati e magari suggerendogli qualche idea.

Livestation anche per Linux

La finestra principale di Livestation
La finestra principale di Livestation per Linux

Livestation è un programma che, alla stregua di Joost o Babelgum, permette di guardare la televisione via Internet.

Le prime versioni del client richiedevano Silverlight, ma nella sua ultima incarnazione Livestation si è svincolata da questa tecnologia permettendo il porting su Mac e sul nostro amato pinguino.

Installazione

Per usare Livestation su una Linux box basterà scaricare il file d’installazione ed assegnarli i permessi di esecuzione

chmod +x Livestation-[numero versione].run

per poi lanciare il file dal terminale

./Livestation-[numero versione].run

Il tutorial iniziale
Il tutorial iniziale

L’installer presenterà prima il readme, da poter saltare premendo Q, e le condizioni d’uso che dovranno essere necessariamente accettate con Y. In seguito verrà richiesto il percorso sul quale copiare i file e, a discrezione dell’utente, verrà creato un collegamento all’eseguibile nella cartella /usr/bin. Per queste operazioni sarà necessario inserire la password di root.

Una volta avviata l’applicazione, digitando semplicemente Livestation, ci si dovrà registrare al servizio e successivamente apparirà l’interfaccia principale che sembrerebbe sfruttare le librerie Qt.

Esteticamente gradevole, fa uso dell’accelerazione 3D per mostrare il video, corredato da effetti grafici che è possibile notare nelle immagini allegate al post.

Che me ne faccio ora?

A tutto schermo
A tutto schermo

Oltre ad una decina di canali sponsor preimpostati, è possibile trovare altri contenuti grazie al form di ricerca integrato. Tra i canali italiani disponibili abbiamo le tre reti Rai, La7Skytg24, Sport Italia e pochi altri che sono stati aggiunti da utenti volenterosi.

In teoria se si è in possesso del link ad uno streaming video si può aggiungere un canale dall’interfaccia web di Livestation e metterlo a disposizione di tutti gli utilizzatori.

In generale la qualità varia moltissimo a seconda dello stream selezionato, ma è quasi sempre sufficiente per poter guardare i filmati senza interruzioni e senza troppi artefatti.

Considerazioni

Il programma non è ancora molto stabile, sulla mia configurazione è andato in crash un paio di volte nel giro di una mezz’oretta di utilizzo.

Inoltre l’uso di Compiz durante la visione dei filmati è sconsigliato, soprattutto per chi come me è relegato ad usare i driver Ati che soffrono dell’effetto sfarfallio con video e applicazioni 3D.

Mi fa piacere che l’attenzione verso Linux aumenti sempre più permettendo di accedere ad una crescente gamma di programmi, ma a mio parere il concetto di portare i contenuti della televisione senza adattarli alle dinamiche della rete è in qualche maniera obsoleto, ma il software in questione potrebbe essere utile a chi vuole usufruire dei canali tradizionali in assenza di un apparecchio televisivo.

Come sconfiggere l’open source

open_source_communism
Image by jagelado via Flickr

Deishin Lee (Harvard Business School) e Haim Mendelson (Stanford Graduate School of Business) insegnano in due tra le più prestigiose school of business del mondo.

La ricerca

Un articolo su cnet riporta che i succitati professori hanno congiuntamente pubblicato una ricerca dall’eloquente titolo “Divide and Conquer: Competing with Free Technology Under Network Effects.” all’interno della quale vengono proposte alcune strategie rivolte a combattere l’avanzata delle applicazioni open source sul software proprietario e commerciale.

I punti chiave sui quali si fa leva sono essenzialmente tre:

  • Tempismo
  • Caratteristiche del prodotto
  • Effetto rete

In un mondo perfetto

Secondo Mendelson, lo scenario ideale per un’etichetta commerciale consisterebbe nel, cito,

[…]to bring its product to market first, to judiciously improve its product features, to keep its product “closed” so the open source product cannot tap into the network already built by the commercial product, and to segment the market so it can take advantage of a divide-and-conquer strategy.

Quindi vantaggio del primo entrante mescolato ad un costante miglioramento del prodotto, che deve essere tenuto rigorosamente a codice chiuso per impedire che il software open possa avvantaggiarsi dell’effetto rete creato dall’applicazione commerciale. Altrettanta importanza viene data alla segmentazione del mercato, utile ad instaurare un circolo vizioso generato dall’effetto rete stesso.

L’esempio principe che viene citato nella ricerca è Microsoft Office. Dapprima utilizzato in ambito professionale, è stato successivamente traslato al mercato consumer, che ha fatto a sua volta da traino per il mercato professionale. Spezzare una catena del genere non è certo facile.

In un mondo imperfetto

Ma cosa succede se è l’alternativa open source ad entrare per prima sul mercato?

In questo caso

the commercial vendor does well to enter the market with a compatible product and then invest in new product features to make its product compelling even though it costs more–a strategy sometimes known as “embrace and extend.” In this case, being “open” (or compatible) helps the commercial firm tap into the network created by the free product. Then, the commercial firm must compete by out-innovating the free product.

Dunque l’accento verte sulla compatibilità con l’applicazione open e sull’estensione delle funzionalità del prodotto. Lo step successivo è quello di rendere obsoleta l’alternativa gratuita, per poi estrometterla dalla rete alla quale la stessa ha dato vita.

Qualche precisazione

In questo frangente non mi interessano le considerazioni filosofiche open vs closed, non aggiungerebbero niente alla conversazione.

Comincerei invece a fare qualche precisazione rispetto all’articolo in lingua originale, nel quale ci sono a mio modo di vedere due inesattezze di fondo.

In primo luogo sembra che venga dato per scontato che il software open source sia gratuito, confondendo clamorosamente le due accezioni. Potrei anche sbagliarmi, ma l’impressione è quella.

In secondo luogo, non si palesa nemmeno lontanamente l’ipotesi che un’azienda possa guadagnare tramite l’open source, seppur con modelli di business non tradizionali. A mio avviso non ha più nemmeno senso parlare di alternative, ma di un modo come un altro per fare business.

Considerazioni

Tuttavia la cosa interessante sta nel fatto che due esimi ricercatori, appartenenti a scuole d’elite famose in tutto il mondo, si pongano il problema di come contrastare il fenomeno open source e del software gratuito. Questo potrebbe voler dire che effettivamente si avverte la necessità di improntare delle strategie per respingere una reale e sentita minaccia. Diciamo che lo sapevamo già ;) ma una conferma non fa mai male.

Dal punto di vista del consumatore i benefici che si traggono dall’allargarsi della concorrenza, prezzi più bassi e prodotti migliori, non possono che essere accolti positivamente.

E voi, come la pensate?

EDIT: Interessanti gli interventi sul forum di debianitalia.org riguardo l’argomento, mi trovano pienamente concorde.

Usare i preset di Winamp per l’equalizzatore di Banshee 1.2

Con la sua ultima incarnazione il player multimediale Banshee si è aggiudicato un posto tra i migliori riproduttori audio e video in circolazione per Linux.

Interfaccia di Banshee 1.2

Perché mi piace

Oltre ad una stupenda gestione di Last.fm, la creazione di playlist intelligenti basate su criteri impostabili dall’utente ed un sistema di plugin che permette di estendere le funzionalità del programma ( come per esempio il supporto a diversi tipi di lettori Mp3 ed ai testi delle canzoni ), una delle novità richiesta a gran voce e presente nell’ultima versione è l’equalizzatore.

L'equalizzatore di Banshee 1.2

Nell’installazione predefinita non è presente nessun preset preimpostato, sta quindi all’utente districarsi per trovare la migliore combinazione che soddisfi il proprio orecchio.

Per ovviare a questo inconveniente possiamo utilizzare i famosi settaggi dell’equalizzatore di Winamp, che credo non abbiano bisogno di presentazioni, come suggerito dal blog Mike’s planet.

Come fare a installare i settaggi dell’equalizzatore

Iniziamo con l’aprire il nostro amato terminale e scarichiamo il file contenente i preset che ci interessano

wget http://www.mikesplanet.net/files/equalizers.xml.gz

ed installiamoli in Banshee con

gunzip -c equalizers.xml.gz > ~/.config/banshee-1/equalizers.xml

ricordando che questa procedura cancellerà qualunque impostazione precedente.

Aprendo l’equalizzatore adesso avremo una buona selezione tra cui scegliere quella che più ci garba.

I preset di Winamp in Banshee 1.2

Buon ascolto ;)