what does 2 core 4 threads mean in cpu?
Rise to the top 3% as a developer or hire one of them at Toptal: https://topt.al/25cXVn
--------------------------------------------------
Music by Eric Matyas
https://www.soundimage.org
Track title: Drifting Through My Dreams
--
Chapters
00:00 What Does 2 Core 4 Threads Mean In Cpu?
00:39 Accepted Answer Score 17
01:03 Answer 2 Score 0
01:27 Answer 3 Score 4
02:53 Answer 4 Score 0
03:55 Thank you
--
Full question
https://superuser.com/questions/700430/w...
--
Content licensed under CC BY-SA
https://meta.stackexchange.com/help/lice...
--
Tags
#cpu #threads #core
#avk47
ACCEPTED ANSWER
Score 17
Your i5 has two cores, each core can run two threads because of intel's hyperthreading, making 4 threads, beyond that it switches at high speeds between processes. Here's a nice explation of multithreading if you want to know more, but in essence your CPU can run 4 processes simultaniously, and switch at high speed between processes.
ANSWER 2
Score 4
I'm not sure about your level of expertise on Computer Architecture, however the Core i5 you've mentioned here implements a form of multi-threading known as Simultaneous multithreading (SMT). Intel's trademark for their implementation of SMT is hyperthreading.
Apart from SMT there are other forms of multi-threading, temporal multi-threading being one. For instance fine grained temporal multi-threading where the processor may switch between different threads every cycle and thus enable pseudo-parallel execution of several programs. Similarly there can be coarse grained temporal multi-threading where a processor may switch between threads when it hits a high latency operation such as a main memory access on the current thread. The exact switch points can vary based on implementation and requirements, such as fairness or real time deadlines.
SMT deviates from the context switch philosophy for multi-threading in that it actually has two or more threads executing on one processor at the same time. While the implementation can vary, the primary goal is to exploit the functional units in the processor which are idling if only one thread was executing, and also to exploit the wide issue superscalar nature of the processor. You can imagine temporal multi-threading as time slicing the processors resources, while SMT as spacial slicing of the resources.
A detailed analysis can be found in Tullsen's 1995 paper:
ANSWER 3
Score 0
"If it has just 2 cores then is it correct that you can only run 2 parallel programs even though it has 4 threads?" If it has 2 cores the calculation is divide by 2 = parallelism However if you system has hyper threading it can do the 2 calculation in the same core, why, the same core shows to the OS up as 2 cores...logical cores.
ANSWER 4
Score 0
Take the number of threads and divide it by the number of cores and that will give you the number of threads can be run simultaneously per processor core.
In earlier times [on earlier Intel models] hyperthreading was limited to 1 core running 2 threads simultaneously OR multiple cores running 1 instruction set (aka, thread) per core (pretty inefficient if you ask me). But with better computation power and later developments such as your i5 processor, you have what I like to call, a multi-core hyperthreaded processor, which has multiple cores running multiple instruction sets (aka, threads) per core.
In your case, 1 core gets 2 threads, so when you do the math you have a total of = 4 instruction sets (threads).
Another example: # of Cores = 4 , # of threads = 8 | 8/4 = 2, so each core processes 2 threads simultaneously (not sure which processor model does this but I'm almost certain that one exists).
Hope this helps my friend! Happy computing!
Source: PEARSON IT Certification CompTIA A+ Examp Cram Cert. Manual