Multi-core processor

Multi-core processor

A multi-core processor is a microprocessor on a single integrated circuit with two or more separate processing units, called cores, each of which reads and executes program instructions. The instructions are ordinary CPU instructions (such as add, move data, and branch) but the single processor can run instructions on separate cores at the same time, increasing overall speed for programs that support multithreading or other parallel computing techniques. Manufacturers typically integrate the cores onto a single integrated circuit die (known as a chip multiprocessor or CMP) or onto multiple dies in a single chip package. The microprocessors currently used in almost all personal computers are multi-core.

Comment
enA multi-core processor is a microprocessor on a single integrated circuit with two or more separate processing units, called cores, each of which reads and executes program instructions. The instructions are ordinary CPU instructions (such as add, move data, and branch) but the single processor can run instructions on separate cores at the same time, increasing overall speed for programs that support multithreading or other parallel computing techniques. Manufacturers typically integrate the cores onto a single integrated circuit die (known as a chip multiprocessor or CMP) or onto multiple dies in a single chip package. The microprocessors currently used in almost all personal computers are multi-core.
Depiction
Athlon64x2-6400plus.jpg
DHCOM Computer On Module - AM35x.jpg
Dual Core Generic.svg
E6750bs8.jpg
Has abstract
enA multi-core processor is a microprocessor on a single integrated circuit with two or more separate processing units, called cores, each of which reads and executes program instructions. The instructions are ordinary CPU instructions (such as add, move data, and branch) but the single processor can run instructions on separate cores at the same time, increasing overall speed for programs that support multithreading or other parallel computing techniques. Manufacturers typically integrate the cores onto a single integrated circuit die (known as a chip multiprocessor or CMP) or onto multiple dies in a single chip package. The microprocessors currently used in almost all personal computers are multi-core. A multi-core processor implements multiprocessing in a single physical package. Designers may couple cores in a multi-core device tightly or loosely. For example, cores may or may not share caches, and they may implement message passing or shared-memory inter-core communication methods. Common network topologies used to interconnect cores include bus, ring, two-dimensional mesh, and crossbar. Homogeneous multi-core systems include only identical cores; heterogeneous multi-core systems have cores that are not identical (e.g. big.LITTLE have heterogeneous cores that share the same instruction set, while AMD Accelerated Processing Units have cores that do not share the same instruction set). Just as with single-processor systems, cores in multi-core systems may implement architectures such as VLIW, superscalar, vector, or multithreading. Multi-core processors are widely used across many application domains, including general-purpose, embedded, network, digital signal processing (DSP), and graphics (GPU). Core count goes up to even dozens, and for specialized chips over 10,000, and in supercomputers (i.e. clusters of chips) the count can go over 10 million (and in one case up to 20 million processing elements total in addition to host processors). The improvement in performance gained by the use of a multi-core processor depends very much on the software algorithms used and their implementation. In particular, possible gains are limited by the fraction of the software that can run in parallel simultaneously on multiple cores; this effect is described by Amdahl's law. In the best case, so-called embarrassingly parallel problems may realize speedup factors near the number of cores, or even more if the problem is split up enough to fit within each core's cache(s), avoiding use of much slower main-system memory. Most applications, however, are not accelerated as much unless programmers invest effort in refactoring. The parallelization of software is a significant ongoing topic of research. Cointegration of multiprocessor applications provides flexibility in network architecture design. Adaptability within parallel models is an additional feature of systems utilizing these protocols.
Hypernym
Component
Is primary topic of
Multi-core processor
Label
enMulti-core processor
Link from a Wikipage to an external page
spectrum.ieee.org/nov08/6912
www.slideshare.net/Talbott/architecting-solutions-for-the-manycore-future
web.archive.org/web/20110424130713/http:/embedded-computing.com/embedded-moves-multicore
groups.csail.mit.edu/cag/raw/
wavescalar.cs.washington.edu/
www.coherentlogix.com/
www.coherentlogix.com/products/hyperx-processors/
www.makeuseof.com/tag/processor-core-makeuseof-explains-2/
www.streamprocessors.com
Link from a Wikipage to another Wikipage
6WIND
ACML
Adapteva
Advanced Micro Devices
Aeroflex Gaisler
Ageia
Algorithmic skeleton
Ambric
AMD
AMD Accelerated Processing Unit
Amdahl's law
AMD FireStream
AMD Fusion
AMD FX
AMD Phenom
AMD Turion
Analog Devices
Anant Agarwal
Architecture
ARM11 MPCore
ARM architecture
ARM big.LITTLE
ARM Cortex-A9 MPCore
ASOCS
Asynchronous array of simple processors
Athlon 64 FX
Athlon 64 X2
Athlon II
Atom (system on chip)
Azul Systems
BizTalk
Blackfin
Broadcom
Bus network
Bus snooping
C (programming language)
Cache coherency
Cache snooping
Cadence Design Systems
Category:Computer architecture
Category:Digital signal processing
Category:Flynn's taxonomy
Category:Microprocessors
Category:Parallel computing
Cavium Networks
Celeron
Cell (microprocessor)
Central processing unit
Chapel (programming language)
Charles H. Moore
Chip carrier
Cilk Plus
ClearSpeed
Clock rate
Complex instruction set computing
Computer
Computer multitasking
Concurrent computing
Core 2 Duo
Core 2 Quad
Core Duo
Core i3
Core i5
Core i7
CPU cache
CPU shielding
CPU socket
Crossbar switch
C Sharp (programming language)
CUDA
Degradation (telecommunications)
Die (integrated circuit)
Die shrink
Digital signal processing
Digital signal processor
Discrete signal
Dynamic frequency scaling
Dynamic voltage scaling
Embarrassingly parallel
Embedded computing
Embedded system
Entropy encoding
Epyc
Erlang (programming language)
ESP32
Espressif Systems
Field-programmable gate array
File:Athlon64x2-6400plus.jpg
File:DHCOM Computer On Module - AM35x.jpg
File:Dual Core Generic.svg
File:E6750bs8.jpg
Fortran
Fortress programming language
Freescale
Freescale Semiconductor
Frequency scaling
Front-side bus
GeForce 30 series
GPGPU
Graphical user interface
Graphics processing unit
Gyoukou
Heterogeneous computing
Hewlett-Packard
Home gateway
Hyper-threading
IBM
IBM Telum (microprocessor)
IBM z10
IBM z13 (microprocessor)
IBM z14 (microprocessor)
IBM z15 (microprocessor)
IBM z196
IBM zEC12 (microprocessor)
IEEE Spectrum
Infineon
Infineon AURIX
Instruction-level parallelism
Instruction pipelining
Instruction set
Instruction set architecture
Integrated circuit
Intel
Intel Atom
Intel MIC
Itanium
Kalray
Kilocore
Laptop
LEON
Linköping University
List of Intel Core i9 microprocessors
List of numerical libraries
MAJC
Manycore
Manycore processing unit
Mesh networking
Message passing
Message Passing Interface
Microcode
Microelectronics
Microprocessor
Microsoft
Microsoft SQL Server
MIPS64
MIPS architecture
MIT
Mobile Internet device
Mobile phone
MPCore
MPPA-256
Multi-chip module
Multicore Association
Multiprocessing
Multithreading (computer architecture)
Netbook
Nettop
Network processor
Network processors
Network topology
Nvidia
OpenCL
OpenHMPP
OpenMP
OpenSPARC
Operating system
Opteron
Oracle Corporation
PA-8800
PA-8900
Parallax, Inc. (company)
Parallax Propeller
Parallel computing
Parallel programming
Parallel programming model
Parallel random access machine
PA-RISC
Partitioned global address space
Pentium
Phenom II
Physics processing unit
PhysX
Picochip
PicoChip
Picocode
PlayStation 3
Plurality (company)
Portable media player
Power10
POWER4
POWER5
POWER6
POWER7
POWER8
POWER9
Power ISA
Power Mac G5
Power management
PowerPC
PowerPC 970
Printed circuit board
Race condition
Radeon
Raspberry Pi
Reduced instruction set computing
Refactoring
Renesas
Ring network
Ryzen
Semiconductor
Semiconductor intellectual property core
Sempron
Server-side
Shared memory
SiCortex
Sieve C++ Parallel Programming System
SiFive
Simultaneous multithreading
Soft microprocessor
Software
Software Defined Silicon
Software portability
Sony
SPARC
SPARC T4
SPARC T5
Sun Microsystems
Sunway SW26010
Sunway TaihuLight
Supercomputer
Superscalar
Superscalar processor
Symmetric multiprocessing
System on a chip
Tensilica
Teraflops Research Chip
Texas Instruments
Texas Instruments TMS320
Thread (computer science)
Threading Building Blocks
Thread-level parallelism
Thread-safety
Throughput
TILE64
TILE-Gx
Tilera
Toshiba
TRIPS architecture
UC Davis
UltraSPARC IV
UltraSPARC T1
UltraSPARC T2
UltraSPARC T3
University of California, Davis
University of Texas, Austin
University of Washington
Vector processor
Very long instruction word
Video codec
Windows Server 2016
Wintegra
X10 (programming language)
X86
Xbox 360
Xenon (processor)
Xeon
Xilinx
XMOS
SameAs
4kGah
7598578-0
Chip multiprocessor
Çok çekirdekli işlemci
CPU đa nhân
Flerkernet processor
Flerkjerners mikroprosessor
m.09h1l3
Mehrkernprozessor
Microprocesseur multi-cœur
Mitmetuumaline protsessor
Moniytimellisyys (tietotekniikka)
Multi core
Multi-core processor
Multi-core processor
Multikernprocessor
Procesador multinúcleo
Procesor wielordzeniowy
Processador multinúcleo
Processador Multinucli
Q555032
Vícejádrový procesor
Višejezgreni procesor
Багатоядерний процесор
Вишејезгарни процесор
Көпядролық процессор
Многоядерный процессор
Многоядрен процесор
Повеќејадрен обработувач
معالج متعدد النوى
پردازنده چندهسته‌ای
มัลติคอร์
マルチコア
多核心處理器
멀티 코어
Subject
Category:Computer architecture
Category:Digital signal processing
Category:Flynn's taxonomy
Category:Microprocessors
Category:Parallel computing
Thumbnail
Dual Core Generic.svg?width=300
WasDerivedFrom
Multi-core processor?oldid=1121581092&ns=0
WikiPageLength
51594
Wikipage page ID
3503207
Wikipage revision ID
1121581092
WikiPageUsesTemplate
Template:As of
Template:Authority control
Template:Blockquote
Template:Citation needed
Template:Cite conference
Template:Cn
Template:CPU technologies
Template:Div col
Template:Div col end
Template:Example farm
Template:Note
Template:Parallel computing
Template:Redirect
Template:Reflist
Template:Short description