The best explanation of hyperthreading in reasonable terms has been this one.
http://www.tomshardware.com/answers/id-1694436/hyperthreading-work.html
I have to answer these sorts of questions at work from time to time. Hyperthreading, for some reason, really throws people for a loop, no pun intended.
Each "core" on a modern processor chip is, or would be if we could separate them, a CPU in it's own right. So if you have a four core CPU, that's actually four physical processors on a single chunk of silicon.
Hyper-threading is done within a given core to make it appear as two cores. More or less it's a way to stuff the chip's execution pipelines so that two threads are interlaced and the CPU utilization is higher than when running a single thread. I'm sure someone on the list could come up with a better analogy, but that's all I got right now. Enabling hyperthreading is usually done at the BIOS level. To the OS it appears as two cores. So a four core processor with hyperthreading enabled will look like an eight core processor to the OS.
At no time does the CPU divide itself from 64 to 32 bit subunits. If it is a 64 bit CPU with hyperthreading turned off, then it is a 64 bit CPU with hyperthreading turned on. Whether your programs are running as 64 or 32 bit will depend mostly on how they're compiled.From: "David Schwartz" <newsletters@thetoolwiz.com>
To: "Main PLUG discussion list" <plug-discuss@lists.phxlinux.org >
Sent: Tuesday, September 6, 2016 4:29:59 PM
Subject: Re: 4 cores and 8 threads
AFAIK, the “cores” are 64-bit ALUs that can split into 32-bit pairs to run 32-bit code.
So an i7 has four x 64-bit cores that also work as 8×32-bit CPUs.
Threads are an OS construct, unless you want to refer to them as “real” vs. “virtual”, in which case you’d have up to four 64-bit threads or eight 32-bit threads.
I run VMWare, and I’ve never really bothered to figure out how it does its CPU mapping. I think I’ve given it two cores and 2GB of RAM and it does fine running Win 7.
(My base system is a Mac with a 2.8 GHz i7, 16 GB of RAM, and the latest OS X.)
-David Schwartz
On Sep 6, 2016, at 3:53 PM, Keith Smith <techlists@phpcoderusa.com> wrote:
Hi,
If an Intel CPU has 4 cores and 8 threads will it look like 8 cores to VirtualBox when assigning resources to a guest?
If so is there a way to determine which is a tread and which is actually a core?
Thanks!! Keith ------------------------------
--------------------- PLUG-discuss mailing list – PLUG-discuss@lists.phxlinux. org To subscribe, unsubscribe, or to change your mail settings: http://lists.phxlinux.org/mailman/listinfo/plug-discuss
---------------------------------------------------
PLUG-discuss mailing list - PLUG-discuss@lists.phxlinux.org
To subscribe, unsubscribe, or to change your mail settings:
http://lists.phxlinux.org/mailman/listinfo/plug-discuss
---------------------------------------------------
PLUG-discuss mailing list - PLUG-discuss@lists.phxlinux.org
To subscribe, unsubscribe, or to change your mail settings:
http://lists.phxlinux.org/mailman/listinfo/plug-discuss