Topics

nvda e componenti aggiuntivi


Alessio Piazza
 

Buongiorno ragazzi,

domanda forse con una risposta scontata. Quanto pesano i componenti aggiuntivi installati sulla velocità di NVDA, sia al caricamento che durante l'esecuzione? Installando più componenti aggiuntivi si consumano più risorse di sistema?

Grazie mille e cordiali saluti


Gabriele Nesossi
 

Buongiorno,

dalla mia esperienza la mia risposta è affermativa, però non influiscono tanto i componenti installati, ma quelli attivi.

Il 22/01/2021 13:55, Alessio Piazza ha scritto:

Buongiorno ragazzi,

domanda forse con una risposta scontata. Quanto pesano i componenti aggiuntivi installati sulla velocità di NVDA, sia al caricamento che durante l'esecuzione? Installando più componenti aggiuntivi si consumano più risorse di sistema?

Grazie mille e cordiali saluti








Alessio Piazza
 

Grazie mille, se vedo che va troppo lento proverò a disabilitare qualcosa che non uso in  quella situazione

Il 23/01/2021 10:25, Gabriele Nesossi ha scritto:

Buongiorno,

dalla mia esperienza la mia risposta è affermativa, però non influiscono tanto i componenti installati, ma quelli attivi.

Il 22/01/2021 13:55, Alessio Piazza ha scritto:
Buongiorno ragazzi,

domanda forse con una risposta scontata. Quanto pesano i componenti aggiuntivi installati sulla velocità di NVDA, sia al caricamento che durante l'esecuzione? Installando più componenti aggiuntivi si consumano più risorse di sistema?

Grazie mille e cordiali saluti








Alberto Buffolino
 

Alessio Piazza, il 22/01/2021 13.55, ha scritto:
domanda forse con una risposta scontata. Quanto pesano i componenti aggiuntivi installati sulla velocità di NVDA, sia al caricamento che durante l'esecuzione?
Alberto:
Ciao Alessio,
per quanto riguarda il caricamento iniziale, più sono gli add-on attivi, più tempo impiegherà NVDA per caricarsi, questo senza alcun dubbio.
Per quanto riguarda invece durante l'esecuzione, molto dipende da come lavorano gli add-on. Ad esempio, se un add-on fornisce solo qualche script utile, che viene registrato in fase di caricamento, ma non fa null'altro finché non invochi i suoi script, allora non avrà pressoché nessun impatto sulla velocità di NVDA.
Se, viceversa, l'add-on lavora automaticamente su alcuni oggetti, dovendo quindi filtrarli durante l'esecuzione per capire se sono quelli di suo interesse, ecco che le cose possono rallentare anche di molto, se il programmatore non ha ottimizzato i controlli a dovere. Cosa simile se si inseriscono troppe correzioni nei dizionari.
Ti faccio un esempio con ColumnsReview, che sviluppo io da diversi anni: per molto tempo, l'add-on ha funzionato su questo principio: se NVDA si trova su un oggetto che è un elemento di una lista, allora registra vari script per gestirne le colonne e altri aspetti (ricerca nella lista, gestione intestazioni colonna, gestione intervallo colonne, etc). Questo veniva ripetuto ogni volta che cambiavi elemento scorrendo una lista. Se la lista aveva 300 elementi, scorrendola tutta l'add-on agiva 300 volte, più quelle in cui tu invocavi i suoi script (magari per 2 soli elementi su 300).
Da qualche tempo, invece, ho cambiato approccio: ora l'add-on si limita ad accorgersi che sei su una lista appena ci entri, dopodiché registra gli script per l'oggetto lista, e attende che tu ne invochi uno sopra uno degli elementi. Se la lista ha 300 elementi, l'add-on agirà una sola volta, più quelle in cui invocherai i suoi script (che andranno a vedere per prima cosa su quale elemento ti trovi).
Il nuovo approccio è, evidentemente, molto molto più leggero e meno invasivo.
Alberto


Alessio Piazza
 

grazie mille per la risposta Alberto,  molto chiara e completa, ora ho capito  meglio come funziona un componente  aggiuntivo, io fra l'altro non sono un  programmatore e ho competenze informatiche intermedie.

Grazie mille ancora

Il 23/01/2021 15:25, Alberto Buffolino ha scritto:
Alessio Piazza, il 22/01/2021 13.55, ha scritto:
domanda forse con una risposta scontata. Quanto pesano i componenti aggiuntivi installati sulla velocità di NVDA, sia al caricamento che durante l'esecuzione?
Alberto:
Ciao Alessio,
per quanto riguarda il caricamento iniziale, più sono gli add-on attivi, più tempo impiegherà NVDA per caricarsi, questo senza alcun dubbio.
Per quanto riguarda invece durante l'esecuzione, molto dipende da come lavorano gli add-on. Ad esempio, se un add-on fornisce solo qualche script utile, che viene registrato in fase di caricamento, ma non fa null'altro finché non invochi i suoi script, allora non avrà pressoché nessun impatto sulla velocità di NVDA.
Se, viceversa, l'add-on lavora automaticamente su alcuni oggetti, dovendo quindi filtrarli durante l'esecuzione per capire se sono quelli di suo interesse, ecco che le cose possono rallentare anche di molto, se il programmatore non ha ottimizzato i controlli a dovere. Cosa simile se si inseriscono troppe correzioni nei dizionari.
Ti faccio un esempio con ColumnsReview, che sviluppo io da diversi anni: per molto tempo, l'add-on ha funzionato su questo principio: se NVDA si trova su un oggetto che è un elemento di una lista, allora registra vari script per gestirne le colonne e altri aspetti (ricerca nella lista, gestione intestazioni colonna, gestione intervallo colonne, etc). Questo veniva ripetuto ogni volta che cambiavi elemento scorrendo una lista. Se la lista aveva 300 elementi, scorrendola tutta l'add-on agiva 300 volte, più quelle in cui tu invocavi i suoi script (magari per 2 soli elementi su 300).
Da qualche tempo, invece, ho cambiato approccio: ora l'add-on si limita ad accorgersi che sei su una lista appena ci entri, dopodiché registra gli script per l'oggetto lista, e attende che tu ne invochi uno sopra uno degli elementi. Se la lista ha 300 elementi, l'add-on agirà una sola volta, più quelle in cui invocherai i suoi script (che andranno a vedere per prima cosa su quale elemento ti trovi).
Il nuovo approccio è, evidentemente, molto molto più leggero e meno invasivo.
Alberto