zoukankan      html  css  js  c++  java
  • 计算机并行性的发展

           随着社会生产力的不断进步,人类开发与利用大自然的欲望是永无止境的,今天人们满意的东西,明天也许不再满意,后天甚至很不满意。

           18世纪蒸汽机的广泛使用,是近代技术革命的主要标志,然而在19世纪,这种机器便开始被取代,到了20世纪,蒸汽机已经成为了令人讨厌的怪物。

    计算机的发展历史亦然。1945年,世界上第一台电子数字计算机问世,它作为人类智力解放道路上的重大里程碑,曾经令人欢歌笑语。现在,其是笨重、昂贵、高耗能、低效的代表。为改性其性能,人们进行了不懈的努力,与日俱增的并行性首当其冲。

    一个计算机,主要包括处理机和外设,人与外设,外设与处理机都是信息交换的载体。其时间量级分别是纳秒级、毫秒级和秒级,每一档至少要差倍,从三种活动时间量级上的不匹配,人们察觉到早起的计算机懒汉,他们手脚灵敏,但不主动,稍微一干就睡大觉,等待反应迟钝的人的命令。这孕育了最初的并行思想。

    为了挖掘计算机的内在潜力,外设与主机、外设与外设、各操作步骤、各功能部件,乃至多处理机、多计算机之间的并行性相继出现,精力了“宏观串行,微观串行”,“宏观并行,微观串行”(分时系统)和“宏观并行,微观并行”(现代并行处理计算机)三个阶段。按照美国M.J.Flynn的分类法,前两阶段属于单指令单数据流之列,第三阶段又细分为单指令流多数据流SIMD和多指令多数据流MIMD,在加上最新的单程序流多数据流SPMD等类型。

    并行性是指多于一个事件在同一时刻发生,例如多级多功异步并行;也指多余一个事件在部分重叠的时间内出现出现,例如流水线向量运算;还指多余一个事件在同一(间隔不太长的)时间间隔内发生,例如分时系统。显然,在并行性的概念上,前两者皆高于后者。

  • 相关阅读:
    shell脚本while read line的使用
    shell 一次性赋值多个变量
    Docker Volume
    nginx反向代理与负载均衡
    lua中 table.getn(t) 、#t、 table.maxn(t) 这三个什么区别?
    pv绑定pvc
    使用brew services管理服务
    Kubernetes中强制删除Pod、namespace
    shell 中的${},##, %% , :- ,:+, ? 的使用
    petalinux中fsbl源码
  • 原文地址:https://www.cnblogs.com/jourluohua/p/6591648.html
Copyright © 2011-2022 走看看