Jump to content

aiuto cpu!


tempqwert

Recommended Posts

Ciao ragazzi non sono riuscito a trovare una sezione apposita quindi vi prego di indirizzarmici non appena potete ma non so se esiste... sto facendo la mia tesina per la maturità e sto parlando dei processori. più o meno so come funziona dato che ho avuto a che fare con vari overclock ma se vado più sullo specifico mi trovo in difficoltà. e su internet non ho trovato risposte soddisfacenti quindi ho pensato, che c'è di meglio del proprio forum di fiducia?:Dquindi chiaritemi qualche idea vi prego!

un processore è diviso in varie parti, cu, alu, registri e blablabla... un procio da 1 ghz riesce ad eseguire 1 miliardo di calcoli al secondo... al secondo? per secondo intendiamo clock? quanto dura un clock? oppure riesce ad eseguire un miliardo di calcoli a clock?

grazie in anticipo! vi prego non bannatemi dal forum!! so che non sono ammesse domande del genere ma davvero non so più dove sbattere la testa! xD

Link to comment
Share on other sites



come non sono ammesse domande del genere? :D

anzi dovresti essere bannato solo solo per aver pensato che sarebbe stato un problema chiedere :LOLGoku:

 

Allora un processore da 1GHz ha una frequenza di clock di 1GHz vale a dire che un periodo dell'onda quadra del clock dura 1 milionesimo di secondo (1/frequenza) cioè un nanosecondo.

La potenza computazionale totale dipende dal numero di core presenti nella CPU e dall'IPC (cioè il numero di istruzioni per clock che ogni core è in grado di elaborare).

Ovviamente non è facile misurare l'IPC ancheperchè questo dipende in modo determinante dal tipo di calcoli che bisogna effettuare.

In generale una buona CPU ha una potenza computazionale di circa 50-100GFlop. L'IPC per core è più o meno compreso tra 1 e 4...

Link to comment
Share on other sites

Ciao ragazzi non sono riuscito a trovare una sezione apposita quindi vi prego di indirizzarmici non appena potete ma non so se esiste... sto facendo la mia tesina per la maturità e sto parlando dei processori. più o meno so come funziona dato che ho avuto a che fare con vari overclock ma se vado più sullo specifico mi trovo in difficoltà. e su internet non ho trovato risposte soddisfacenti quindi ho pensato, che c'è di meglio del proprio forum di fiducia?:Dquindi chiaritemi qualche idea vi prego!

un processore è diviso in varie parti, cu, alu, registri e blablabla... un procio da 1 ghz riesce ad eseguire 1 miliardo di calcoli al secondo... al secondo? per secondo intendiamo clock? quanto dura un clock? oppure riesce ad eseguire un miliardo di calcoli a clock?

grazie in anticipo! vi prego non bannatemi dal forum!! so che non sono ammesse domande del genere ma davvero non so più dove sbattere la testa! xD

 

non è cosi

 

allora tanto per iniziare se va a 1ghz, un colpo di clock dura esattamente 1/f ( T = 1/f dove T è il periodo) prima nota, la frequenza è al secondo, la frequenza di funzionamento è un fattore fisico, e indica ogni tanto tempo la cpu ritorna a fare qualcosa

 

non si parla poi di calcoli, ma di numero di istruzioni (IPC) a colpo di clock

 

ora può sembrare assurdo, da un punto di vista mentale, ma le cpu odierne ad ogni non eseguono un sola istruzione per ciclo ma N (tralasciando il numero di core), e questo determina la differenza che c'è tra una cpu nuova e una vecchia, dove a frequenze uguali ci sono prestazioni diverse

 

questo è possibile grazie al alcune tecniche costruttive (le pipeline) che permettono di eseguire piu cose a colpo di clock

si parla anche di cpu superscalare, quei però bisogna vedere la realizzazione, per parlare di superscalare, la cpu deve necessitare di più elementi costruttivi uguali

 

le pipeline sono dei "condotti" tipo catene di montaggio, dove la cpu a ogni blocco fa qualcosa (fetch, decodifica, calcolo etc) ora è importante diciamo che ogni blocco vada alla stessa velocità, altrimenti la pipeline non funziona

 

per questo le cpu moderne sono dei RISC cammuffatti da CISC, dato che l'implementazione RISC prevede istruzioni tutte della stessa lunghezza e (mi pare) sono tutte eseguite in un colpo di clock, pertanto più semplici

 

ora ad ogni colpo di clock, in teoria ogni blocco della pipeline fa uno step in avanti, nel ciclo di elaborazione (dal fetch all'output), supponendo che tutto funzioni bene. è chiaro quindi che effettivamente in un colpo di clock, la cpu ha eseguito N step di fatto, in una cpu senza pipeline ogni singolo step è eseguito sempre in un colpo di clock pertanto... N step = N colpi di clock

 

esistono poi altri approcci superscalari (esempio l'SMT) che permettono un'implementazione del calcolo parallelo nella cpu ma è un discorso abbastanza complicato, e comunque appunto ci devono essere più pezzi uguali, ma la logica è quella sopra, le cpu moderne sono tutte superscalari, dal pentium 1 in poi

 

la lunghezza della pipeline dipende da come è diviso il ciclo di fetch-execute-output in blocchi, più è "lunga", più blocchi ci sono, più sono elementari i blocchi, maggiore può essere il clock

 

perchè il clock dovrebbe dipendere dalla complessità dei blocchi? la cpu è buona parte costruita da reti combinatorie che hanno un delay nel commutare le proprie uscite, ora non so benissimo come sono realmente e fisicamente fatte le cpu moderne ma ti posso dire che l'unità di controllo (uno degli elementi fondamentali di una cpu) può essere microprogrammata (che puoi vedere come una grossa matrice dove avendo un input hai un output corrispondente a dove hai toccato diciamo) o hardwired, ovvero cablate, che sono implementate mediante macchine a stati finiti

 

queste macchine sono realizzate tipicamente da una parte di logica combinatoria e una parte di memoria, elementi che hanno per natura un delay

l'Alu stessa, in una visione molto molto semplicistica e riassumibile come un full adder, costruito puramente da logica combinatoria

 

pipeline lunghe però hanno dei problemi in caso di errore, dato che prevede uno svuotamento della pipeline pertanto perdita di tempo elaborato (motivo per cui l'architettura netburst faceva schifo=

 

poi vabbe ormai dopo sto polpettone mi sn dimenticato da dove sono partito :D

 

ora nn ho troppo tempo cmq, magari a domande più dirette ti posso rispondere in seguito, se ne sono in grado

Edited by Devil_Mcry
Link to comment
Share on other sites

ora può sembrare assurdo, da un punto di vista mentale, ma le cpu odierne ad ogni non eseguono un sola istruzione per ciclo ma N (tralasciando il numero di core), e questo determina la differenza che c'è tra una cpu nuova e una vecchia, dove a frequenze uguali ci sono prestazioni diverse

cavolo mi sembra di parlare con bill!! :asd: potresti spiegarmi un po' meglio la parte che ho quotato? non mi servono cose specifiche, mi servono cose interessanti e che attirino, curiosità, qualcosa di affascinante capito? devo farli rimanere a bocca aperta!!

Link to comment
Share on other sites

cavolo mi sembra di parlare con bill!! :asd: potresti spiegarmi un po' meglio la parte che ho quotato? non mi servono cose specifiche, mi servono cose interessanti e che attirino, curiosità, qualcosa di affascinante capito? devo farli rimanere a bocca aperta!!

 

Allora chiedo l'ausilio della grafica :asd:

 

375px-Pipeline%2C_4_stage.svg.png

 

Come puoi notare questo è un esempio, per farti capire meglio, con 4 pipeline.

Ogni colore è un istruzione diversa, se guardi attentamente vedrai che al 4° ciclo di clock tutte le istruzioni occupano una pipeline, una in fetch,una in decode, una in execute ed un in write, quindi con l'ausilio delle pipeline non si è obbligati ad una sola istruzione per clock!

 

Da questo ne deriva che le prestazioni della cpu non sono solamente collegate alla frequenza come succedeva in passato!

Link to comment
Share on other sites

considera che quella cosa che fa diversi miliardi di calcoli al secondo è stata partorita dalla mente umana, quindi non ti sentire così inferiore al PC :coolsmiley:

Semplicemente il discorso è che rispetto a noi la CPU riesce a "switchare" molto più velocemente delle nostre sinapsi, che hanno delle limitazioni fisiche intrinseche. Tuttavia il PC non è ancora in grado di riprodurre alcuni ragionamenti molto complessi che il cervello può invece fare.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...