Trattamento testo
andrea gelmini
andrea.gelmini a lugbs.linux.it
Mar 15 Lug 2003 11:23:01 UTC
On Sat, Jul 12, 2003 at 11:24:44AM +0200, Vernia Damiano wrote:
> Ti credo, ora occhio a questo caso: il file sopra corrisponde alla
> descrizione di una rete di telecomunicazioni. Io devo trovare dei percorsi
> all'interno di questa rete. Questi percorsi vengono memorizzati come un
> vettore lungo quanto il numero di nodi (numero che puo' raggiungere al
> massimo 65000, quindi 2 byte) quindi un percorso (comunque lungo) occupa
> in memoria 2 * Nnodi byte. Devo tenere in memoria 2 percorsi per ogni
> relazione di traffico, senza contare tutte le altre diverse correlazioni
> con dati che non sto a citare, tra cui esistono numerosi bitmap.
> Gia' il programma e' complesso di suo, se poi mi studio anche un
> formato testuale per salvare e ricaricare i dati buonanotte.
eh? date queste premesse la tua domanda iniziale ha ancora meno senso. qui
vi sono ben altre problematiche e approcci da valutare/sfruttare.
> Sinceramente non credero' mai che un linguaggio interpretato sia
> piu' veloce (o simile) a uno compilato. Sono un fan dei linguaggi
questo dipende da cio` che devi far fare al linguaggio.
> interpretati piu' che dei compilati, ma se mi metto a scrivere
> l'ottimizzatore in python (tanto di cappello, lo voglio imparare), sempre
ottimizzatore de che?
> 6000-7000 minuti. Prego fare il conto... Dividere anche solo per 2 il
> tempo di esecuzione di un singolo ciclo di ottimizzazione fa passare da 4
> a 2 GIORNI (altrimenti sprecati).
il punto e` un altro. ottimizzando, soprattutto pesantemente, si
introducono degli errori, pertanto questo aspetto va gestito come ultimo
stadio. tipicamente, come vedo fare sempre piu` frequentemente anche nelle
realta` universitarie, si utilizza un linguaggio di scripting per
realizzare codice in tempi veloci al fine di valutare la bonta` degli
algoritmi, e solo al quel punto si migra al linguaggio finale e
all'ottimizzazione. il fatto e` che, a quel punto, eventuali
malfunzionamenti sono imputabili semplicemente alle ottimizzazioni e non
agli algoritmi. ad ogni modo, pero`, cosi` a naso direi che il tuo problema
si pone proprio sulla scelta degli algoritmi/modi da sfruttare, non tanto
sull'implementazione degli stessi. tanto per fare un esempio chiaro, tempo
fa abbiamo avuto a che fare con un problema abbastanza banale: dati una
serie di log, l'azienda X voleva estrapolarci dei dati. la soluzione
precedentemente implementata in C richiedeva almeno un paio di ore per
portare a termine il lavoro, il nostro script in bash meno di 5 secondi.
ciao,
andrea
Maggiori informazioni sulla lista
Lug
|