[Tech] Massima allocazione array
Franco Bagnoli
franco.bagnoli@gmail.com
Mer 2 Set 2009 15:57:53 CEST
2009/9/2 Tommaso Biancalani - Llewlyn <tommaso.biancalani@gmail.com>:
> sono serie temporali di concentrazioni di reagenti in soluzione. Voglio
> ricavare uno spettro di potenza per vedere se c'è ordine temporale nel
> sistema, per farlo devo fare una media tra tante simulazioni. L'idea quindi
> sarebbe:
>
> molecoline[TEMPO][NUM_SIMULAZ]
>
> ma purtroppo la dimensione non va oltre 62 mega circa (è la quantità totale
> che il processo mi occupa in memoria), nonostante ci sia RAM a sufficienza
> (lo swap non viene toccato). Se lo alloco dinamicamente ho + spazio ma
> sempre un limite superiore molto inferiore alle possibilità della macchina.
> Volendo caco ogni singola simulazione su un file e la ripesco quando devo
> mediare, ma mi dà fastidio farlo xchè non vedo xchè non debba tenere tutto
> in ram che è + veloce.
>
> Te come fai?
genero i file così posso fare subsampling per valutare gli errori, e
poi uso perl per combinarli. Se proprio vuoi fare una cosa sofisticata
puoi usare un database (mysdp, postgres..) ma non credo valga la pena.
Comunque la filosofia unix è di scrivere tanti piccoli task,
combinarli più o meno a caso con manciate di ``, |, sed, awk quindi
buttare tutto e riscrivere in perl...
--
Franco Bagnoli <franco.bagnoli@unifi.it> <franco.bagnoli@gmail.com>
Lab. Fisica dei Sistemi Complessi, Dip. Energetica & CSDC
Universita' di Firenze, via S. Marta, 3 I-50139 Firenze, Italy.
Tel. +39 0554796592, fax: +39 0554796342
Maggiori informazioni sulla lista
flug-tech