di luca2002for » 09/02/09 21:50
Cari Flash e Anthony,
premetto che questo è un forum straordinario, dove angeli sgomitano per aiutare chi è in difficoltà.
Non finirò mai di ringraziarvi, siete veramente unici!
Ho fatto prove ed esperimenti, dopo aver letto le vostre risposte.
Io uso il foglio di excel per lavoro e per me è veramente importante poter trarre informazioni il più possibile sincronizzate col mercato, usando uno strumento (il foglio di excel) che con gli anni ho cercato di migliorare sempre più, anche grazie al vostro aiuto.
Divido i risultati di tali prove per settore, rispondendo a Flash per gli aspetti “windowsiani” e ad Anthony per quelli “excelliani”.
Per Flash:
ho scaricato un programma (speedfan) per monitorare le temperature (ovviamente con foglio di excel aperto e a pieno regime di funzionamento).
Per i dati completi ho allegato uno screenshot della finestra del programma, ma in sintesi i risultati (che dopo un’ora di funzionamento sono rimasti sostanzialmente invariati – il pc è stato acceso ininterrottamente dalle 7 di questa mattina) sono:
GPU C 52
TEMP1 C 39
TEMP2 C 27
TEMP3 C 127
HD1 C 37
TEMP1 C 40
CORE C 22
CORE C 52
AMBIENT C 0
(Te li riporto così come sono scritti, non è che francamente ci capisca molto. Forse unico dato significativo è il C 127 temp3, che infatti è segnalato nello screenshot con l’icona di un fiammifero).
Per quanto riguarda la CPU ho fatto una scoperta interessante.
Devi sapere che il foglio è suddiviso in 9 fogli di lavoro. In uno di questi (Indicatore), che è in qualche modo riassuntivo, ci sono tutti i dati, molte formattazioni condizionali e una ventina di grafici.
Ho notato che se il foglio attivo è l’Indicatore, la CPU utilizzata, altrimenti oscillante tra il 4% e il 7%, sale, andando tra il 30% e il 40%.
La cosa curiosa è che se rimango sul foglio Indicatore ma con lo scroll down mi sposto in giù di una quarantina di righe, andando in una zona del foglio “vuota”, l’utilizzo della CPU ritorna sui valori (bassi) riscontrati quando è attivo un qualunque altro foglio (4% - 7%).
Stesso discorso se il foglio è minimizzato. Sulla parte “scritta” dell’Indicatore l’utilizzo della CPU sale, mentre sulla parte “vuota” o su qualsiasi altro foglio la CPU scende.
Relativamente ai processi, quelli in corso sono 51, e l’utilizzo del file di paging è 760 MB.
I processi che più incidono sulle prestazioni sono i seguenti (anche per questa informazione allego uno screenshot, “task manager”):
javaw.exe 159.064 KB
firefox.exe 103.692 KB
System 61.332 KB
Svchost.exe 24.372 KB
RTHDCPL.exe 22.284 KB
EXCEL.exe 18.176 KB
(a seguire gli altri, in ordine decrescente di utilizzo di memoria).
Per Anthony:
hai interpretato perfettamente il grafico, le cose stanno esattamente come hai detto. Tempi tra l’esecuzione di una macro e l’altra che progressivamente si innalzano, non rinunciando però (seppur sempre più raramente con l'andar del tempo) a tornare alla “normalità”.
La macro che gira ogni 6 secondi fa in pratica solo un copia e incolla di una riga di circa un centinaio di dati (che si aggiornano dinamicamente attraverso il DDE), incollandola (incolla speciale => valore) su un altro foglio-contenitore, che serve da serbatoio per i grafici (che quindi si aggiornano in tempo reale) e per avere materiale su cui studiare la sera a mercato chiuso.
Alla fine del mercato il foglio-contenitore conta quindi circa 100 (colonne) * 4486 (righe) = 44.860 celle di dati, senza nessuna formattazione condizionale. Un ventina di queste colonne viene usata per la creazione dei grafici che si aggiornano in tempo reale (ogni 6 secondi).
Oltre a questa macro, ce ne sono altre tre che girano a tempo:
una ogni minuto (fa un semplice copia-incolla, è inserita nella auto_open e contiene nell’ultima riga il richiamo a se stessa – così come nell’esempio che ho scritto nel mio secondo post). Parte alle 9:05:27.
Poi ce ne sono altre due (che partono entrambe ogni 15 minuti, ma che sono temporalmente sflasate, una infatti parte alle 9:15:10 e l’altra alle 9:29:10), anch’esse deputate a dei semplici copia e incolla.
Ho cercato di sfalsare gli orari proprio per evitare accavallamenti. Ma anche se ce ne fossero (e sicuramente ce ne sono, considerando che c’è sempre la macro dei 6 secondi che imperversa dalle 9 e 5 e 24 secondi fino all’autochiusura del foglio), penso che ciò dovrebbe determinare semplicemente un ritardo millesimale nell’esecuzione della macro che viene a trovarsi “vicina” nella schedulazione, ma non una ripetizione della schedulazione stessa (correggimi se sbaglio).
Non ci sono comunque macro che “tengano in considerazione” le celle del foglio contenitore, che quindi aumenta, sì, come volume di dati nel corso della giornata, ma se appesantisce il foglio, lo fa solo perché i dati diventano punti di grafici presenti nel foglio Indicatore.
Grazie, ragazzi. Queste sono le scoperte che ho fatto e che spero possano darvi qualche indizio.
Una cosa che mi è venuta in mente, per concludere è questa: tempo fa usavo un foglio con un’unica macro a 3 secondi (quindi molti più dati), una sessantina di grafici e un foglio che invece di circa 6 – 8 mega, come quello attuale, ne pesava 60. Eppure non c’erano i rallentamenti che ho riscontrato adesso. Forse perché non c’era un foglio indicatore?
Cosa ne pensate?
Luca
- Allegati
-
- task manager.JPG
- (50.54 KiB) Scaricato 36 volte
-
- temperature.JPG
- (41.35 KiB) Scaricato 37 volte