精华内容
下载资源
问答
  • SMP:(Symmetrical Multi-Processing)对称多处理器               顾名思义,就是指:相同的处理器  多核:         ...

    SMP和多核的基本概念

    SMP:(Symmetrical Multi-Processing)对称多处理器

                  顾名思义,就是指:相同的多个处理器

     多核:

             指的是:将多个处理器封装成一个整体,这个整体成为多核。

     

    SMP和多核的区别

     SMP中的每个处理器都要通过倍频的方式连接到系统总线上,成本较高。

     而多核只需要一次连接到系统总线上即可。

     多核系统一定是多处理器系统,但是多处理器系统不一定是多核系统。

     

    大势取向:

    优胜劣汰,目前计算机不再使用SMP,而选用多核处理器。

    展开全文
  • 单核处理器、多核处理器、多处理器与多线程编程 一.进程、线程、单核处理器  进程和线程都是操作系统的概念。进程是应用程序的执行实例,每个进程是由私有的虚拟地址空间、代码、数据和其它各种系统资源组成,即...

    单核处理器、多核处理器、多处理器与多线程编程

    一.进程、线程、单核处理器

           进程和线程都是操作系统的概念。进程是应用程序的执行实例,每个进程是由私有的虚拟地址空间、代码、数据和其它各种系统资源组成,即进程是操作系统进行资源分配的最小单元。进程在运行过程中创建的资源随着进程的终止而被销毁,所使用的系统资源在进程终止时被释放或关闭。

            线程是进程内部一个执行单元。系统创建好进程后,实际上就启动执行了该进程的主执行线程,主执行线程以函数地址形式,比如说main或WinMain函数,将程序的启动点提供给Windows系统。主执行线程终止了,进程也就随之终止。

             每一个进程至少有一个主执行线程,它无需由用户去主动创建是由系统自动创建的用户根据需要在应用程序中创建其它线程多个线程并发地运行于同一个进程中。一个进程中的所有线程都在该进程的虚拟地址空间中,共同使用这些虚拟地址空间、全局变量和系统资源,所以线程间的通讯非常方便,多线程技术的应用也较为广泛。

            多线程可以实现并行处理,避免了某项任务长时间占用CPU时间。要说明的一点是,目前大多数的操作系统教材中的单处理器都是指的单核处理器。对于单核单处理器(CPU)的,为了运行所有这些线程,操作系统为每个独立线程安排一些CPU时间,操作系统以轮换方式向线程提供时间片,这就给人一种假象,好象这些线程都在同时运行。由此可见,如果两个非常活跃的线程为了抢夺对CPU的控制权,在线程切换时会消耗很多的CPU资源,反而会降低系统的性能。

            最开始,线程只是用于分配单个处理器的处理时间的一种工具。但假如操作系统本身支持多个处理器那么每个线程都可分配给一个不同的处理器,真正进入“并行运算”状态。从程序设计语言的角度看,多线程操作最有价值的特性之一就是程序员不必关心到底使用了多少个处理器,程序员只需将程序编写成多线程模式即可。程序在逻辑意义上被分割为数个线程;假如机器本身安装了多个处理器,那么程序会运行得更快,毋需作出任何特殊的调校。根据前面的论述,大家可能感觉线程处理非常简单。但必须注意一个问题:共享资源!如果有多个线程同时运行,而且它们试图访问相同的资源,就会遇到一个问题。举个例子来说,两个线程不能将信息同时发送给一台打印机。为解决这个问题,对那些可共享的资源来说(比如打印机),它们在使用期间必须进入锁定状态。所以一个线程可将资源锁定,在完成了它的任务后,再解开(释放)这个锁,使其他线程可以接着使用同样的资源。

            多线程是为了同步完成多项任务,不是为了提高运行效率,而是为了提高资源使用效率来提高系统的效率。线程是在同一时间需要完成多项任务的时候实现的。

            最简单的比喻多线程就像火车的每一节车厢,而进程则是火车。车厢离开火车是无法跑动的,同理火车也不可能只有一节车厢。多线程的出现就是为了提高效率。同时它的出现也带来了一些问题。

            注:单核处理器并不是一个长久以来存在的概念,在近年来多核心处理器逐步普及之后,单核心的处理器为了与双核和四核对应而提出。顾名思义处理器只有一个逻辑核心。

    二、多核处理器和多处理器的区别

            多核是指一个CPU有多个核心处理器,处理器之间通过CPU内部总线进行通讯。而多CPU是指简单的多个CPU工作在同一个系统上,多个CPU之间的通讯是通过主板上的总线进行的。从以上原理可知,N个核的CPU,要比N个CPU在一起的工作效率要高(单核性能一致的情况下)。

    三、 处理器结构对并发程序的影响

            对称多处理器是最主要的多核处理器架构。在这种架构中所有的CPU共享一条系统总线(BUS)来连接主存。而每一个核又有自己的一级缓存,相对于BUS对称分布[2],如下图:


            这种架构在并发程序设计中,大致会引来两个问题,一个是内存可见性,一个是Cache一致性流量。内存可见性属于并发安全的问题,Cache一致性流量引起的是性能上的问题。

            内存可见性:内存可见性在单处理器或单线程情况下是不会发生的。在一个单线程环境中,一个变量选写入值,然后在没有干涉的情况下读取这个变量,得到的值应该是修改过的值。但是在读和写不在同一个线程中的时候,情况却是不可以预料的。Core1和Core2可能会同时把主存中某个位置的值Load到自己的一级缓存中,而Core1修改了自己一级缓存中的值后,却不更新主存中的值,这样对于Core2来讲,永远看不到Core1对值的修改。在Java程序设计中,用锁,关键字volatile,CAS原子操作可以保证内存可见。

           Cache一致性问题:指的是在SMP结构中,Core1和Core2同时下载了主存中的值到自己的一级缓存中,Core1修改了值后,会通过总线让Core2中的值失效,Core2发现自己存的值失效后,会再通过总线从主存中得到新值。总线的通信能力是固定的,通过总线使各CPU的一级缓存值数据同步的流量过大,那么总线就会成瓶颈。这种影响属于性能上的影响,减小同步竞争就能减少一致性流量。

    展开全文
  • 个处理器和多核处理器的区别

    万次阅读 多人点赞 2017-04-16 16:46:50
    个处理器&多核处理器个处理器:个单核处理器,就是说电脑和处理器有个,但是这个电脑的处理器是单核的; 多核处理器:单个多核处理器,也就是说电脑有一个处理器,但是这个处理器是多核的;  当然...

    最近遇到了一个让人很是疑惑的问题,然后写出来供大家解疑:



    多个处理器&多核处理器?

    多个处理器:多个单核处理器,就是说电脑和处理器有多个,但是这个电脑的处理器是单核的;

    多核处理器:单个多核处理器,也就是说电脑有一个处理器,但是这个处理器是多核的;

            当然他们之间有这个很大的区别,对于这两个疑点,或许你一直是这么认为的(对于时间的执行效率有区别),但是更重要的不止这些,最为重要的是它们的资源利用率问题,下面我们讨论一下关于二者究竟谁更优秀:

            对于多个处理器而言,它们在执行命令的时候多个处理器之间的通信手段是电脑主板上的总线;而对于多核处理器而言,多个核心处理器之间通信时通过CPU内部总线进行信息的交互的。对于执行效率而言,多核处理器要优于多个处理器,在生活中,我们的电脑上常见的处理器都是单处理器,但是这个处理器是多核的,当然,一些IT工作者的电脑如果是在要求较高的环境下工作时,都采用的多个多核处理器配置。

           当然对于进程和线程问题而言,结合处理器问题,是这样的,进程资源调度的基本单位,线程是进程的一个实体,是一个执行单元,一个进程可能包含有很多个线程,计算机在启动之后,一个进程最少包含一个主线程,如果这个主线程结束了,那么这个进程也就终止执行了,主线程是以函数的形式提供给操作系统的。对于并行计算是在多处理器的情况下,操作系统把多个线程分配给响应的处理器,然后各自执行任务。

    展开全文
  • 片上处理器与多核系统

    千次阅读 2017-06-11 18:09:31
    线程支持个线程以重叠方式共享单个处理的功能单元,但是开发线程级并行的一般方法是使用多处理器。实现线程的硬件方法主要有三种: 细粒度线程, Fine-grained (interleaved) multithreading,每个时钟周期...

    多线程支持多个线程以重叠方式共享单个处理的功能单元,但是开发线程级并行的一般方法是使用多处理器。

    实现多线程的硬件方法主要有三种:

    1. 细粒度多线程, Fine-grained (interleaved) multithreading,每个时钟周期之间执行一个进程切换,采用轮询的方式。好处是:能够隐藏长短停顿而导致的吞吐损失;不足是:减缓了个体进程的执行速度。
    2. 粗粒度多线程, Coarse-grained multithreading,仅发生在成本较高的停顿时才切换进程,克服吞吐量损失的能力十分有限。
    3. 同步多线程SMT,Simultaneous multithreading ,是细粒度多线程的更进一步,指令集可以在相同周期在多个线程中进行切换。

    处理器能力的差异:不支持多线程的超标量——支持粗粒度多线程的超标量——支持细粒度多线程的超标量——支持同步多线程的超标量。
    超标量:

    A A A
    A A A A
    A A
    A A

    粗粒度:

    A A A
    A A A A
    A A
    B B B
    B B B B
    B B B B B

    细粒度:

    A A A
    B B B B
    A A
    B B B B B
    A A A

    同步多线程:

    A A A B B B
    B B B B A A
    A B B B B B
    B B B A A A
    A A A
    B B B A A

    CMP和SMT

    CMP,片上多处理器,将多个计算内核集成在一个处理器芯片上,从而提高计算能力。
    SMT 比CMP的资源利用率高,在克服延迟方面具有优势。

    多核SMT和单核SMT

    单核SMT:指令级别的并行,为了更快的执行任务必须增加时钟频率,能耗和热损非常大,越来越耗时的设计;
    多核SMT:线程级别的并行,在同一个芯片上集成多核。

    展开全文
  • 2009 年 3 月 9 日,LSI 公司宣布其业界的 Tarari T1000 系列内容处理器可为更嵌入式多核处理器提供支持。目前,除了 Intel AMD x86 处理器以外,T1000 还可轻松地RMI XLR Processor 和 XLS Processor等其它...
  • 计算机处理器的未来——多核处理器自从计算机诞生以来,推动处理器高速发展的源动力主要有两方面:微电子技术飞速进步和处理器体系结构演化发展。于1965年提出的摩(本文共1页)阅读全文>>核技术成为当今处理器...
  • 进程的概念: 进程是资源(CPU、内存等)分配的基本单位,它是程序执行时的一个实例。 程序运行时系统就会创建一个进程,并...线程由CPU独立调度执行,在CPU环境下就允许个线程同时运行。同样线程也可以实现并.
  • 一只甜甜圈没有“多处理器”或“多核”编程之类的东西。作为应用程序程序员,“多处理器” 计算机和“多核” 计算机之间的区别可能您无关。它内核如何共享对内存的访问的微妙之处有关。为了利用多核...
  • 1、多处理器的分类 2、对称式共享存储器系统结构 3、多核与多线程 中兴的培训资料
  •  摘要:目前关于处理器的单核、双核和多核已经得到了普遍的运用,今天我们主要说说关于多核处理器的一些相关概念,它的工作那里以及优缺点而展开的分析。  1、多核处理器  多核处理器是指在一枚处理器中集成...
  • 2009 年 3 月 9 日,LSI 公司宣布其业界领先的 Tarari T1000 系列内容处理器可为更嵌入式多核处理器提供支持。目前,除了 Intel AMD x86 处理器以外,T1000 还可轻松地RMI XLR Processor 和 XLS Processor等...
  • 对称处理器 多核计算机 集群 对称多处理器 具有两个或两个以上性能相当的处理器 处理器共享内存和I/O设备,并且通过总线或者其他内部连接方式互连 共享对I/O的访问 所有处理器执行相同的功能(对称) 整个...
  • CPU的多核是指CPU的处理器核心数量 CPU的线程是指同一个处理器上的个线程同步执行并共享处理器的执行资源的线程数量 处理器核心(Core)又称为内核,是CPU最重要的组成部分。 CPU中心那块隆起的芯片就是核心,...
  • cpu分为Intel和AMD 还有单核多核之分,主频高低之分,到底怎么选,才最适合,下面小编就带着这些问题给你一一解答。先说核心和主频的关系和分别吧,尤其是很小伙伴并不清楚...也就是说,核心处理器在玩游戏...
  • 想想两三年前,市面上的高端处理器还不过是4-6核而已,8核到现在也不能说是普及,但是PC玩家现在可选的、可玩的就了,问题是如今的多核CPU未来能发展到什么程度?Anandtech网站高级编辑Dr. Ian Cutress做...
  • 一、进程线程 进程:进程拥有私有的地址空间、代码等一些系统资源。进程之间是相互独立的,不共享内存和数据。是操作系统进行资源分配 的最小单元。 线程:线程只由进程创建出来,只占有极少的资源,和同一进程中...
  • 在目前的安全、数通及电信等诸多领域都可以看到基于多核处理器的设计,它们超强的处理能力使得以往繁复的系统得以减小体积,实现单板平台。然而,在享受处理性能提升的同时,结构设计人员却不得不忍受多核高功耗的...
  • Unix免费体验中心,充分享受多处理器多核线程的乐趣Unix体验中心(Unix-Center.Net)的目标是为研究、学习和使用各种版本的Unix和类Unix操作系统的教师、学生和工程技术人员提供一个体验和测试各种版本的Unix和...
  •  在目前的安全、数通及电信等诸多领域都可以看到基于多核处理器的设计,它们超强的处理能力使得以往繁复的系统得以减小体积,实现单板平台。然而,在享受处理性能提升的同时,结构设计人员却不得不忍受多核高功耗的...
  • 这里将再一种介绍方法:通过微线程来同步个相互协作的并行任务。我们来想像一下下面这个问题:在一个已知长度的巨大线性表(如一维数组)当中要搜索一个元素,并且其中的元素都是唯一的。我们现在所用的处理器有两...
  • 基于现代多处理器多核机器的gzip并行实现
  • 多核处理器\OpenMPcodeopenstart多核处理器\OpenMPcodeopenstart多核处理器\OpenMPcodeopenstart
  • 线程与多核处理器 SMP 分析

    千次阅读 2014-04-29 09:38:53
    线程多核技术分析: 首先分析线程的优势: 1、提高程序的并发性(线程级并行,而非指令级并行);...2、多核处理器为单一的单线程程序提供了很好的平台,对其进行并行优化,是吸纳实现更好的程序运行效 果。
  • 多核处理器\OpenMPcode多核处理器\OpenMPcode多核处理器\OpenMPcode多核处理器\OpenMPcode
  • 多核处理器\OpenMPcode多核处理器\OpenMPcode多核处理器\OpenMPcode多核处理器\OpenMPcode
  • 多核处理器\OpenMPcode多核处理器\OpenMPcode多核处理器\OpenMPcode多核处理器\OpenMPcode

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 57,916
精华内容 23,166
关键字:

多处理器与多核处理器