C'è qualcosa che possiamo fare per non perdere la stessa performance delle patch Meltdown e Spectre?

loghi di spettro e fusione su un colpo di stampo del wafer

Intel voleva scusarlo Meltdown e Spectre era un suo problema, poi ha rettificato e fatto una dichiarazione pubblica in cui citava AMD e ARM come partner tecnologici con cui stava lavorando per risolvere il problema e in questo modo li ha evidenziati anche loro, ma sia ARM che AMD non lo sono influenzato a causa di queste vulnerabilità come Intel, dal momento che Meltdown è quasi esclusivo dei microprocessori Intel (e alcuni ARM) e Spectre colpisce più microprocessori, ma non nella stessa misura e Intel prende di nuovo la parte peggiore.

Sono stati anche pronti a dirlo perdita di prestazioni sarebbe quasi nullo, che gli utenti non se ne accorgessero dopo aver installato le patch. Ed è vero che non c'è una perdita così drammatica come previsto nella maggior parte dei casi, ma è vero che a seconda della generazione del tuo chip la perdita può essere minima o piuttosto grave. Lo hanno già riconosciuto e ora hanno già effettuato alcuni test con benchmark per calcolare le perdite che puoi avere nell'Intel dopo aver installato le patch corrispondenti sul tuo sistema, e sebbene i test siano stati effettuati con Microsoft Windows, per Linux e altri sistemi come macOS saranno simili ...

Perdite di rendimento stimate ...

Sostituzione della CPU con un escavatore giocattolo

Come ho detto, quella perdita di prestazioni del 30% non è proprio così, almeno negli ultimi modelli di CPU rilasciati. Mentre più vecchio è il tuo chip, maggiore è la perdita di prestazioni Significherà l'aggiornamento con le patch Meltdown e Spectre. I test effettuati da Intel dovrebbero essere presi con una pinzetta, poiché suppongo che i benchmark scelti vadano a vantaggio del produttore e non siano stati messi nel peggiore dei casi, inoltre le misurazioni sono state effettuate tenendo conto delle applicazioni più quotidiane che un utente utilizza media , ma come sai a seconda del software può variare.

Intel ha anche fatto un altro trucco per le misurazioni, e questo è utilizzare unità SSD in tutte le attrezzature che ha utilizzato, qualcosa che sarebbe uno dei miglioramenti che potremmo apportare noi stessi per combattere l'impatto. Sì, se cambiamo un HDD per un SSD, la velocità di accesso per quest'ultimo sarebbe molto più veloce e lo svuotamento del TLB significherebbe una perdita inferiore a quella che potrebbe essere data in un disco rigido convenzionale. Pertanto, se si dispone di un HDD, i dati di questi test Intel sono piuttosto ottimistici e non ci si dovrebbe aspettare di ottenere i dati da questi benchmark. Inoltre i test non sono stati effettuati con tutti i modelli ma ne hanno scelto uno per ogni generazione, suppongo che abbiano nuovamente selezionato quelli che mostrano i dati più positivi per l'immagine del brand.

I risultati sono stato:

  • Intel Core di ottava generazione (Kaby Lake e Coffe Lake): Si stima che l'impatto medio sulle prestazioni sarebbe del 6% per la maggior parte delle attività e nelle applicazioni web come l'esecuzione di codice JavaScript potresti vedere una perdita fino al 10%.
  • Intel Core di settima generazione (Kaby Lake-H): qui per applicazioni da ufficio e non le prestazioni calerebbero del 7%, un punto in più rispetto al caso precedente e nel caso di applicazioni web aumenterebbero anche di poco rispetto all'ottavo.
  • Intel Core di sesta generazione (Skylake-S): circa l'8% di solito ... Ma un test specifico chiamato Responsiveness di SYSMark 2014 SE ha rilevato perdite fino al 79% anche quando si utilizza l'SSD.
  • Intel prima di questo: Beh, al momento non sono stati effettuati test, almeno non pubblici, ma ad ogni generazione dovresti aggiungere più punti di perdita a quanto visto negli ultimi tre, poiché questi ultimi tre dovrebbero essere quelli in cui il la perdita è molto inferiore. E i processori di 10 anni fa, ad esempio? Vedremo la risposta degli utenti ...

Con i carichi di lavoro testati da Intel le perdite sono queste per quelle generazioni, ma ...e con carichi di lavoro più elevati? Penso che presto ci saranno più controversie da parte degli utenti scontenti. Certo, i giocatori possono essere un po 'più calmi perché i videogiochi non hanno bisogno di troppe chiamate al sistema per il loro funzionamento, il calo delle prestazioni per loro non è così evidente e può essere intorno al 2% e l'FPS non è praticamente danneggiato.

Come migliorare le prestazioni dal punto di vista fisico?

robot che sostituisce la cpu

Da hardware possiamo investire un po 'di soldi per compensare la perdita di prestazioni:

  • CPU: possiamo aggiornare la CPU a un modello più moderno se il nostro socket e chipset lo supportano, quindi i guadagni derivanti dall'inclusione di una microarchitettura più moderna o di un processore con caratteristiche superiori potrebbero camuffare questa perdita di prestazioni, sebbene ovviamente la stessa del tuo chip precedente, il nuovo avrà anche una perdita di prestazioni rispetto al sistema senza patch. La cosa logica sarebbe non aggiornare il microprocessore a meno che non ne abbiamo uno molto vecchio e la perdita è nota e l'abbiamo già ammortizzata per pensare a un cambiamento.
  • RAM: Anche espandere la RAM non danneggerebbe, poiché potremmo aumentare un po 'le prestazioni e rendere più sopportabile la perdita di prestazioni. In questo caso forse è per chi ha un microprocessore più moderno e non vuole cambiarlo ma per un esborso di non troppo denaro potremmo confrontare un nuovo modulo evitando così l'utilizzo della memoria secondaria (SWAP) per memorizzare il processo dati e che il microprocessore impiega ancora più cicli per drenare dal TLB.
  • Disco rigido: Può anche essere una buona opzione includere un SSD nella nostra attrezzatura, questo migliorerà notevolmente le prestazioni riducendo significativamente il tempo di accesso a questa memoria rispetto agli HDD. Questo è il motivo per cui l'impatto sulle prestazioni con gli SSD sarà molto inferiore, motivo per cui Intel li ha utilizzati per eseguire i test. Puoi sempre lasciare l'HDD come disco per i dati e l'SSD per il software.
  • Overclock: Finché sai cosa stai facendo, forse ora è un buon momento per scommettere sull'overclock del tuo sistema per sbloccare qualche centinaio di megahertz nella tua CPU ... Ma non dimenticare che questo può causare problemi di stabilità in alcuni chip e soprattutto dovresti migliorare il raffreddamento, quindi implicherà anche un costo economico.

Certamente nessuna delle modifiche hardware è troppo economicae se vogliamo recuperare parte della performance, dovremo spendere soldi. Ovviamente non tutti gli utenti devono farlo, solo quelli per i quali le prestazioni sono fondamentali. Inoltre, se la tua CPU è di ultima generazione, vedi che le perdite non sono così enormi, e dovresti considerare un cambio di componenti solo quando la tua attrezzatura è più vecchia o quando le applicazioni che usi notano di più a scapito di patch come database, ecc.

Come migliorare le prestazioni del software?

Lettering su sfondo scuro

Scartare le spese di denaro per toccare il nostro hardware dovremmo chiederci se con lo stesso hardware che abbiamo possiamo fare qualcosa nella nostra distribuzione GNU / Linux in modo che la perdita di prestazioni non sia così evidente. La risposta è che probabilmente possiamo fare qualcosa ed è pratica che cambiando le impostazioni può aiutare le prestazioni. E sicuramente alcune di queste configurazioni già conosci:

  • AMD: Se hai una CPU AMD dovresti evitare le patch, anche se questo è un rischio, poiché questi chip non sono completamente privi di Spectre ma è vero che il rischio è molto più basso a causa delle differenze architettoniche tra Intel e AMD ... Comunque Prima o poi arriverà un kernel in cui si hanno già queste patch seriali e non sarebbe bene utilizzare un kernel senza aggiornarlo per altri possibili problemi. Il migliore è un meccanismo di configurazione per disabilitare questo su alcune CPU ...
  • Scambiabilità: Non toccherei particolarmente il parametro del kernel relativo alla pressione della cache, ma potremmo modificare lo Swappiness soprattutto se abbiamo un HDD, poiché nel caso di avere un SSD la differenza sarebbe minore. Il valore di Swappines fa sì che il kernel modifichi la priorità di utilizzo di RAM / SWAP. Un valore di 0 o basso significa che lo SWAP non verrà utilizzato tanto, quindi trarrà un piccolo vantaggio dalla perdita di prestazioni dopo l'installazione delle patch Spectre e Meltdown. Tuttavia, sarebbe consigliabile avere una grande RAM in modo che questo passaggio non influisca sulle prestazioni d'altra parte. Se hai una buona capacità RAM e un HDD, evita valori alti o vicini a 100 perché faranno un uso maggiore della partizione SWAP di swap e lasceranno la RAM più vuota, quindi ci vorrà più tempo per accedere ai dati e alle istruzioni ospitate lì . Per vedere il valore corrente del tuo Swappiness possiamo usare il cat concatenatore e modificare il valore sysctl, ad esempio per utilizzare il 10% di SWAP e il 90% per la RAM:
cat /proc/sys/vm/swappiness

sysctl -w vm.swappiness=10

  • Applica ambienti desktop leggeri o rinunciare totalmente a un ambiente grafico, quando possibile e l'utente si sente a proprio agio con la modalità testo, è una soluzione radicale ma che contribuisce enormemente alle prestazioni. Se nel tuo caso non vuoi rinunciare ai vantaggi delle GUI, puoi optare per una distro leggera. Ricorda che qualsiasi carico di lavoro che porti via significa risorse gratuite che possono essere utilizzate per altri scopi.
  • E con quanto ho commentato nel paragrafo precedente per dire che sarebbe anche una buona idea impedire a tutti quei demoni di servizi che non utilizziamo. Questo non solo migliora le prestazioni, ma anche la sicurezza. Il comando kill può anche essere il tuo alleato per eliminare i processi non necessari.
  • Se non sai come configurare SELinux adeguatamente meglio non usarlo, optare per altri meccanismi di sicurezza. Anche se migliora enormemente la sicurezza ma è molto pesante, e se è configurato in modo errato potrebbe non valere l'enorme perdita di prestazioni che potrebbe supporre.
  • Compilare sempre il software dalla fonteÈ inoltre possibile utilizzare flag di compilazione specifici per ottimizzare le istruzioni per la CPU specifica, migliorando le prestazioni.
  • Crea un file kernel più leggero possibile eliminando tutti quei controller che non utilizziamo per non generare un'immagine troppo grande, e se sono secondari, non contrassegnarli in modo che siano inclusi all'interno del kenel, ma come moduli. Le opzioni di configurazione relative alla CPU che troverai nella configurazione possono anche ottimizzare molto il lavoro.
  • Scegli un buon file system:
    • btrfs: buone prestazioni complessive, anche migliori di ext4 quindi sarebbe l'opzione migliore.
    • ext4: buone prestazioni complessive.
    • JFS: utilizza pochissimo la CPU, quindi è un'opzione da considerare.
    • XFS: se gestisci file molto grandi, come un database sarebbe l'opzione migliore per le sue prestazioni. D'altra parte, per un utente normale può essere dannoso poiché le sue prestazioni peggiorano con file di piccole dimensioni.
    • ReiserFS: l'opposto del precedente, buone prestazioni per file piccoli.
  • Non ti consiglio di riservare spazi di memoria RAM e monta un qualche tipo di FS lì come alternativa a un SSD o carica il / tmp lì, poiché è vero che migliorerà il tempo di accesso per quei dati ospitati lì ma userà anche di più la CPU. Quindi evita questo tipo di pratica o usa compcache, ecc.
  • Ci sono anche software per il miglioramento delle prestazioni del nostro sistema, quindi sarebbe opportuno utilizzare di tanto in tanto questo software di manutenzione per migliorare le prestazioni. Ad esempio verynice ... E ora che ho scritto questo nome mi sono appena ricordato comandi come nice, renice e ionice che possono essere particolarmente rilevanti in questi casi. Ne abbiamo già parlato in LxA.
  • Ci sono anche Tricks online per diversi programmi, se ne usi frequentemente puoi cercare questi trucchi per velocizzarli. Ad esempio per Firefox, LibreOffice, SSH, ecc.

Non dimenticare di lasciare il tuo commenti, dubbi o suggerimenti...


Lascia un tuo commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati con *

*

*

  1. Responsabile del trattamento: AB Internet Networks 2008 SL
  2. Scopo dei dati: controllo SPAM, gestione commenti.
  3. Legittimazione: il tuo consenso
  4. Comunicazione dei dati: I dati non saranno oggetto di comunicazione a terzi se non per obbligo di legge.
  5. Archiviazione dati: database ospitato da Occentus Networks (UE)
  6. Diritti: in qualsiasi momento puoi limitare, recuperare ed eliminare le tue informazioni.

  1.   Aaa suddetto

    E perché vogliono così tante prestazioni se usano i PC per giocare con carta bianca e guardare Facebook?

  2.   Luis suddetto

    Nel mio Lenovo G550 (T4200) è abbastanza evidente e lo uso per i multimedia.

  3.   Luis suddetto

    lasciando gentoo