[Gfoss] Compilazione qgis su windows

a.furieri a lqt.it a.furieri a lqt.it
Mer 11 Ago 2010 20:59:31 CEST


On Wed, 11 Aug 2010 14:29:07 +0200, Andrea Peri wrote
> Hai gia' svolto delle prove con MinGW a allocare e liberare risorse sia su Win che su Linux ?
>

Ok, come suggerito da Andrea ho perso un po' 
di tempo per fare benchmarking comparativo:
tanto mi è servito comunque per testare il rilascio 
ormai imminente della prossima SpatiaLite :-)

ho ottenuto risposte di una nettezza cristallina
(e purtroppo, decisamente imbarazzante per
"qualcuno" che ne esce decisamente malconcio)

metodologia:
=================================================
- sono partito dagli SHP free del Comune di 
  Merano (è un dataset abbastanza "polposo",
  sono circa 80MB su una ventina di tavole,
  circa 100,000 entità)

- quindi ho buttato giù uno script SQL per
  splite che effettua le seguenti operazioni:
a) carica gli SHP nel DB
b) crea uno spatial index per ogni tavola
c) infine (sempre per ciascuna tavola)
   effettua il calcolo del numero delle
   entità e determina l'extent della tavola.
   per le tavole POLYGON viene anche calcolata
   la superficie media, mentre per le tavole
   LINESTRING viene calcolata la lunghezza media.
d) il tempo di inizio e fine viene misurato
   direttamente dato che lo SQL script
   inizia e termina con un bel:
   SELECT DateTime('now');

- insomma, direi che si tratta di un mix di I/O
  e di calcoli 'pesantucci', che dovrebbe essere
  abbastanza rappresentativo di casi reali d'uso

- per evitare effetti strani ho ripetuto ciascun
  test almeno 3 volte (sia con "cache calda" che
  con "cache fredda")

piattaforma:
=================================================

tutti i test sono stati effettuati sul medesimo PC
- Windows7 pro (64 bit) 'nativo'
- WindowsXP pro su Virtual Machine
- Ubuntu 8.04 (32 bit) su VM
- Debian Lenny (64 bit) su VM

si noti che il confronto non è ad armi pari:
- le macchine virtuali sono sicuramente svantaggiate,
  seppur magari di poco 
- inoltre le VM "vedono" una configurazione dimezzata:
  due soli cores e 2GB di ram, contro i 4 cores / 4GB
  di ram a disposizione di Win7

ed eccovi i risultati (lo so, lo so che a questo punto
siete veramente curiosi ...)

Windows7 / spatialite MinGW/MSYS
---------------------------------------
65 secondi (journal-file)
50 secondi (WAL)

WindowsXP / spatialite MinGW/MSYS
---------------------------------------
65 secondi (journal-file)
60 secondi (WAL)

WindowsXP / spatialite MSVC
---------------------------------------
50 secondi (journal-file)
45 secondi (WAL)

Ubuntu 8.04 (32 bit)
---------------------------------------
22 secondi (journal-file)
20 secondi (WAL)

Debian Lenny (64 bit) / splite 64 bit
---------------------------------------
19 secondi (journal-file)
21 secondi (WAL)

giusto per curiosità personale, ho anche
testato le precedente versione di splite
sotto Windows 7
-----------------------------------------
80 secondi

conclusioni:
========================================

a) utilizzare sistemi / applicativi 32 bit o 64 bit 
   non offre nessun vantaggio in termini di velocità

b) l'ultima versione di SQLite è veramente veloce
   da far paura, specie in scrittura ...
   il WAL ha effetti abbastanza peculiari a seconda
   della piattaforma ... a volte si nota ... altre
   volte sembra assolutamente irrilevante

c) confermato: il codice generato da MinGW/MSYS
   gira più lentamente di quello generato da MSVC.
   la differenza è abbastanza sensibile.

d) confermato anche questo: l'unico modo possibile
   per velocizzare Windows (se uno proprio non riesce
   a rinunciarci in nessun modo, per un motivo o per
   l'altro) è quello di ... 
   installarci sopra Linux tramite VM :-)
   
ciao Sandro
 
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.faunalia.it/pipermail/gfoss/attachments/20100811/9e9380d0/attachment-0001.htm>


Maggiori informazioni sulla lista Gfoss