一些网摘的hpc材料

source from: https://computing.llnl.gov

Factors determines a large-scale program‘s performance

4         * Application related factors:

5                 * algorithms

6                 * dataset size

7                 * Memory Usage Pattern

8                 * Use of IO

9                 * Communication Patterns

10                 * Task Granularity

11                 * Load Balancing

12                 * Amdahl‘s Law

13

14         * Hardware factors

15                 * Processors Architecture

16                 * Memory Hierarchy

17                 * I/O configuration

18                 * Network

19

20         * Software factors

21                 * OS

22                 * Compiler

23                 * Preprocessor

24                 * Communication protocols

25                 * Libraries

Performance analysis:

  Timers, Profiles, system stat, memory tools

Learn some about hardware archiecture:

Intel Xeon 5500/5600

  4-core/ 6-core

  2.4/2.8 GHz

  Cache

    L1 Data 32Kb, private

    L1 Instruction 32Kb, private

        L2 256K, private

     L3 8Mb/12Mb, shared

Cpu-Memory bandwidth: 32 Gb/s

Intel Xeon E5-2670

    8-core, 2.6GHz

Cache

      L1 Data 32K, private

      L1 Instruction 32K, private

      L2 256K, private

      L3 20Mb, shared

CPU-Memory bandwidth  51.2G/s

AMD processors

     2.2 GHz

  Cache

       L1  Data 64k (2-way)

       L1  Instruction 64k(2-way)

       L2  512K private

       L3  2M shared

  Direct - connect Architecture

    CPU-memory bandwidth 10.7G/s per socket F

    other connect socket bandwidth 8G/s(2-way)

  4x Infiniband Interconnect

    * SDR 1.25G/s

    * DDR 2.5G/s

* QDR  5G/s

Learn something about NUMA  

  -physical: each node has sevearl(2-4) sockets, each socket has sevearl(4-8) CPU cores. On same socket, cores share L3 cache; socket-socket communcation through CPU-memory bus, almost 2x ~ 5x slower.   

-design consideration: CPU affinity(numactl --cpunodebind), local memory policy. other compiler/running-time options(mpirun --bind-to-socket -bynode)

Finally and most importantly, a good algorithm.   

时间: 2024-11-03 21:04:40

一些网摘的hpc材料的相关文章

socket 网摘

一.基本socket函数 Linux系统是通过提供套接字(socket)来进行网络编程的.网络的socket数据传输是一种特殊的I/O,socket也是一种文件描述符.socket也有一个类似于打 开文件的函数:socket(),调用socket(),该函数返回一个整型的socket的描述符,随后的连接建立.数据传输等操作也都是通过该socket实现. 1.socket函数 syntax:    int socket(int domain, int type, int protocol); 功能

TCP 状态图网摘

from unkonwn 1.CLOSED:起始点,在超时或者连接关闭时候进入此状态. 2.LISTEN:svr端在等待连接过来时候的状态,svr端为此要调用socket, bind,listen函数,就能进入此状态.此称为应用程序被动打开(等待客户端来连接). 3.SYN_SENT:客户端发起连接,发送SYN给服务器端.如果服务器端不能连接,则直接进入CLOSED状态. 4.SYN_RCVD:跟3对应,服务器端接受客户端的SYN请求,服务器端由LISTEN状态进入SYN_RCVD状态.同时服务

Volley学习(网摘)

Android网络通讯架构--Volley 1. Volley提供的功能简单来说,它提供了如下的便利功能: JSON,图像等的异步下载: 网络请求的排序(scheduling) 网络请求的优先级处理 缓存 多级别取消请求 和Activity和生命周期的联动(Activity结束时同时取消所有网络请求) 2.学习前的准备:下载volley源码打成jar包(我通过这个网址下载不下了,但是网络上很多好心人已经分享了源码) 下载地址: mirror of volley library from andr

Bloglines订阅Blog部落格RSS网摘 - Blog透视镜

网络信息蓬勃发展,Blog部落格越来越普及,如果逐一地去浏览网站,势必费时费力,倘若信息可以自己送上门,那就可以节省不少时间,就好像看报纸的标题,有兴趣才点连结,进到网站浏览文章内容,Bloglines Reader阅读器提供在线版阅读RSS,订阅RSS网摘,方便读者快速地浏览文章,找到所需的信息. 阅读全文>> Bloglines订阅Blog部落格RSS网摘 - Blog透视镜

Feedly订阅Blog部落格RSS网摘 - Blog透视镜

网络信息爆炸的时代,如何更有效率地阅读文章,订阅RSS网摘,可以快速地浏览文章标题,当对某些文章有兴趣时,才点下连结连到原网站,阅读更详细的文章,Feedly Reader阅读器除了提供在线版订阅RSS网摘,也有浏览器套件与App下载,简约接口设计,让阅读RSS网摘,就像阅读杂志一样舒服愉快. 阅读全文>> Feedly订阅Blog部落格RSS网摘 - Blog透视镜

知识管理:网摘如何快速存储不丢图不丢GIF、云同步、发博客。

摘要:我们在做文章收集或个人知识管理的时候,为了防止网络文章摘录内容丢失经常要归档.发布.编辑.共享一些从网上收集来的文摘,文摘有图文可能还有GIF动画,如用word,pdf 等板式会受到影响,且gif动画文件也会变成静态失去意义,本文主要是分享如何快速的复制粘贴发布.归档.发博文网络文章摘录. 一般来说,收集或个人知识管理(PKM)就是为了更高效的存储.检索.编辑.分享.组织吸纳创新所以本文,主要描述如何快速的存档网摘.发博客分享两个教程. 一.自用归档 可以选用 QQ空间日志:复制摘录的内容

网摘 SQL Server

http://soft.chinabyte.com/database/215/12374715.shtml . 软件与服务 我们也在这里: . 企业计算 大数据 存储 软件与服务 数据库/开发 服务器 操作系统 网 络 安 全 . 您的位置: 比特网 > 软件与服务 > 正文 . 分享一个 SQLSERVER脚本 发布时间:2014-07-17 16:21:00来源:论坛 作者:译名 . . 关键字:数据库 很多时候我们都需要计算数据库中各个表的数据量和每行记录所占用空间.   这里共享一个脚

Delphi 中DataSnap技术网摘

Delphi2010中DataSnap技术网摘 一.为DataSnap系统服务程序添加描述 这几天一直在研究Delphi 2010的DataSnap,感觉功能真是很强大,现在足有理由证明Delphi7该下岗了. DataSnap有三种服务模式,其中Service Application方式建立的Windows服务没有描述,描述部分是空的,可用如下方法添加服务描述: procedure TServerContainer.ServiceAfterInstall(Sender: TService);

争议的编程观点(网摘)

1.   业余时间不会为了好玩而编程的程序员,永远比不上那些以编程为乐的同学. 我认为即使是最聪明.最有才华的人,如果只是将编程作为工作,也永远成不了真正优秀的程序员.以编程为乐的人会在业余时也搞些小项目,或者弄弄各种不同的编程语言和编程思想. 2.   单元测试无助于编写优秀代码. 编写单元测试的唯一理由仅仅是确保已经能工作的代码不会出问题.先写测试或者按测试来写代码是无比荒谬的.如果在代码之前写测试,你都不知道边 界情况是什么.虽然能让代码通过测试,但是在没有预见到的情况时还是会出问题.而且