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. 关于read only file system问题解决方案

    切换到超级用户sudo -sadb kill-serveradb rebootadb remount

  2. codeforces 361 D - Friends and Subsequences

    原题: Description Mike and !Mike are old childhood rivals, they are opposite in everything they do, ex ...

  3. 【Jquery mobile】动态加载ListView 转

    [Jquery mobile]动态加载ListView 分类: Jquery Mobile2011-12-01 09:04 13984人阅读 评论(1) 收藏 举报 jquerylistviewmob ...

  4. hibernate学习(设计多对多 关系 映射)

    // package org.crazy.app.domain; import java.util.HashSet; import java.util.Set; import javax.persis ...

  5. [转]Linux vi 编辑后如何保存

    比如:vi /etc/vsftpd/vsftpd.conf 按ESC键 跳到命令模式,然后: :w 保存文件但不退出vi :w file 将修改另外保存到file中,不退出vi :w! 强制保存,不推 ...

  6. python zookeeeper 学习和操作

    1.zookeeeper介绍 ZooKeeper是一个为分布式应用所设计的分布的.开源的协调服务,它主要是用来解决分布式应用中经常遇到的一些数据管理问题,简化分布式应用协调及其管理的难度,提供高性能的 ...

  7. Java语言环境(JDK的安装教学)

    //此文档由徐浩军编写(32/64位系统都适用) 1.下载JDK安装包你 2.点击安装包开始安装 3.首先你要选择安装地址一般情况下,都会选择默认地址. (请记住这个地址,之后配置环境变量的时候需要用 ...

  8. Sql Server 孤立用户解决办法

    Sql Server 孤立用户 是我们经常遇到的事情,今天详细的梳理了下,希望能帮到你 当把用户数据库从一台 Sql Server 使用备份和恢复的方式迁移到另一台服务器.数据库恢复以后,原先用户定义 ...

  9. AsyncTask源码分析

    在Android中,主线程是UI线程,当需要根据其他数据进行更新UI时,如果获取数据的操作比较耗时的话,会触发ANR,所以我们应该讲耗时的操作进行异步操作,尤其是请求网络数据的操作应该放在后台线程进行 ...

  10. iis+php+mysql

    来源:http://www.ttjcnet.com/forum.php?mod=viewthread&tid=137&extra= 首先下载php-5.2.0-win32.zip,my ...