多核心

维基百科,自由的百科全书
跳转到: 导航, 搜索
跳过字词转换说明

多核心,也叫多微处理器核心是将两个或更多的独立处理器封装在一起的方案,通常在一个集成电路(IC)中。双核心设备只有两个独立的微处理器。一般说来,多核心微处理器允许一个计算设备在不需要将多核心包括在独立物理封装时执行某些形式的線程級並行處理Thread-Level Parallelism,TLP)这种形式的TLP通常被认为是晶片級多處理。在游戏中你必须要使用驱动程序来利用第二颗核心。

「多核心」、「双核心」的定义在字面使用中有一定差距。他们通常指某些种类的中央处理器(Central Processing Unit,CPU),但是某些时候也应用到DSPSoC中。另外,某些情况中只适用于在同一个集成电路中的多核心微处理器。这些人将同一封装中集成的独立微处理器芯片称做“多处理模块”,“双核心”等。除非特别说明,本文将使用“多核心”指代在同一集成电路中集成的CPU。

目录

[编辑] 商业化的例子

[编辑] 开发动机

[编辑] 技术压力

當 CMOS 製造技術不斷改善、減少單個邏輯閘的大小,基於半導體的微電子學的物理極限變成主要的設計考量。

[编辑] 商业诱因

[编辑] 优势

由于采用了相对简单的微处理器作为处理器核心,使得CMP具有高主频、设计和验证周期短、控制逻辑简单、扩展性好、易于实现、功耗低、通信延迟低等优点。此外,CMP还能充分利用不同应用的指令级并行和线程级并行,具有较高线程级并行性的应用如商业应用等可以很好地利用这种结构来提高性能。

[编辑] 劣势

[编辑] 软件影响

[编辑] 編程問題

對於多核心的電腦,若在程式編寫編譯時無法把程式線性化,就不能充分利用多核心的特色,結果程式只能在一個核心上運行,平白浪費中央處理器的資源。

[编辑] 许可

另外一個問題是對多核心處理器的軟件授權企業級的伺服器軟件是以處理器為單位授權。從前,中央處理器只有一個核心而多數電腦只有一個處理器,當然沒有問題。在雙核心處理器剛面世時,問題來了,有些軟件是以核心為單位授權,結果雙核心處理器需要兩個授權。 現在的主流是把雙核心或多核心處理器計算成一個處理器,而微軟英特爾超微支持這個觀點(舉例說:微軟的Windows入面系統只支援最多四核心的電腦),甲骨文也支持這個觀點,但是甲骨文只計算英特爾和超微的多核心處理器為一個處理器,但是把其他的多核心處理器當成多個處理器。國際商業機器、惠普和微軟把多處理器模組當成多處理器,理由是如果把多處理器模組當成一個處理器,處理器廠商會製造大型、昂貴的多處理器模組來幫助客戶節省軟件費用,所以現在行業上漸漸把一枚晶片當作一個處理器。

[编辑] 普遍误解

很多人以為中央處理器的核心數目越多,其效能會越高。

但其實當核心到達某一個數目是,效能反而會下降/根據研究,八核心的處理器是效能的極限,當核心數目多於八顆,其效能就會大幅下降。好像十六核心的處理器,其實際效能只等同於相同時脈的雙核心處理器。解決方法是在每個線程上加一個特別的晶片。[來源請求]

[编辑] 备注

  1. ^  Digital signal processors, DSPs, have utilized dual-core architectures for much longer than high-end general purpose processors. A typical example of a DSP-specific implementation would be a combination of a RISC CPU and a DSP MPU. This allows for the design of products that require a general purpose processor for user interfaces and a DSP for real-time data processing; this type of design is suited to e.g. mobile phones.
  2. ^  Two types of operating systems are able to utilize a dual-CPU multiprocessor: partitioned multiprocessing and symmetric multiprocessing (SMP). In a partitioned architecture, each CPU boots into separate segments of physical memory and operate independently; in an SMP OS, processors work in a shared space, executing threads within the OS independently.

[编辑] 参见

[编辑] 外部链接

个人工具
名字空间
操作
导航
帮助
工具
其他语言