What are the differences between a thread and a core in a CPU?


What are the differences between a thread and a core in a CPU?

In: 14

A thread is an instruction that needs to be processed

A Core is a brain that can process a task.

The more cores a processor has the more tasks it can perform simultaneously.

Applications can be single threaded meaning that all of its instructions have to be processed by 1 core, or multi-threaded meaning that it’s instructions can be broken up and run by multiple cores simultaneously.

My understanding: A core is the brains of the cpu and has a certain amount of threads. So a quad core could have like 8 threads or 16 threads. If it has sixteen threads that means the 16 thread quad core (has 4 threads per core).

Think of the core like a brain. Everyone has a certain limited amount of threads for multi tasking. having more cores is better for multi tasking on a cpu and for video encoding. and having many apps opened.

Gaming benefits from multicore multi threaded cpus. Because AI and physics however a gpu is more beneficial and having a cpu that isnt bottlenecking the gpu card helps. Some games are CPU leaning (cpu bound) when it comes to certain tasks like RTS games tend to lean towards cpu more instead of gpu. it all depends on how the game was coded and game engine. It all depends but usually number crunching is done efficiently on cpus while gpus handle the 3d stuff.

More cores are better because they count as a processor. While threads are like lanes.

Tl;dr – Cores are processors, threads are lanes. More cores are better.

A core is a physical thing–it’s essentially a CPU, within the larger computer component that we call a “CPU.” Modern CPUs contain multiple processors… think, like a bunch of eggs in a carton.

A “thread” is a logical thing. It’s essentially a separate stream that the computer is processing. An analogy here might be a kitchen (the CPU), which is making multiple dishes (threads) independently of each other on shared hardware (stoves, counters, etc).

Within modern CPUs a “core” is a physical processor that actually exists on the CPU die. A thread is one code execution process on a CPU. In the past it was 1 core, 1 thread.

Modern CPUs support a technology called “simultaneous multi-threading” which means the CPU can run two different processes at the same time on the same core. So, 1 core, 2 threads.

A CPU is a Central Processing Unit, a piece of hardware, that among other things calculate. It has a number of cores to execute instructions.

A thread is a programmatic task which has the responsibility of executing specific instructions. Threads are used in parallelism/simultaneous operations.

Threads run on CPU. You can have several hundreds of threads running simultaneously on your computer and they’re fighting amongst each other to get to use the CPUs cores.

When a thread is spawned it is queued to run on the CPU cores.

ELI5 example: if you have an app that has to calculate or grab some external data from e.g. a server, it runs on threads. If the app only used one thread then the graphical user interface would freeze completely while it was grabbing data from the external server. In order to avoid that a programmer will usually spawn a separate thread to grab data while the user can still navigate in the app, which uses another thread, simultaneously.