[Guida] all'overclock di AMD Ryzen
Inviato: lunedì 16 aprile 2018, 10:33
Guida all’overclock di AMD Ryzen
Il contenuto di questo thread (dal primo al quarto post) è rilasciato con licenza "Creative Commons Attribution-Noncommercial-Share Alike 2.5". La paternità dell'opera deve essere riportata e visibile in modo libero qualora tale guida venga riprodotta su altri siti web o altri formati (http://creativecommons.org/licenses/by-nc-sa/2.5/it/).
Non mi ritengo responsabile di eventuali guasti in seguito all’esecuzione delle procedure qui descritte. Invito inoltre alla lettura completa della guida prima di iniziare con la procedura di overclock.
Con questa guida desidero fornire ai nuovi arrivati nella famiglia delle CPU AMD Ryzen le nozioni di base per l'ottenimento dei primi risultati in overclock.
Con questa guida desidero fornire ai nuovi arrivati nella famiglia delle CPU AMD Ryzen le nozioni di base per l'ottenimento dei primi risultati in overclock.
AVVISO: non rispondo a richieste d'aiuto via PVT, perchè lo scopo di questo thread è quello di AIUTARE chi si trova in difficoltà, e chiunque deve poter partecipare con le proprie conoscenze ad aiutare gli altri.
Overcloccare significa, come dice il nome stesso, aumentare la frequenza di funzionamento di un dispositivo. Tale pratica è spesso accompagnata dalla pratica dell’overvolt, ovvero un aumento delle tensioni di funzionamento, necessario per mantenere in piena stabilità operativa la cpu. Il risvolto della medaglia delle due pratiche, ed in particolare dell’overvolt, è l’aumento della potenza dissipata (che dipende linearmente dal quadrato della tensione applicata e dalla frequenza di switch) che porta all’aumento dei consumi e quindi della temperatura di funzionamento. Un aumento eccessivo di quest’ultima può portare ad instabilità della cpu andando quindi ad annullare i benefici derivanti dall’aumento di tensione applicata. A causa di questo comportamento ricorsivo è fortemente consigliato a chi non è in possesso di un dissipatore performante (e quindi, ad esempio, per chi è in possesso del dissipatore fornito con la cpu) di overcloccare solo con tensione default o con overvolt leggeri.
La guida è orientata a tutti i processori della famiglia Ryzen; la tabella seguente riporta tutti i processori attualmente presentati da AMD, con alcune informazioni utili (frequenza a default, numero di core / thread, TDP, ecc..):
L'overclocking di Ryzen è abilitato solo sulle schede madri con chipset a base X370, X300 o B350.
Fatta questa dovuta introduzione, aiutandoci con le immagini che seguono, passiamo ad introdurre brevemente i principali parametri del BIOS che bisogna conoscere per overcloccare queste cpu (i nomi dei parametri del BIOS potrebbero differire a seconda della motherboard utilizzata, in questo caso gli screenshot si riferiscono a una scheda madre Gigabyte AX370 Gaming 5 con bios ver. F22b):
Menù base per l'accesso ai parametri della cpu.
Parametri relativi alla frequenza base (Host Clock Value), al moltiplicatore (CPU Clock Ratio), ai parametri avanzati della CPU (XFR, risparmi energetici, ecc...), all'abilitazione dei timing XMP delle ram e alla frequenza di quest'ultime.
- Host Clock Value: rappresenta la frequenza di riferimento da cui vengono ottenute successivamente, tramite moltiplicatori e divisori, la frequenza finale della cpu, la frequenza di Infinity Fabric (bus di interconnessione tra moduli CCX - modulo a 4 core - che AMD ha sviluppato per costruire le CPU Ryzen in modo modulare) e la frequenza delle ram. Di conseguenza, una modifica di questo parametro porterà alla modifica delle frequenze di tutte le componenti appena nominate. Il valore a default è 100 MHz (poco meno - 99,80 MHz circa con Spread Spectrum abilitato) ed è uguale per tutte le cpu AMD.
NB: questo parametro è modificabile solo su schede madri di gamma alta che dispongono di un generatore di clock esterno, altrimenti non è modificabile (come nel caso della Gigabyte AX370 Gaming 5). - CPU Clock Ratio: è il moltiplicatore della CPU. Moltiplicando questo valore per il CPU Host Clock Control si ottiene la frequenza finale della CPU. Tale valore può essere modificato a passi di 0.25x.
- Extreme Memory Profile (X.M.P.): tecnologia sviluppata da Intel, che consente, richiamando un profilo precaricato nelle ram, di abilitare tutti i timings e i subtimings certificati dal costruttore alla massima frequenza certificata.
- System Memory Multiplier: rappresenta il moltiplicatore che setta la frequenza del bus Infinity Fabric interno alla CPU (nel caso della CPU in mio possesso, un Ryzen 7 1700, interconnette 2 moduli CCX da 4 core) che è uguale alla frequenza delle ram. Il valore finale di frequenza si ottiene anche questa volta moltiplicando tale valore per il Host Clock Value. I moltiplicatori differiscono a seconda della scheda madre in uso. Valori tipici per le ddr4 sono 21,33x – 24,00x - 26,66 - 29,33x - 30,66x - 32,00x - ...
Parametri avanzati della CPU tra cui Core Perfomance Boost (detto anche XFR/XFR2), risparmi energetici (Cool & Quiet, C-State, ...), abilitazione/disabilitazione di singoli core (Downcore control) e del Symultaneous Multi Threading (SMT Mode).
- Core Performance Boost (XFR / XFR 2): è una tecnologia sviluppata da AMD che consente di incrementare la frequenza dei core in funzione del carico richiesto (l'equivalente dello Speedstep di Intel) andando oltre alla frequenza massima del turbo (50-100 MHz a seconda della CPU) qualora le temperature lo consentano.
Va segnalato che per garantire stabilità durante l'attivazione dell'XFR, la tensione sui core coinvolti può salire per brevi istanti a livelli molto alti (1,45 V): si tratta di un comportamento normale, certificato da AMD, che non impatta nella vita della CPU.
Quindi:
- con software che caricano pochi core, questi verranno fatti lavorare in automatico a una frequenza prossima alla frequenza turbo e leggermente superiore se le temperature rientrano nella soglia di sicurezza mentre gli alteri core lavoreranno alla frequenza base o inferiore;
- con software che caricano tutta la cpu questa lavorerà alla frequenza base o leggermente superiore se le temperature lo consentono.
Spiegazione funzionamento Turbo e XFR. - AMD Cool & Quiet function: la tecnologia C&Q è presente sulle CPU AMD da molti anni e consente di ridurre la frequenza e la tensione sui core nel momento in cui questi non sono sollecitati da carichi software.
- SVM Mode: consente di abilitare le funzioni integrate nella CPU di accelerazione delle virtual machine.
- Global C-state Control: consistono in funzionalità di risparmio energetico più avanzate rispetto al C&Q che consentono di portare fino allo spegnimento completo del core o di parti di esso in caso di inutilizzo. Al seguente link: https://software.intel.com/en-us/articl ... c383778910 potete trovare interessanti approfondimenti da parte di Intel.
- Downcore control: opzione che consente di spegnere i core della CPU.
- Simultaneous Multithreading (SMT): equivalente all'Hyperthreading di Intel, consente ad ogni singolo core di gestire più thread in contemporanea. Nel momento in cui le istruzioni di un thread rimangono bloccate nella pipeline il processore procede ad elaborare un secondo thread al fine di mantenere le unità di elaborazione sempre attive. I singoli thread possono infatti venire bloccati nella loro esecuzione da molteplici fattori, quali ad esempio problemi di recupero dei dati da elaborare (per esempio un cache miss) o per problemi di dipendenza dai dati che si trovano in elaborazione presso altre istruzioni in esecuzione. Dai test effettuati, l'SMT è risultato leggermente più efficiente rispetto all'Hyperthreading proposto da Intel.
Configurazione ventole.
In questa schermata è possibile configurare la modalità di funzionamento delle ventole. Ogni produttore di schede madre ha la propria modalità di controllo e sta a noi la scelta se preferire un sistema fresco e rumoroso con ventole ad alta velocità o un sistema con temperature leggermente più alte, ma silenzioso durante il funzionamento (personalmente preferisco quest'ultima filosofia).
High Precision Event Timer (HPET).
- High Precision Event Timer (HPET): si tratta di un contatore hardware utilizzato per sincronizzare flussi multimediali. Viene usato dal SB chipset per comunicare con le periferiche utilizzando un timer ad alta precisione. Non viene usato da oltre un decennio della CPU a meno di non modificare le impostazioni del sistema operativo. Lasciare il valore di default./list]
Vediamo ora brevemente le voci di maggiore interesse riguardanti l’overvolt:
Tensioni di funzionamento.
Schermata di riepilogo tensioni di funzionamento.
- CPU Vcore: rappresenta la tensione applicata alla CPU. Come detto in fase introduttiva, l’aumento del valore di default è utile per migliorare la stabilità in overclock, ma porta a un aumento della temperatura di funzionamento che può essere causa di instabilità.
Il Vcore applicato istantaneamente può essere letto in Windows utilizzando HWInfo facendo riferimento al parametro CPU Core Voltage (SVI2 TFN).
- Dynamic Vcore: non presente in tutte le schede madri, rappresenta l'offset di tensione da sommare al vcore base. Si utilizza in caso di OVERCLOCK DINAMICO. Si applica sia alla tensione in idle che alla tensione a pieno carico.
- VCore SOC: rappresenta la tensione del SOC Ryzen. Utilizzata principalmente per stabilizzare il funzionamento delle RAM.
- Dynamic VCore SOC: non presente in tutte le schede madri, rappresenta l'offset di tensione da sommare al VCore SOC. Se ne sconsiglia l'utilizzo in quanto può portare a instabilità del memory controller.
- DRAM Voltage: tensione applicata alle DDR4.
- CPU Vcore Loadline Calibration: la funzionalità di calibrazione della linea di carico è una funzionalità introdotta da alcuni anni il cui scopo consiste nello stabilizzare il Vcore in fase di carico elevato riducendo il vdrop. A pieno carico infatti il VCore può abbassarsi portando ad instabilità; un adeguato livello di Loadline Calibration consente di compensare questo fenomeno stabilizzando il sistema.
- VAXG Loadline Calibration: funzionalità di calibrazione presente principalmente su schede madri Gigabyte. Non si hanno molti dettagli in merito, ma sembra sia legato alla parte di alimetazione dei chip integrati nelle APU AMD. Si consiglia di utilizzare lo stesso livello impostato per la CPU Vcore Loadline Calibration.
- E’ consigliato disabilitare il C&Q e i risparmi avanzati C-state nelle fasi di test dell'overclock. Posso essere riattivati, se si desidera risparmiare qualche Watt e mantenere la CPU a una temperatura più bassa, dopo aver trovato i limiti di stabilità della CPU.
- HPET va disabilitato in quanto aumenta le latenze del sistema riducendo le prestazioni globali. Ma anche no!
- Core Performance Boost o XFR/XFR2 vanno disabilitati in overclock in quanto possono portare a instabilità andando a variare in modo automatico e imprevedibile la tensione e la frequenza della CPU in fase di stress test. Deve essere abilitato solo se si decide di procedere all'overclock tramite la funzionalità Precision Boost Override disponibile sui Ryzen 2 (descritta nella guida by LOLN1) nel secondo post.
- CPU Vcore Loadline Calibration e VAXG Loadline Calibration è consigliabile impostarli al livello High o Turbo (livello 3 e 4 su 5 - Low, Normal, High, Super, Extreme). La scelta tra i 2 livelli va fatta verificando sotto carico (OCCT) quale tra i 2 livelli consente di avere una CPU Core Voltage (SVI2 TFN) e un SoC Voltage (SVI2 TFN) (su HWInfo) più prossimi alle tensioni Vcore e Vsoc impostate nel bios.
- E' consigliato l'utilizzo di un dissipatore aftermarket di buona fattura. Seppur i Ryzen siano CPU tendenzialmente "fresche" e AMD fornisca in dotazione buoni dissipatori, se si utlizzano tensioni oltre 1,3 V il calore generato diventa di difficile smaltimento. Per questo è consigliato a chi vuolte cimentarsi nell'overclock con il dissipatore AMD di non superare i 3,5-3,6 GHz e 1,28-1,3 V sul Vcore monitorando continuamente la temperatura della CPU al fine di non superare i 75 gradi.
- AMD "certifica" le CPU Ryzen in overclock fino a un massimo di 1,425 V, ovvero l'invecchiamento della CPU per elettromigrazione fino a tale tensione è definito normale. In realtà, nell'uso normale di tutti i giorni è consigliato non superare 1,35 V.
- Le CPU Ryzen serie 1x00 e le APU 2x00G raggiungono mediamente frequenze massime in overclock che possono oscillare tra 3,7 e 4.0-4.05 GHz con 1,35 V, mentre i Ryzen serie 2x00 con la medesima tensione possono essere overcloccate in un range tra 4,0 e 4,2-4,3 GHz.
- Il VSOC può essere impostato in sicurezza fino a un massimo di 1,2 V. Questo componente genera però parecchio calore pertanto, durante i test in overclock della CPU, si consiglia di impostarlo a 1,125 V. Successivamente, travata la stabilità della CPU si potrà affinare questa tensione andando a ridurla fino a che il sistema rimane stabile (solitamente un valore ottimale può essere identificato tra 1,1 e 1,15 V).
- Qualora si preveda di virtualizzare sistemi operativi è consigliato abilitare la voce riguardante la virtualizzazione nel BIOS. Questa funzionalità tende ad utilizzare maggiormente la CPU e quindi a “scaldarla” di più. Per questo, se si prevede di utilizzarla, è bene averla attiva in fase di test.
- La voce “Spread Spectrum”, qualora fosse presente nel BIOS, è consigliato impostarla su “Disabled”.
- Tutte le voci non considerate finora non sono strettamente necessarie ai fini di un buon overclock e starà all’appassionato interessato ad overclock estremi informarsi personalmente sulle voci che possono portare a risultati migliori.
- Ricordo che nel periodo estivo, a causa delle maggiori temperature, potrebbe essere necessario ridurre l’overclock rispetto al periodo invernale per garantire stabilità.
- Last but not least: ogni CPU fa storia a sé. E’ inutile dire “Tizio fa 4GHz ed io no”, perché i risultati dipendono dalla bontà della cpu e delle altre componenti del sistema e non sono prevedibili a priori.
- CPU-Z (http://www.cpuid.com/): software per monitorare le frequenze e le tensioni della CPU.
- Hwinfo (https://www.hwinfo.com/): software per monitorare le temperature del sistema (modalità sensor-only).
- OCCT (http://www.ocbase.com/index.php/download): stress test necessario per testare in modo approfondito la stabilità del sistema.
- Cinebench R15 (http://www.maxon.net/products/cinebench/overview.html): test per simulare una sessione di rendering. Sfrutta il multicore e consente di eseguire un rapido test di stabilità del sistema.
- MemtestHCI (http://hcidesign.com/memtest/): programma di test delle ram.
N.B.: è consigliabile testare un componente per volta, motivo per cui mentre si testa la CPU, le memorie DDR4 dovranno essere impostate a una frequenza non superiore a quella certificata da AMD (2400 MHz con 4 banchi, 2666 MHz con 2 banchi - sempre che le ram in possesso garantiscano tali frequenze). Individuati i limiti di entrambi i componenti singolamente, il sistema andrà ritestato con entrambi i componenti in overclock così da validarne definitivamente la stabilità.
N.B. 2: in questa guida non tratterò la tecnica dell'overclock tramite aumento dell'Host Clock Value. Questa pratica ha infatti perso valore con Ryzen in quanto l'estrema granularità a passi di 25 MHz per la CPU e l'elevato numero di moltiplicatori disponibili per le ram rende complicato (un'ulteriore variabile in gioco che impatta su più componenti) e praticamente superfluo la variazione della frequenza base. Per chi è interessato a sperimentare con una scheda madre che lo consente, può comunque provare anche questa pratica di overclock.
OVERCLOCK TRAMITE P-STATE
Una delle modalità di overclock consiste nell'andare a modificare la frequenza e la tensione dei p-state. Quest'ultimi sono una serie di livelli di frequenza-tensione integrati nelle CPU moderne che consentono di adattare la coppia f-V al carico richiesto dal software in uso.
In realtà molto spesso si va ad agire sul solo p-state0 che rappresenta il p-state relativo alla frequenza più alta ed è ciò che andremo a fare in questa guida.
Il vantaggio di questa modalità di overclock consiste nel fatto che la CPU continua a lavorare come a default, abilitando quindi i massimi risparmi energatici certificati da AMD in funzione del carico e andando a modificare solo la frequenza massima disponibile.
Va però segnalato che non tutte le schede madri presenti sul mercato dispongono di questa funzionalità (ad esempio Gigabyte ha introdotto questa funzionalità a un anno dal lancio delle schede madri) e in alcuni casi (come ad esempio con alcune schede madri Asus) si rischia il blocco del sistema qualora si impostino valori errati che neanche un clear cmos può azzerare portando all'RMA della scheda.
Per abilitare questa modalità è necessario impostare il CPU Clock Ratio e il CPU Vcore su AUTO.
Questo consentirà di abilitare i parametri relativi ai vari p-state, ed in particolare al p-state0 che è quello che andremo a modificare:
Schermata p-state.
Una volta impostato il p-state0 su Custom vengono abilitate le voci:- PSTATE0 FID
- PSTATE0 DID
- PSTATE VID
Core Speed = Reference Clock * FID (multiplier) / DID (divider)
consente di applicare la frequenza, mentre il valore di PSTATE VID (esadecimale) definisce la tensione secondo la formula:
Core Voltage = 1.55-0.00625*VID.Mettendo da parte la teoria, al seguente link è possibile scaricare un file che permette in modo semplice di calcolare i 3 parametri in funzione della frequenza della CPU e della tensione che desideriamo applicare.
Ryzen P-state Calculator.
A questo punto è possibile iniziare con l'overclock.
Impostiamo quindi la tensione al massimo livello consigliato in sicurezza, ovvero 1,35 V con un disspatore aftermarket (PSTATE VID = 20) e 1,3 V con il dissipatore AMD (PSTATE VID = 28) e impostiamo una frequenza di 3,6 GHz (PSTATE0 FID = 144 e PSTATE0 DID = 8).
A questo punto è necessario verificare la stabilità del sistema, pertanto apriamo HWInfo (così da monitorare la temperatura della CPU) ed eseguiamo 3 run consecutivi di Cinebench R15.
Qualora il sistema completi regolarmente i 3 run e le temperature siano abbondantemente sotto i 70 gradi procediamo ad aumentare la frequenza della CPU di 100 MHz (PSTATE0 FID = 148 e PSTATE0 DID = 8) e ripetiamo i 3 run di Cinebench.
Se anche questa volta il sistema completa regolarmente i bench, procediamo ricorsivamente ad aumentare di 100 MHz la frequenza della CPU e a monitorare le temperatura finchè il sistema crasha, non completa i test o il punteggio risulti inferiore o uguale a quello ottenuto con 100 MHz in meno.
A questo punto è necessario procedere a verificare in modo più preciso la stabilità del sistema, e per fare questo ci affidiamo a OCCT, sia in modalità Large Data Set che Linpack.
Va tenuto in considerazione che dal momento in cui i 3 run di Cinebench non vengono completati, la frequenza stabile è indicativamente 100 MHz inferiore a quella dove Cinebench non è stato completato. Ad ogni modo vale la pena tentare lo stress test a 50 MHz meno rispetto alla frequenza che non ha consentito di completare Cinebench.
Lanciamo quindi OCCT in modalità Large Data Set e lo eseguiamo per un tempo di circa 2-3 ore.
Se il test viene completato procediamo con un ulteriore test con OCCT, questa volta in modalità in modalità Linpack (memoria 90%, 64 bits, AVX Capable Linpack e Use all logical cores) e effettuiamo un altro run da 2-3 ore.
Se i test- vengono entrambi superati significa che il sistema può essere considerato stabile.
- non vengono superati, si può procedere come segue:
- il VSOC impatta sulla stabilità della CPU, pertanto prima di abbandonare il tentativo è consigliabile fare un'ultima prova aumentando il VSOC e ritestando il sistema (senza superare il valore massimo di 1,2V).
- se l'aumento del VSOC non ha portato la stabilità ricercata, sarà necessario ridurre la frequenza della CPU di almeno uno step (0,25x) e riprocedere ai 2 test con OCCT fino ad ottenere il superamento di entrambi i test.
Va infine segnalato che la modalità di overclock descritta è la via più sicura in quanto prevede di fissare la tensione e verificare la massima frequenza raggiungibile, ma quando si avrà coscienza della pratica e della CPU in possesso si potrà operare in modalità duale, ovvero fissare la frequenza che si desidera ottenere e "giocare" sulle tensioni al fine di ottenerla. - CPU Vcore: rappresenta la tensione applicata alla CPU. Come detto in fase introduttiva, l’aumento del valore di default è utile per migliorare la stabilità in overclock, ma porta a un aumento della temperatura di funzionamento che può essere causa di instabilità.