fbpx
Skip to main content

Modellistica di Impianti e sistemi 2 2007/2008

  • COM_EASYSOCIAL_GUEST_NAME
  • Avatar di COM_EASYSOCIAL_GUEST_NAME
  • Visitatori
  • Visitatori
17 Anni 9 Mesi fa #63259 da COM_EASYSOCIAL_GUEST_NAME
Risposta da COM_EASYSOCIAL_GUEST_NAME al topic Modellistica di Impianti e sistemi 2 2007/2008

Noi abbiamo utilizzato una libreria java (mtj) e, con un pò di pazienza, siamo riusciti a risolvere sistemi con più di 300000 stati.

Quindi sei riuscito a tenerti in RAM, oltre a un array di 300.000 elementi (E), anche una matrice (sparsa), 300.000x300.000, giusto?

Hai ottimizzato in qualche modo il singolo elemento di E?
Noi abbiamo problemi gia a generare 300.000 stati se ogni stato e' del tipo:
0,(0,-1),(0,-1),(0,-1),(0,-1),0,(0,[-1,-1,-1]),3

hai usato -Xmx<dim>m ?
con dim=1500 o cosa?


Allora, abbiamo impostato la dimensione massima dell'heap della jvm a 1024. Non abbiamo fatto ulteriori memorizzazioni. Comunque esistono un paio di codifiche per matrici sparse, una si chiama matrix market, che sono supportate da mtj. Noi non ne abbiamo avuto bisogno. Comunque siamo proprio al limite!

Si prega Accedi o Crea un account a partecipare alla conversazione.

Di più
17 Anni 9 Mesi fa #63261 da Giovanni Curcio

Allora, abbiamo impostato la dimensione massima dell'heap della jvm a 1024. Non abbiamo fatto ulteriori memorizzazioni. Comunque esistono un paio di codifiche per matrici sparse, una si chiama matrix market, che sono supportate da mtj. Noi non ne abbiamo avuto bisogno. Comunque siamo proprio al limite!

Non mi tornano gli ordini di grandezza, penso che stiamo sbagliando qualcosa, forse hai ottimizzato la memorizzazione della singola riga dello spazio degli stati?

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • COM_EASYSOCIAL_GUEST_NAME
  • Avatar di COM_EASYSOCIAL_GUEST_NAME
  • Visitatori
  • Visitatori
17 Anni 9 Mesi fa #63268 da COM_EASYSOCIAL_GUEST_NAME
Risposta da COM_EASYSOCIAL_GUEST_NAME al topic Modellistica di Impianti e sistemi 2 2007/2008

Allora, abbiamo impostato la dimensione massima dell'heap della jvm a 1024. Non abbiamo fatto ulteriori memorizzazioni. Comunque esistono un paio di codifiche per matrici sparse, una si chiama matrix market, che sono supportate da mtj. Noi non ne abbiamo avuto bisogno. Comunque siamo proprio al limite!

Non mi tornano gli ordini di grandezza, penso che stiamo sbagliando qualcosa, forse hai ottimizzato la memorizzazione della singola riga dello spazio degli stati?


Usando la libreria mtj con il tipo di dato FlexCompRowMatrix non abbiamo avuto problemi. Con precisione ci siamo fermati (per motivi di tempo e non di spazio) a 266000 stati.

Si prega Accedi o Crea un account a partecipare alla conversazione.

Di più
17 Anni 9 Mesi fa #64023 da Giovanni Curcio

Usando la libreria mtj con il tipo di dato FlexCompRowMatrix non abbiamo avuto problemi. Con precisione ci siamo fermati (per motivi di tempo e non di spazio) a 266000 stati.

Ho provato a usare anche io il tipo FlexCompRowMatrix nella speranza di ridurre l'occupazione di memoria (usando Jama, con N=5 abbiamo 5083 stati, e il programma occupa 210MB circa; con N=6 va in errore), ma ho visto che i risultati sono gli stessi (anzi, un po peggio con N=5 il prog si ciuccia 214MB).
Allora ho voluto vedere quanto fosse sparsa la matrice e pensavo lo fosse di piu':
con N=5 ho 5083 stati, quindi una matrice di 25.836.889 di elementi, quelli diversi da 0 sono circa la meta':12.472.570.

Vi torna? Oppure la matrice vi viene piu' sparsa? Se vi torna, come avete potuto generare Q con 300.000 stati!? :shock:

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • COM_EASYSOCIAL_GUEST_NAME
  • Avatar di COM_EASYSOCIAL_GUEST_NAME
  • Visitatori
  • Visitatori
17 Anni 9 Mesi fa #64027 da COM_EASYSOCIAL_GUEST_NAME
Risposta da COM_EASYSOCIAL_GUEST_NAME al topic Modellistica di Impianti e sistemi 2 2007/2008

Usando la libreria mtj con il tipo di dato FlexCompRowMatrix non abbiamo avuto problemi. Con precisione ci siamo fermati (per motivi di tempo e non di spazio) a 266000 stati.

Ho provato a usare anche io il tipo FlexCompRowMatrix nella speranza di ridurre l'occupazione di memoria (usando Jama, con N=5 abbiamo 5083 stati, e il programma occupa 210MB circa; con N=6 va in errore), ma ho visto che i risultati sono gli stessi (anzi, un po peggio con N=5 il prog si ciuccia 214MB).
Allora ho voluto vedere quanto fosse sparsa la matrice e pensavo lo fosse di piu':
con N=5 ho 5083 stati, quindi una matrice di 25.836.889 di elementi, quelli diversi da 0 sono circa la meta':12.472.570.

Vi torna? Oppure la matrice vi viene piu' sparsa? Se vi torna, come avete potuto generare Q con 300.000 stati!? :shock:


Noi senza mtj siamo riusciti a toccare quota 11000 stati (circa 10 job) con 2 Gb di Ram.
Però calcola che abbiamo usato strutture primitive e alcune molto particolari nella memorizzazione della matrice...
Ora proveremo anche noi con mtj...ti faccio sapere...

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • COM_EASYSOCIAL_GUEST_NAME
  • Avatar di COM_EASYSOCIAL_GUEST_NAME
  • Visitatori
  • Visitatori
17 Anni 9 Mesi fa #64028 da COM_EASYSOCIAL_GUEST_NAME
Risposta da COM_EASYSOCIAL_GUEST_NAME al topic Modellistica di Impianti e sistemi 2 2007/2008
Ah scusa,e comunque la matrice ci viene molto sparsa,praticamente tutti i valori (a parte i primi stati) vengono tutti vicini alla diagonale principale...
Controlla la generazione,magari c'è qualche problema...

Si prega Accedi o Crea un account a partecipare alla conversazione.