[Gfoss] ecw con geoserver/gdal: Erdas ha rimosso ecw3.3 runtime lib

a.furieri a lqt.it a.furieri a lqt.it
Mar 20 Lug 2010 11:38:03 CEST


> Aggiungo che il formato tiff+jpeg e' una coppia sciagurata per internet.> Infatti la decompressione jpeg porta via risorse e avere i tiff compressi in jpeg abbassa > tantissimo le prestazioni della macchina.> Non parlo tanto quando hai n utente solo (te stesso) ma piuttosto quando comincia ad avere piu' > utenti in contemporanea.> Dal punto di vista prestazionale al formato tiff+jpeg e' preferibile il tiff uncompressed, > sebbene capisco che eroda notevolmente lo spazio disco.> D'altra parte la coperta e' quella, se tiri da una parte ...>Punto di discussione molto interessante (e suggestivo).Sicuramente l'algoritmo di decodifica JPEG ha un costo computazionale: quindirichiamarlo in continuazione assorbe risorse, specie in termini di CPU.La cosa che però trovo abbastanza curiosa è che l'algoritmo di decompressione Wavelet (quello utilizzato dai vari MrSID, ECW, JPEG2000 etc) si basa sicuramentesu una matematica più complessa, e molto più pesante in termini computazionali.Qui
 ndi come è possibile che p.es. ECW "gira svelto", mentre JPEG "gira lento" ?questa cosa mi convince assai poco, e mi puzza più di mitologia che di realtàoggettiva.A mio modesto parere (ed esperienza), il nocciolo del problema è che TIFFnon è un vero e proprio formato, ma piuttosto una variegata famiglia diformati, con caratteristiche anche molto differenti tra di loro.Ma anche JPEG è un algoritmo altamente flessibile e parametrizzabile,in grado di "strizzare" tanto o poco, con qualità ottima oppure indecente ...insomma, parlare di "TIFF/JPEG" senza qualificare meglio rischia diessere talmente generico da perdere qualsivoglia significato tecnico.a) sicuramente un TIFF "non compresso" offre i migliori tempi di risposta,   visto che i tempi di accesso comprendono esclusivamente l'I/Ob) ma anche in questo caso occorre distinguere, perchè:b1) un TIFF con struttura "strip" fatica sicuramente in lettura, specie    quando occorre prelevare semplicemente una piccola porzione dell'imm
 agineb2) invece un TIFF con struttura "tile" gonfia leggermente come spazio, però    offre tempi di accesso di gran lunga migliori.     Identificare la dimensione ottimale della tile non è banale, e sicuramente    causa sensibili differenze di velocità: tipicamente i risultati migliori    si ottengono usando tiles 'piccole', p.es. 256x256 oppure 512x512c) se poi si applica la compressione JPEG, la questione si complica ancor di   più ... perchè oltre all'I/O occorre considerare il tempo di decodificac1) una struttura "strip" non è sicuramente in grado di offrire buona velocità,    perchè con elevata probabilità costringe a decomprimere anche porzioni di    immagine assolutamente inutili (= che non verranno utilizzate)c2) viceversa la struttura "tile" (almeno nella mia personale esperienza) può    offrire tempi di risposta molto fluidi, sempre che si abbia l'accortezza    di usare tiles ragionevolmente 'piccole'    Poi (ovviamente) occorre considerare la questione delle 'pira
 midi', cioèdi come supportare efficacemente una struttura multi-risoluzione.E penso proprio che è qui che gli algoritmi Wavelet hanno un vantaggioconcreto, visto che questo algoritmo ha la capacità intrinseca dieffettuare la decompressione a varie risoluzioni, caratteristica cheinvece manca (parzialmente) all'algoritmo JPEG.Quindi usando TIFF (oppure TIFF/JPEG) occorre sicuramente generare una struttura "a piramide" per potere ottenere buoni tempi di accesso,ma questo implica consumare un buon 40% di spazio disco aggiuntivo ...conclusione: non sempre è facile confrontare "le mele con le mele,e le pere con le pere" ... specie quando, come in questo caso,i parametri da tenere sotto controllo sono svariati, e tuttipossono essere fortemente influenti. > Poi se si cambia formato, e si esclude i canonici ecw e jpeg2000 (ognuno con i propri problemi)> io ti potrei suggerire di dare una occhiata al formato RasterLite.>btw, anche RasterLite usa JPEG: quindi il problema dovrebbe ripro
 posi esattamente invariato, no ?non ho mai fatto verifiche in condizioni di concorrenza/parallelismo spinto, maa lume di naso non sembrerebbe.Comunque un bel benchmark serio ed oggettivo potrebbe fare luce sulla questione:peccato solo che p.es. il MrSID SDK esclude esplicitamente nelle condizioni dilicenza la possibilità di fare benchmarking comparativo rendendo pubblici i dati :-(Infine, in quanto "babbo" di RasterLite consentitemi di spezzare unalancia a favore dei "raster dentro ai DBMS".Si, sicuramente l'I/O è più farragginoso: ma considerate anche che(almeno RasterLite) si trae tutto il vantaggio di avere uno SpatialIndex associato alle immagini.Cosa che invece manca completamente usando TIFF: può anche sembrarebanale, ma vi siete mai chiesti quanti cicli di CPU ci vogliono (per non parlare degli accessi a disco) solo per scandire la lista delle tilese potere quindi identificare quelle (poche) di effettivo interesse ?specie se nel frattempo occorre anche aprire e chiude
 re un qualche centinaiodi files, ripetendo ogni volta il parsing della directory dei tags TIFF ?ciao Sandro 
 
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.faunalia.it/pipermail/gfoss/attachments/20100720/bc67139f/attachment-0001.htm>


Maggiori informazioni sulla lista Gfoss