Content

1 syntax and semantic

2 example set

1 syntax and semantic

1.1 extending C

Peril-L notation stands on the shoulder of C.

1.2 parallel threads

forall(<intVar in (<index range specification>)){
    <body>
}

1.3 synchronized and coordination

(1) exclusive block

exclusive { <body> }

(2) barrier

近在forall中使用。

barrier

1.4 memory model

2 address spaces: global, local

全局内存存在并发读写、延迟(λ)。

全局-本地映射函数

(1) localize()

根据进程id,返回生成本地数据副本

(2) mysize(global, i)

返回进程Pi中数据的数量

(3) localToGlobal(localData, i, j)

返回Pi的局部数据中索引为i的数据相应的全局索引

1.5 synchronized memory

FE(full/empty)变量,必须是global数据,记法示例:

int t' = 0;
FE state transfer
state\operation read write
empty stall(blocking) => full
full => empty stall(blocking)

1.6 reduce and scan

Reduce(/)

Scan(\)

sample:

+/count   // count is an array, return the sum of count's element
min\items // item is an array, return the minimal of items' element

2 example set

Notes of Principles of Parallel Programming: Peril-L Notation - TODO的更多相关文章

  1. Notes of Principles of Parallel Programming - TODO

    0.1 TopicNotes of Lin C., Snyder L.. Principles of Parallel Programming. Beijing: China Machine Pres ...

  2. Introduction to Multi-Threaded, Multi-Core and Parallel Programming concepts

    https://katyscode.wordpress.com/2013/05/17/introduction-to-multi-threaded-multi-core-and-parallel-pr ...

  3. 4.3 Reduction代码(Heterogeneous Parallel Programming class lab)

    首先添加上Heterogeneous Parallel Programming class 中 lab: Reduction的代码: myReduction.c // MP Reduction // ...

  4. Task Cancellation: Parallel Programming

    http://beyondrelational.com/modules/2/blogs/79/posts/11524/task-cancellation-parallel-programming-ii ...

  5. Samples for Parallel Programming with the .NET Framework

    The .NET Framework 4 includes significant advancements for developers writing parallel and concurren ...

  6. Parallel Programming for FPGAs 学习笔记(1)

    Parallel Programming for FPGAs 学习笔记(1)

  7. Parallel Programming AND Asynchronous Programming

    https://blogs.oracle.com/dave/ Java Memory Model...and the pragmatics of itAleksey Shipilevaleksey.s ...

  8. 【转载】#229 - The Core Principles of Object-Oriented Programming

    As an object-oriented language, c# supports the three core principles of object-oriented programming ...

  9. Fork and Join: Java Can Excel at Painless Parallel Programming Too!---转

    原文地址:http://www.oracle.com/technetwork/articles/java/fork-join-422606.html Multicore processors are ...

随机推荐

  1. [示例]NSDictionary编程题-字典的排序应用(iOS7班)

    代码: #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepo ...

  2. [js]变量声明、函数声明、函数定义式、形参之间的执行顺序

    一.当函数声明和函数定义式(变量赋值)同名时 function ledi(){ alert('ledi1'); }; ledi(); var ledi = function (){ alert('le ...

  3. Linux中如何让命令在后台运行

    1.在下达的命令后面加上&,就可以使该命令在后台进行工作,这样做最大的好处就是不怕被ctrl+c这个中断指令所中断. 2. 那大家可能又要问了,在后台执行的程序怎么使它恢复到前台来运行呢?很简 ...

  4. 常州培训 day3 解题报告

    第一题: 给出数轴正半轴上N个点的坐标和其权值,给出初始体力值M,人一开始在位置0,体力值会随着走过路程的增加而增加,走多少个单位的路消耗多少体力值.到每个点可以打掉,消耗的体力值就是其权值.求 最多 ...

  5. 腾讯PK微软 王者之战一触即发

    六一儿童节,曾在微信中热闹一时的智能机器人“小冰”被腾讯封杀.一场微软和腾讯的战争正式拉开帷幕.前者是PC时代的霸主,后者是中国移动互联网的王者.在此之前,类似的战争,腾讯曾经历无数次,从十年前的“珊 ...

  6. MySQL v5.1.72 + v5.6.19

    MYSQL是一个多线程的,结构化查询语言(SQL)数据库服务器.SQL 在世界上是最流行的数据库语言.MySQL 的执行性能非常高,运行速度非常快,并非常容易使用.是一个非常捧的数据库. MySQL ...

  7. 使用变量替换批量部署GoldenGate

    GoldenGate运行时允许在参数文件中动态指定一个值,即在参数文件中使用一个变量,而不是一个静态的值,当启动OGG进程时,根据环境动态加载此变量的值,达到在不同环境中,通过变量定义,实现多个环境的 ...

  8. 关于$.getJson

    这是一个Ajax函数的缩写,这相当于: 1 2 3 4 5 6 $.ajax({ dataType: "json", url: url, data: data, success: ...

  9. 2016-1-6第一个完整APP 私人通讯录的实现 4:编辑联系人

    一:建立编辑联系人的controller,并使其拥有模型contact,且有协议.代码如下 #import <UIKit/UIKit.h> #import "contact.h& ...

  10. Chapter 5: Container

    Chapter 5: Container A container is a module that processes the requests for a servlet and populates ...