1) ABOUT:ILP\DLP\TLP

1-1、ILP

  • 大约在1985年之后的所有处理器都使用流水线来重叠指令的执行过,以提高性能。由于指令可以并行执行,所以指令之间可能实现这种重叠称为指令级并行(ILP)
  • ILP大体有两种不同开发方法:(1)依靠硬件来帮助动态发现和开发并行;(2)依靠软件技术在编译时静态地发现并行。使用基于硬件的动态方法的处理器,包括Inter Core系列,在桌面和服务器市场上占主导地位。在个人移动市场,提高能耗效率通常是一个关键目标,所以设计人员开发较低级别的指令级并行。因此,2011年,PMD市场的大多数处理器采用静态方法,ARM Cortex-A8中即是如此(不过新的A9将采用动态方法)。从20世纪80年代开始到Inter Itanium系列,人们已经无数次尝试基于编译器的积极方法。尽管付出了无数次努力,但除了非常有限有限的科学领域外,这些方法没有获得成功。
  • ILP存在一些局限性,正是这些局限性直接导致向多核的转移。

1-2、DLP

  • SIMD的三种变体:向量体系结构、多媒体SIMD指令级扩展、图形处理单元GPU体系结构中的数据及并行
  • 第一种变体的出现要比其他两个早30年以上,它实际上就是以流水线形式来执行许多数据操作。与其他SIMD变体相比,这些向量体系结构更容易理解和编译,但过去一直认为他们对于未处理起来说太过昂贵,这一看法直到最近才有所改变。这种体系结构的成本一部分用于晶体管上,另一部分用于提供足够的DRAM宽带,因为他广泛依赖于缓存来满足传统微处理器的存储性能要求。
  • 第二种变体借用SIMD名称来表示基本同时进行的并行数据操作,在今天支持多媒体应用程序的大多数指令集体系结构中都可以找到这种变体。X86体系结构的SIMD指令扩展是在1996年以MML(多媒体扩展)开始的,在接下来的10年间出现了几个SSE(流式SIMD扩展)版本,一直发展到现在的AVX(高级向量扩展)。为了使X86计算机达到高计算速度,通常需要使用这些SIMD指令,特别是对于浮点的程序。
  • 第三种变体来自GPU社区,它的潜在性能要高于当今传统多和计算机的性能。尽管GPU的一些特征与向量体系结构相同,但他们有自己的一些独特特征,部分原因在于他们发展的生态系统。在GPU的发展环境中,除了GPU及其图形存储器之外,还有系统处理器和系统存储器。事实上,为了辨识这些差别,GPU社区将这种体系结构成为异类。

1-3、TLP

  • 多处理器:紧耦合处理器组成的计算机,这些处理器协调与使用由单一处理器系统控制,通过共享地址空间来共享存储器。
  • 这里所研究的多处理器范围小到一个双处理器,大到包括数十个处理器,通过存储器的共享进行通信与协调。尽管通过存储器的进行共享隐含着对地址空间的共享,但并不意味着只有一个物理存储器。这些多处理器即包括拥有多个核心的单片系统(多核)也包括由多个芯片构成的计算机,每个芯片可以采用多核设计。
  • 而集群:是由大量处理器构建而成的超大规模计算机,在其所采用的模型中,要么假定有大量独立请求,要么假定有高度并行、密集计算任务。当这些集群发展到数万个服务器时,我们就称之为仓库级计算机。
  • 而多计算机:除多处理器、仓库级系统外的一种特殊的大规模处理器,他们的耦合度要低于多处理器,高于仓库级系统。主要用于高端科学计算。
  • 多处理器组织方式:①对称(共享存储器)多处理器(SMP),或集中式共享存储器多处理器。②分布式共享存储器(DSM):为了支持更多的处理器,存储器必须分散在处理器之间而不是集中式的,否则,存储器系统就无法在不大幅延长访问延迟的情况下为大量处理器提供带宽支持。
  • 在SMP和DSM这两种体系结构中,线程之间的通信是通过共享地址空间完成的,也就是说,任何一个拥有正确寻址权限的处理器都可以向任意存储器位置发出存储器引用。与SMP和DSM相关联的共享存储器一词是指共享地址空间这一事实。与之相对,集群和仓库级计算机看起来更像是由网络连接的独立计算机,如果两个处理器之间没有运行软件协议加以辅助,那一个处理器就无法访问另一个处理器的存储器。在此类设计中,利用消息传送协议在处理器之间传送数据。

2) ABOUT:公共计算

100多年前,各家公司不再自行用蒸汽机和发电机发电,而是接入新建成的电网中。电力公用设施提供廉价电能所改变的内容并非限制于这些公司的运行方式。这一现象导致了一连串的经济与社会转型,来开了现代世界的序幕。今天,一场类似的革命正在进行之中。海量信息处理工厂挂在相互联网的全球计算机网格上,开始将数据和软件代码诸如我们的家中和公司中。这一次变为公用设施的东西是计算能力。

——Nicholas Carr

《大变革:重新审视世界,从爱迪生到Google》

(The Big Switch: Rewiring the World, from Edison to Google)

3) ABOUT:FAST

谁都可以搭建一块快速CPU。难点在于如何搭建一个快速系统。

——Seymour Cray 公认的超级计算机之父

本文链接:http://www.cnblogs.com/zjutlitao/p/4181440.html

更多精彩:http://www.cnblogs.com/zjutlitao/p/4125085.html

[云] 1、云服务器——从ILP\DLP\TLP谈起的更多相关文章

  1. 转-阿里云CentOS Linux服务器上用postfix搭建邮件服务器

    http://www.cnblogs.com/dudu/archive/2012/12/12/linux-postfix-mailserver.html 注:本文的邮件服务器只用于发送邮件,也就是ST ...

  2. Android中实现java与PHP服务器(基于新浪云免费云平台)http通信详解

    Android中实现java与PHP服务器(基于新浪云免费云平台)http通信详解 (本文转自: http://blog.csdn.net/yinhaide/article/details/44756 ...

  3. 【转载】阿里云ECS Linux服务器禁止某些IP访问

    在阿里云ECS Linux服务器运维过程中,如果发现某些IP访问异常,如怀疑有攻击行为或者怀疑是别人写的爬虫程序长时间占用你的服务器资源,则可以通过相关的设置来禁止这些IP段的访问,拒绝这些IP的请求 ...

  4. 阿里云CentOS Linux服务器上搭建邮件服务器遇到的问题

    参考文章: 阿里云CentOS Linux服务器上用postfix搭建邮件服务器 Linux系统下邮件服务器的搭建(Postfix+Dovecot) 本来想自己搭建邮件服务器,但是看到一篇资料表示阿里 ...

  5. 阿里云 putty链接服务器出现 server refused our key

    阿里云 putty链接服务器出现 server refused our key 创建了密钥对绑定实例,puttygen生成ppk,putty配置参数,连接,一步一步来的,结果出现 server ref ...

  6. 购买阿里云的云服务器时选择镜像centos时应该选择哪个版本

    购买阿里云的云服务器时选择镜像centos时应该选择哪个版本 方法/步骤首先,我们要清楚的便是每个系统之间的差别,以及在阿里云上的差别:1. Windows1.1) 系统内含正版激活.1.2) 适合于 ...

  7. 在阿里云的ubuntu服务器上安装xampp时出现unable to realloc unable to realloc 8380000 bytes错误

    在阿里云的ubuntu服务器上安装xampp时出现unable to realloc unable to realloc 8380000 bytes错误 解决:增加Swap空间(阿里云缺省没有分配任何 ...

  8. 【故障公告】阿里云 RDS 数据库服务器 CPU 100% 造成全站故障

    非常非常抱歉,今晚 19:34 ~ 21:16 园子所使用的阿里云 RDS 数据库服务器突然出现 CPU 100% 问题,造成全站无法正常访问,由此您带来了很大的麻烦,请您谅解. 故障经过是这样的.1 ...

  9. 阿里云CentOS7.3服务器通过Docker安装Nginx

    前言 小编环境: 阿里云CentOS7.3服务器 docker 下面分享一次小编在自己的阿里云CentOS7.3服务器上使用Docker来安装Nginx的一次全过程 温馨小提示: 如果只是希望单纯使用 ...

随机推荐

  1. mysql - 最小缺失值查询

    初始化数据 DROP TABLE IF EXISTS X; CREATE TABLE X( a INT UNSIGNED PRIMARY KEY, b ) NOT NULL )ENGINE=INNOD ...

  2. 【微博SDK调用逻辑】微博SDK的调用逻辑,最好自己还是写一个例子,试一下!!!

    逻辑是这样的,谢谢给我讲东西的开发哥哥,嘻嘻~~~  1.点击微博登录,SDK会打开微博客户端,然后点击登陆(如果已经登录了会出现一个当前app跟微博交互的图片界面,然后提示“正在获取授权信息”,如果 ...

  3. 《CSS3秘籍》(第三版)-读书笔记(3)

    第9章 装饰网站导航 1.  选择要定义样式的链接 大部分浏览器都支持4种基本的链接状态:未访问的链接.已访问的链接.访问者的鼠标正悬停在上方的链接,以及正被单击的链接.CSS提供了与这些状态对应的4 ...

  4. Python笔记——break的注意事项

    在python中有个控制流的语句:break 它是用来终止循环语句的,不管此时循环体进行到哪,只要碰到break都停止执行循环语句. 1.举例脚本: #!/usr/bin/env python for ...

  5. linux ddos防御攻击

    Linux Ddos防御攻击 [root@lxh ~]# netstat -ntu |awk '{print $5}'|grep '[0-9]'|cut -d: -f1 |sort |uniq -c| ...

  6. Linux下yum升级安装PHP 5.5

    我的系统是Centos 6.5 ,安装lnmp是直接yum安装的,php版本为5.4的,当安装了最新的phpMyAdmin(4.5.1)数据库管理软件后发现不支持php5.4使用,所以只好升级下php ...

  7. jsp学习--如何定位错误和JSP和Servlet的比较

    一.如何查找JSP页面中的错误  JSP页面中的JSP语法格式有问题,导致其不能被翻译成Servlet源文件,JSP引擎将提示这类错误发生在JSP页面中的位置(行和列)以及相关信息.JSP页面中的JS ...

  8. Servlet的5种方式实现表单提交(注册小功能),后台获取表单数据

    用servlet实现一个注册的小功能 ,后台获取数据. 注册页面: 注册页面代码 : <!DOCTYPE html> <html> <head> <meta ...

  9. JSON的故事

    1.介绍JSON http://www.json.org/ https://developer.mozilla.org/zh-CN/docs/JSON 2.json的序列化和反序列化 序列化方法 va ...

  10. CentOS7安装mysql5.7.11

    开始安装 yum update yum install wget wget http://repo.mysql.com/mysql57-community-release-el7-7.noarch.r ...