Come rallentare il computer (a scopo di test)? [chiuso]

18

Come molte persone concordano, incoraggiare gli sviluppatori a creare codice veloce dando loro macchine lente non è una buona idea . Ma c'è un punto in questa domanda. La mia macchina di sviluppo è veloce, e di tanto in tanto scrivo codice che è disturbante inefficiente, ma ciò diventa evidente solo quando viene eseguito su macchine di altre persone.

Quali sono alcuni buoni modi per rallentare temporaneamente una macchina dev con turbocompressore? La nozione di "velocità" include diversi fattori, ad esempio:

  • Frequenza di clock della CPU.
  • Quantità di core della CPU.
  • Quantità di memoria e cache del processore.
  • Velocità dei vari bus.
  • Disk I / O.
  • GPU.
  • ecc.
posta Joonas Pulakka 02.12.2010 - 09:21
fonte

5 risposte

38

Esegui i tuoi test in una macchina virtuale con memoria limitata e un solo core.

Le vecchie macchine che la gente potrebbe avere ora sono per lo più oggetti di epoca Pentium 4. Non è irrealistico - ne sto usando uno anch'io in questo momento. Le prestazioni single core su molti PC correnti normalmente non sono molto migliori e possono essere peggiori. Le prestazioni della RAM sono più importanti delle prestazioni della CPU per molte cose comunque e, limitando un po 'più duramente rispetto a un vecchio P4 da 1 GB, lo compensi un po'.

In caso contrario, se sei disposto a spendere un po ', acquista un netbook. Esegui i test su questo.

    
risposta data 02.12.2010 - 09:37
fonte
11

Il modo per individuare l'inefficienza significativa dell'algoritmo è di profilare il codice. Il modo per catturare l'uso eccessivo della memoria è innanzitutto capire quanta memoria utilizza il target, quindi progettare di conseguenza e testare regolarmente in quell'ambiente.

Se stai scrivendo codice threadato, test su più macchine con diverse velocità della CPU ti aiuterà a mettere in evidenza specifici bug legati alla temporizzazione nella gestione dei thread, ma un test unitario aggressivo della logica dei thread è un must.

    
risposta data 02.12.2010 - 12:34
fonte
10

Qualsiasi cosa tu faccia per rallentare la tua macchina sarebbe probabilmente un trucco.

Ecco alcuni suggerimenti:

  • Utilizza macchine virtuali
  • Esegui il profilo del codice sulla tua macchina, cercando i colli di bottiglia
  • Utilizza una vecchia macchina per "test delle prestazioni"
risposta data 02.12.2010 - 12:42
fonte
9
risposta data 02.12.2010 - 09:33
fonte
3

Realizza che questa è una domanda piuttosto vecchia, ma per chiunque altro in questa situazione; potresti provare CPUKiller. Fondamentalmente è una piccola app che puoi configurare per consumare% diversi del tuo processore. link

    
risposta data 21.07.2011 - 10:17
fonte

Leggi altre domande sui tag