21-10-2016, 11:01 AM
1460299095-multicoreprocessor.pptx (Size: 1.14 MB / Downloads: 5)
What is Processor?
A processor is the logic circuitry that responds to and processes the basic instructions that drive a computer. The term processor has generally replaced the term central processing unit (CPU). The processor in a personal computer or embedded in small devices is often called a microprocessor.
What Is Core?
Actually, a CORE is the part of something that is central to its existence or character.
Similarly, in computer system the CPU is referred as CORE.
Basically, there are two types of core processor:
1. Single Core Processor
2. Multi Core Processor
Single Core
It is a processor that has only one core, so it can only start one operation at a time. It can however in some situations start a new operation before the previous one is complete. Originally all processors were single core. Examples are Intel Pentium 4 670, AMD Athlon 64 FX-55.
Multicore
Also called multicore technology, it is a type of architecture where a single physical processor contains the core logic of two or more processors. These processors are packaged into a single integrated circuit (IC). Examples are Intel core i7, intel core 2 duo.
Processor consists:
A single chip package that fits in a socket
Cores can have functional units, cache, etc.associated with them, just as today
Cores can be fast or slow, just as today
Shared resources
More cache
Other integration: memory controllers, high-speed serial links, etc.
One system interface for System Bus and System Memory
Problems with Single Core
To execute the tasks faster you must increase the clock time.
Increasing clock times too high drastically increases power consumption and heat dissipation to extremely high levels, making the processor inefficient.
Multi Core solution
Creating two cores or more on the same Die increases processing power while keeping clock speeds at an efficient level.
A processor with 2 cores running at efficient clock speeds can process instructions with similar speed to a single core processor running at twice the clock speed, yet the dual core processor would still consume less energy.
Need for Multi-Core
For over 30 years the performance of processors has doubled every 2 years
Driven mainly by shrinkage of circuits
Smaller circuits
more transistors per chip
shorter connections
lower capacitance
Smaller circuits go faster
In early 2000s the rate started to decrease
Origination of Multicore
In the early 1970’s the first Microprocessor was developed by Intel.
It was a 4 bit machine that was named the 4004.
The 4004 was followed by Intel’s 8008 and 8080, as well as motorola’s 6800 and 68000.
Multi-Core Computer
dual-core processor contains two independent microprocessors.
A dual core set-up is somewhat comparable to having multiple, separate processors installed in the same computer, but because the two processors are actually plugged into the same socket, the connection between them is faster. Ideally, a dual core processor is nearly twice as powerful as a single core processor. In practice, performance gains are said to be about fifty percent: a dual core processor is likely to be about one-and-a-half times as powerful as a single core processor.
Growth
With each new generation of processors there were several developments such as:
Smaller size
Faster
Increased heat dissipation
Greater Consumption of power
Multi-Core Advantages
While working with many threads, a Multi Core processor with n cores can execute n threads simultaneously by assigning a core to each thread. If it must process more than n threads , say x, it can apply multithreading procedures with each core working with an average of x/n threads.
A Single core processor must multithread with every single thread.
Properties of Multi-core systems
Cores will be shared with a wide range of other applications dynamically.
Load can no longer be considered symmetric across the cores.
Cores will likely not be asymmetric as accelerators become common for scientific hardware.
Source code will often be unavailable, preventing compilation against the specific hardware configuration.
What applications benefit from multi-core?
Database servers
Web servers
Telecommunication markets
Multimedia applications
Scientific applications
In general, applications with Thread-level parallelism (as opposed to instruction-level parallelism)
Programming for multi-core
Programmers must use threads or processes.
Spread the workload across multiple cores.
Write parallel algorithms.
OS will map threads/processes to cores
Interaction with OS
Most major OS support multi-core today.
OS perceives each core as a separate processor.
OS scheduler maps threads/processes to different cores.
Why Multi-core?
Better Performance
For the Multi tasking
e.g. Burning CD with graphic works at the same time
Power consumption and Heat generation Caused from the advance of CPU clock speed