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.   

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

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

    网络信息爆炸的时代,如何更有效率地阅读文章,订阅RSS网摘,可以快速地浏览文章标题,当对某些文章有兴趣时,才点下连结连到原网站,阅读更详细的文章,Feedly Reader阅读器除了提供在线版订阅RS ...

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

    网络信息蓬勃发展,Blog部落格越来越普及,如果逐一地去浏览网站,势必费时费力,倘若信息可以自己送上门,那就可以节省不少时间,就好像看报纸的标题,有兴趣才点连结,进到网站浏览文章内容,Blogline ...

  3. TCP/IP协议头部结构体(网摘小结)(转)

    源:TCP/IP协议头部结构体(网摘小结) TCP/IP协议头部结构体(转) 网络协议结构体定义 // i386 is little_endian. #ifndef LITTLE_ENDIAN #de ...

  4. Vim命令快捷键(网摘)

    Vim命令快捷键(网摘) 原文出处:[?---->home]

  5. c#与C++类型转换网摘

    转载自 C++和C#转换 https://www.cnblogs.com/zjoch/p/4147182.html c#与C++类型转换,网摘 //c++:HANDLE(void   *)       ...

  6. Delphi 中DataSnap技术网摘

    Delphi2010中DataSnap技术网摘 一.为DataSnap系统服务程序添加描述 这几天一直在研究Delphi 2010的DataSnap,感觉功能真是很强大,现在足有理由证明Delphi7 ...

  7. Python入门及容易!网摘分享给大家!

    Python:Python学习总结 背景 PHP的$和->让人输入的手疼(PHP确实非常简洁和强大,适合WEB编程),Ruby的#.@.@@也好不到哪里(OO人员最该学习的一门语言). Pyth ...

  8. 【网摘】DICOM 基础简介

    一 什么是DICOM?DICOM是Digital Imaging and Communication of Medicine的缩写,是美国放射学会(American College of Radiol ...

  9. PHP 调用微信JS-SDK 开发详解 [网摘]

    一:准备文件,并将文件置于网站根目录下 access_token.json {"access_token":"","expire_time" ...

随机推荐

  1. 使用bootstrap的html文件转换成jsp…

    问题:使用bootstrap的html文件转换成jsp时表单高度变窄 解决方法: 将jsp中html文档类型修改为<!DOCTYPE html> 问题即可解决. 也就是bootstrap只 ...

  2. 内存映射文件详解-----C++实现

    先不说内存映射文件是什么.贴个代码先,. #include <iostream> #include <fcntl.h> #include <io.h> #inclu ...

  3. UI进阶 CocoaPods的安装使用步骤

    一. CocoaPods简介 CocoaPods是一个用来帮助我们管理第三方依赖库的工具.在开发iOS应用时,会经常使用第三方类库,比如SDWebImage.AFNetworking等等,手动的下载与 ...

  4. [c++]this指针理解

    #include <iostream> using namespace std; /** * this 指针理解 */ class A{ int i; public: void hello ...

  5. Python beautifulsoup模块

    BeautifulSoup中文文档:https://www.crummy.com/software/BeautifulSoup/bs4/doc.zh/ BeautifulSoup下载:http://w ...

  6. Galera 10.0.20 on CentOS 6.6

    Galera 10.0.20 on CentOS 6.6 0.使用场景 数据库软件:mariadb-galera-10.0.20-linux-x86_64.tar.gz 集群管理:galera-3-2 ...

  7. Codeforces Round #318 [RussianCodeCup Thanks-Round] (Div. 1) B. Bear and Blocks 水题

    B. Bear and Blocks Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/573/pr ...

  8. 也谈读书和书籍选择问题(C#)

    前言 读到一篇.net程序员应该看什么书?深有感触.以前曾经用C#也开发过几年的东西.在那里对相关语言和开发都有了一定的了解.这里,结合自己当初的一些体会和见识把一些比较好的书籍也和大家分享一下.这一 ...

  9. Jquery中$与$.fn的差别

    当今web开发往往离不开Jquery的使用,Jquery以其简洁的使用方式.良好的浏览器兼容性赢得了软件研发同行的青睐,作为当中的一员,自然也不例外,虽然刚開始时非常排斥Jquery,今天我谈一下对J ...

  10. javascript面向对象学习笔记——创建对象(转)

    工厂模式 该模值抽象了创建具体对象de过程.用函数来封装噫特定接口创建对象的细节. function createPerson(name,age,job){ var o=new Object(); o ...