CPU, cores, threads and cache

Please let me know if I'm providing the overview at the wrong level of detail :)

1+2)
Physical core - the actual hardware executing the code
Logical core - what OS sees as some (possibly virtualized) device capable of executing the code
Thread (of execution) - a piece of code executed with its own state
HyperThreading (and whatever the AMD name for this is) - technology where each physical core provides two logical cores to the OS (each physical core executes two independent pieces of code at once)
=> 1 physical core = 2 logical cores = 2 simultaneously executed threads

3) As long as you are within the specified frequency for the CPU you should not get any instability. When you start overclocking you're entering the danger zone. It kinda doesn't matter if you are overclocking from 2 GHz to 2.2 GHz or from 4 GHz to 4.4 GHz. You can melt your CPU in both cases.

The maximum frequency of CPU is determined by how fast the electrical signal can propagate through the actual CPU hardware. Each CPU has slight manufacturing deviations so the max achievable frequency is different for each CPU (even within the same model). When you get past this max frequency, you'll get system instability simply because some values within the CPU will start to get used before they are actually computed or transported to where they are needed.

The elecrtical signal propagation speed is influenced by voltage. The higher the voltage the higher the propagation speed => higher voltage also means higher max frequency. This is the reason why you often need to increase voltage when overclocking.

The consumed power = K * frequency * voltage2. The K is some constant depending on the actual physical CPU. For example when you want to overclock from 4 GHz to 5 GHz you may perhaps also need to raise the voltage from 1 V to 1.2 V and suddenly the CPU consumes almost twice (1.8x) as much power. Since the power consumed is exactly equal to the heat output, this is the main problem with overclocking.

4) Our experience is that as long as you are comparing CPUs with the same architecture/generation, the #cores * frequency is a good metric to estimate their relative performance. As for "speed vs price" this is tradeoff that you must decide for yourself :)

5) Unless power consumption/cooling is your main concern, I'd guess that you're better off with multiple smaller/slower machines using DR that with one big monster. You'll have a bit more to manage when installing updates & stuff, but when a single machine dies, you'll be grateful that you have few other to continue your work.

6) Corona is heavily memory limited - this means that the CPU spends most of its time waiting for the memory to provide data to be operated on. This also means that the cache size and speed is one of the most important factors in Corona performance.

猜你喜欢

转载自blog.csdn.net/yaorongzhen123/article/details/84972127