because hyperthreading is not a true core. it is a way to ensure that the single core is fully utilized. so essentially hyperthreading makes sure the dual cores run as close to 100% as possible, thereby improving performance.
the cpu does things in series. meaning one at a time. if there is a break in the commands sent to it, then it waits idle until it gets a new command to carry out. hyperthreading keeps extra stuff waiting and fills in these breaks keeping the cpu busy.
a true 4 core cpu has exactly that, 4 full cores each doing as much work as possible. which is twice as much works as is possible for a dual core of the same type. an i7 adds hyperthreading to the i5's 4 cores and improves the performance the same way. ensuring all...