In questa nuova rivoluzione Web chiamata per brevità HTML5, uno dei protagonisti è senza alcun dubbio il riesumato JavaScript. Tornato dalla tomba in cui sembrava essere stato sepolto per riportare nuova luce e dinamicità ai contenuti Web.

JavaScript, in quanto computazione client-side ha anche lo spiacevole effetto di condizionare le prestazioni di un sito e di scaricare il gravoso costo della sua esecuzione sui browser. Questa è la casus belli della JavaScript War che imperversa nei centri di sviluppo dei vari browser da qualche anno.

Iniziamo quindi ad analizzare la battaglia dei contendenti più accreditati: Firefox e Chrome.

Continue reading »

 

Questa mattina stavo rivedendo lo script che ho postato ieri. L’ho ottimizzato un po’ e ho tolto una 30-ina di righe. Dopodiché mi sono messo a fare alcuni test prestazionali provando ad addestrare una rete di circa 5000 neuroni disposti in vari modi (da 3 strati da 2000 fino a 250 strati da 20).

Le prestazioni non erano mozzafiato e questo lo sapevo già, il python non è il linguaggio più indicato per applicazioni fortemente CPU bound.

Tuttavia la sorpresa l’ho avuta quando ho testato lo script con la nuova versione di Python (la 3.1) e costatando una diminuzione delle prestazioni di circa il 50%.

Cinquantapercento! Mica bruscolini!

Ho rifatto il conto con vari test (sempre utilizzando il mio script) e il risultato era sempre di questa entità. Le cose sono due:

  1. L’interprete di python3.1 è proprio più lento di suo. In questo caso il problema verrà fuori quando si passerà definitivamente da 2.6 a 3.
  2. Alcune funzioni che nella 2.6 vanno a meraviglia nella 3.1 fanno schifo. In questo caso la cosiddetta migrazione da 2.6 a 3 potrebbe essere meno facile del previsto.

In attesa  di risposte vi chiedo se voi sapete qualcosa di più al riguardo. Se volete poi posso fornire altri dettagli sui vari test.

UPDATE 19/07/10

Ho ripetuto i test su un’altra distribuzione (sidux) e questa volta i risultati sono un po’ diversi. La versione 3 di python è sempre più lenta ma in percentuali accettabili (5% circa).

Inoltre ho provato anche con psyco ottimizzando del 75% le prestazioni del programma.

© 2008-2012 SlashCode Suffusion theme by Sayontan Sinha