大綱介紹 MPI 標準介紹 MPI 的主要目標 Compiler & Run 平行程式 MPICH 程式基本架構 點對點通訊 函數介紹 集體通訊 函數介紹
|
|
- 涨 闻
- 6 years ago
- Views:
Transcription
1 MPI 平行程式設計 勁智數位科技股份有限公司 技術研發部林勝峰
2 大綱介紹 MPI 標準介紹 MPI 的主要目標 Compiler & Run 平行程式 MPICH 程式基本架構 點對點通訊 函數介紹 集體通訊 函數介紹
3 MPI (Message Passing Interface) Version1.0:June, Version1.1:June, Version2.0:July,1997. Version1.2:Version1.1 的修正版本 目前各院校 政府機構和業界所開發的軟體皆為 1.1 或 1.2 版 ex:mpich LAM-MPI (all of MPI-1.2)
4 MPI 標準 點對點傳訊 (Point to Point Comm.) 集體傳訊 (Collective Comm.) 行程組 (Process Groups) 傳訊情況 (Contexts) 行程拓撲 (Process Topologies) Fortran 和 C 的整合 (Bindings)
5 MPI 的主要目標 成為應用程式和程式庫軟體的訊息傳遞介面 MPI 標準是設計給多電腦系統和異質性網路電腦,MPI 的介面在基本的傳訊和系統軟體沒有重大的改變時, 就可以運作各種不同平台上 提供一個可靠的傳訊介面 : 使用者不必去應付傳訊失敗的情況 MPI 的介面必須很容易和 Fortran,C 程式語言連接, 但是介面的語意必需獨立於程式語言 慣用訊息傳遞程式 ( 如 PVM) 的使用者也能熟悉 MPI 的語法
6 MPI 相關資訊 MPI 標準 : MPI 相關書籍 : Using MPI: Portable Parallel Programming with the Message-Passing Interface by Gropp, Lusk and Skjellum, MIT Press, 1994 MPI: The Complete Reference by Snir Otto, Huss-Lederman, Walker and Dongarra, MIT Press 1996 MPI: The Complete Reference, Vol 1 and 2, MIT Press 1998 其它資訊 :
7 Compile a MPI program mpif77 hello.f -o hello mpicc hello.c -o hello -o hello 是指定編譯時所產生的執行檔名 若沒有指定 (mpif77 hello.f or mpicc hello.c) 則會產生 a.out 為執行檔
8 各種 compiler 指令一覽 : C C++ F77 F90 GNU gcc g++ f77 N/A PGI Pgcc pgcc Pgf77 pgf90 Intel(32) icc icc Ifc ifc Intel(64) Ecc ecc Efc efc
9 Using MPICH to execute program Create a hosts list file mpirun -machinefile hosts -nolocal -np 4 hello -machinefile : 指定加入運算的資源 -nolocal : 本機端不參與運算 -np : 處理器數量
10 machinefile hosts ex : vi hosts node01:2 node02 node02 node03 node04
11 MPI 程式基本架構 MPI_INIT MPI_FINALIZE MPI_COMM_SIZE MPI_COMM_RANK
12 Include file : mpif.h 使用 MPI 撰寫 Fortran 平行程式時, 必須在每一個程式 ( 包括主程式和副程式 ) 的宣告段落裏加上 INCLUDE 'mpif.h' 陳述 (statement) mpif.h 檔案裏含有編譯 MPI 平行程式所必須 MPI 字彙與 MPI 常數 (constant) 不同廠商設定的 MPI 常數也許不盡相同, 但是所使用的 MPI 字彙則是完全一致 ex: MPI_SEND, MPI_RECV
13 MPI_INIT 與 MPI_FINALIZE 在叫用 (CALL) 其他 MPI 函數或副程式之前必須先叫用 MPI_INIT 副程式, 來啟動該程式在多個 CPU 上的平行計算工作 在程式結束 (STOP) 之前必須叫用 MPI_FINALIZE 副程式, 以結束平行計算工作 所以 MPI_INIT 和 MPI_FINALIZE 在主程式裡只要叫用一次就夠了
14 MPI_COMM_SIZE 與 MPI_COMM_RANK MPI_COMM_SIZE 得知參與平行計算的 CPU 個數 (NPROC) MPI_COMM_RANK 得知我是第幾個 CPU(MYID), 第幾個 CPU 是從 0 開始起算 通常要在幾個 CPU 上作平行計算是在下執行命令時決定的 (ex:mpirun -np) 這兩個 MPI 副程式在一個程式裏只要叫用一次就可以了
15 MPI_COMM_SIZE 與 MPI_COMM_RANK 格式 : CALL MPI_COMM_SIZE (MPI_COMM_WORLD, NPROC, MPI_ERR) CALL MPI_COMM_RANK (MPI_COMM_WORLD, MYID, MPI_ERR)
16 Example:hello.f program main include 'mpif.h' integer NPROC, MYID, MPI_ERR call MPI_INIT(MPI_ERR) call MPI_COMM_SIZE(MPI_COMM_WORLD,NPROC,MPI_ERR) call MPI_COMM_RANK(MPI_COMM_WORLD,MYID,MPI_ERR) write(*,*), 'Hello world! I am ',MYID,' of ', NPROC call MPI_FINALIZE(MPI_ERR) end
17 Example:hello.c #include<stdio.h> #include "mpi.h" int main(argc, argv) int argc; char **argv; { int nproc,myid,err; err=mpi_init(&argc,&argv); err=mpi_comm_size(mpi_comm_world,&nproc); err=mpi_comm_rank(mpi_comm_world,&myid); printf("hello World! I am %d of %d\n ", myid,nproc); err=mpi_finalize(); }
18 Communicators MPI_INIT 執行後, 系統會自行產生兩個 Communicators: MPI_COMM_WORLD 和 MPI_COMM_SELF MPI_COMM_WORLD 包含所有參與運算的 CPU MPI_COMM_SELF 只有包含自己這個 CPU 屬於同一個 Communicator 的 CPU 才能互傳資料 要產生其它 Communicator, 可以用 MPI_COMM_SPLIT 這個函式
19 平行程式函數解說 (part1) Summary: 點對點通訊 (point to point communication) 函數 MPI_SEND MPI_RECV 介紹
20 MPI_SEND,MPI_RECV 一個 CPU 與另外一個 CPU 之間的資料傳送屬於 點對點通訊, 送出資料的 CPU 要叫用 MPI_SEND 來送資料, 而收受資料的 CPU 要叫用 MPI_RECV 來收資料 一個 MPI_SEND 必須要有一個對應的 MPI_RECV 與之配合, 才能完成一份資料的傳送工作
21 Envelope MPI 在傳送資料 (MPI_SEND MPI_RECV) 時, 是以下列四項構成其 信封 (envelope), 用以識別一件訊息 (message) 1. 送出資料的 CPU id 2. 收受資料的 CPU id 3. 資料標籤 4. Communicator 一個 CPU 送給另外一個 CPU 多種資料時, 不同的資料要用不同的資料標籤, 以資識別
22 MPI_SEND CALL MPI_SEND (DATA,ICOUNT,DATA_TYPE, IDEST,ITAG,MPI_COMM_WORLD,MPI_ERR) DATA : 要送出去的資料起點, 可以是純量 (scalar) 或陣列 (array) 資料 ICOUNT : 要送出去的資料數量, 當 ICOUNT 的值大於 1 時, DATA 必須是陣列 DATA_TYPE : 是要送出去的資料類別 IDEST : 是收受資料的 CPU id ITAG : 要送出去的資料標籤
23 MPI_RECV CALL MPI_RECV(DATA,ICOUNT,DATA_TYPE, ISRC,ITAG,MPI_COMM_WORLD,ISTATUS,MPI_ERR) DATA : 是要收受的資料起點 ICOUNT : 是要收受的資料數量 DATA_TYPE : 是要收受的資料類別 ISRC : 是送出資料的 CPU id ITAG : 是要收受的資料標籤 ISTATUS : 是執行 MPI_RECV 副程式之後的返回狀況 INTEGER ISTATUS(MPI_STATUS_SIZE)
24 MPI fortran data types MPI data type MPI_CHARACTER MPI_LOGICAL MPI_INTEGER MPI_REAL,MPI_REAL4 MPI_REAL8,MPI_DOUBLE_PRECI SION MPI_COMPLEX,MPI_COMPLEX8 MPI_COMPLEX16,MPI_DOUBLE_C OMPLEX MPI_BYTE MPI_PACKED Fortran data type CHARACTER LOGICAL INTEGER REAL,REAL*4 REAL*8,DOUBLE_PRECISION COMPLEX,COMPLEX*8 COMPLEX*16
25 MPI C data type MPI data type MPI_CHAR MPI_SHORT MPI_INT MPI_LONG MPI_UNSIGNED_CHAR MPI_UNSIGNED_SHORT MPI_UNSIGNED MPI_UNSIGNED_LONG MPI_FLOAT MPI_DOUBLE MPI_LONG_DOUBLE MPI_PACKED C data type Signed char Signed short int Signed int Signed long int Unsigned char Unsigned short int Unsigned int Unsigned long int Float Double Long double
26 MPI_GET_COUNT CALL MPI_GET_COUNT(ISTATUS,DATA_TYPE, ISIZE,MPI_ERR) ISTATUS : 是之前執行 MPI_RECV 副程式的返回狀況 DATA_TYPE : 是要收受的資料類別 ISIZE : 是 MPI_RECV 副程式實際收到的資料數量 不確定所接收資料的來源時,ISTATUS 也可以用來判別送出資料的 CPU ID ISRC=ISTATUS(MPI_SOURCE)
27 processor 0 call MPI_SEND sendbuf dest,tag,comm sysbuf processor 1 call MPI_RECV recvbuf sysbuf
28 MPI_ISEND CALL MPI_ISEND (DATA,ICOUNT,DATA_TYPE, IDEST,ITAG,MPI_COMM_WORLD,REQUEST,MPI_ERR) DATA : 要送出去的資料起點, 可以是純量 (scalar) 或陣列 (array) 資料 ICOUNT : 要送出去的資料數量, 當 ICOUNT 的值大於 1 時, DATA 必須是陣列 DATA_TYPE : 是要送出去的資料類別 IDEST : 是收受資料的 CPU id ITAG : 要送出去的資料標籤 REQUEST : 為此次傳送的編號, 供 MPI_WAIT 查詢使用 ( 資料型態 Integer 無須定義值, MPICH 給定 )
29 MPI_IRECV CALL MPI_IRECV(DATA,ICOUNT,DATA_TYPE, ISRC,ITAG,MPI_COMM_WORLD,REQUEST,MPI_ERR) DATA : 是要收受的資料起點 ICOUNT : 是要收受的資料數量 DATA_TYPE : 是要收受的資料類別 ISRC : 是送出資料的 CPU id ITAG : 是要收受的資料標籤 REQUEST : 為此次傳送的編號, 供 MPI_WAIT 查詢使用 ( 資料型態為 Integer 無須定義值, MPICH 給定 )
30 MPI_WAIT CALL MPI_WAIT(REQUEST,ISTATUS, MPI_ERR) REQUEST : ISEND 及 IRECV 中所使用的 REQUEST 名稱 ISTATUS : 是執行此副程式之後的結果 INTEGER ISTATUS(MPI_STATUS_SIZE) 此指令用來等待並確認編號為 REQUEST 的 ISEND 或 IRECV 指令是否完成傳送
31 ISEND 及 IRECV 範例 INTEGER req(2),ierr,istatus(mpi_status_size)... IF(MYID.eq.0)THEN CALL MPI_ISEND (A,2,MPI_REAL,1,100,MPI_COMM_WORLD,req(1),ierr)... ELSE CALL MPI_IRECV (A,N,MPI_REAL,0,100,MPI_COMM_WORLD,req(1),ierr)... ENDIF CALL MPI_WAIT(req(1),ISTATUS,ierr)...
32 MPI_SENDRECV CALL MPI_SENDRECV( DATA_A,ICOUNT,DATA_TYPE,DEST,ITAG, DATA_B,ICOUNT,DATA_TYPE,SOURCE,ITAG, MPI_COMM_WORLD,ISTATUS,MPI_ERR) DATA_A 是要送出的資料起點 DATA_B 是要接收的資料起點 ICOUNT : 資料的數量 DATA_TYPE : 資料類別 DEST : 是送出資料的目的地 CPU id SOURCE: 是接收資料來源的 CPU id ITAG : 是要接收的資料標籤 ISTATUS : 是執行 MPI_RECV 副程式之後的返回狀況 INTEGER ISTATUS(MPI_STATUS_SIZE)
33 Deadlock MPI_SEND 與 MPI_RECV 是相對出現, 每一個執行到的 MPI_SEND 都要有一個 MPI_RECV 在其它 CPU 與之對應 以下情形有可能會造成 Deadlock, 也就是程式會卡住無法繼續執行 : CPU 0 CPU 1 SEND(1) RECV(1) SEND(0) RECV(0) 解決方法 : 小心處理 MPI_SEND 與 MPI_RECV 的位置 使用 Non-blocking 資料傳輸函式 : MPI_ISEND/MPI_IRECV 使用 MPI_SENDRECV 函式
34 平行程式函數解說 (part2) Summary: 集體通訊 函數 MPI_BCAST MPI_SCATTER MPI_GATHER MPI_ALLGATHER MPI_REDUCE MPI_ALLREDUCE MPI_BARRIER MPI_WTIME
35 集體通訊 集體通訊 類副程式 屬於同一個 communicator 的每一個 CPU 都要參與運作 使用這一種指令時, 每一個 CPU 都必須叫用同一個副程式 MPI_BCAST MPI_SCATTER MPI_GATHER MPI_ALLGATHER MPI_REDUCE MPI_ALLREDUCE MPI_BARRIER MPI_WTIME
36 MPI_BCAST IROOT = 0 CALL MPI_BCAST (B, ICOUNT, DATA_TYPE, IROOT, MPI_COMM_WORLD,MPI_ERR) B : 是要送出的資料起點, 可以是簡單變數或陣列名稱 ICOUNT : 是送出去的資料數量 DATA_TYPE : 是要送出的資料類別 IROOT : 是送出資料的 CPU id
37 MPI_BCAST 示意圖 CPU0 B B1 B2 B3 B4 CPU0 B B1 B2 B3 B4 CPU1 CPU2 CPU3 MPI_BCAST CPU1 CPU2 CPU3 B B B B1 B2 B3 B4 B1 B2 B3 B4 B1 B2 B3 B4 IROOT = 0 CALL MPI_BCAST (B, ICOUNT, DATA_TYPE, IROOT, MPI_COMM_WORLD, MPI_ERR)
38 MPI_SCATTER IROOT = 0 CALL MPI_SCATTER (T, N, DATA_TYPE, B, N, DATA_TYPE,IROOT,MPI_COMM_WORLD,MPI_ERR) T : 是待送出陣列的起點 N : 是送給每一個 CPU 的資料數量 DATA_TYPE : 是待送出資料的類別 B : 是接收資料存放的起點, 如果 N 大於 1 時, B 必須是個陣列 N : 是接收資料的數量 DATA_TYPE : 是接收資料的類別 IROOT : 是送出資料的 CPU id 請注意每一段資料必須等長
39 MPI_SCATTER 示意圖 CPU0 T T1 T2 T3 T4 CPU0 B B1 CPU1 CPU2 MPI_SCATTER CPU1 CPU2 B B B2 B3 CPU3 CPU3 IROOT = 0 CALL MPI_SCATTER (T, N, DATA_TYPE, B, N, DATA_TYPE,IROOT,MPI_COMM_WORLD, MPI_ERR) B B4
40 MPI_GATHER IDEST = 0 CALL MPI_GATHER (A, N, DATA_TYPE, T, N, DATA_TYPE, IDEST, MPI_COMM_WORLD, MPI_ERR) A : 是待送出的資料起點, 如果 N 大於 1 時, A 必須是個陣列 N : 是待送出資料的數量 DATA_TYPE : 是待送出資料的類別 T : 是接收資料存放的陣列起點 N : 接收來自各個 CPU 的資料數量 DATA_TYPE : 是接收資料的類別 IDEST : 是收集資料的 CPU id 請注意每一段資料必須等長
41 MPI_GATHER 示意圖 CPU0 T T1 T2 T3 T4 CPU0 A A1 CPU1 CPU1 A A2 CPU2 MPI_GATHER CPU2 A A3 CPU3 CPU3 A A4 IDEST = 0 CALL MPI_GATHER (A, N, DATA_TYPE, T, N, DATA_TYPE, IDEST, MPI_COMM_WORLD, MPI_ERR)
42 MPI_ALLGATHER CALL MPI_ALLGATHER (A, N, DATA_TYPE, T, N, DATA_TYPE,MPI_COMM_WORLD, MPI_ERR) A : 是待送出的資料起點, 如果 N 值大於 1 時, A 必須是個陣列 N : 是待送出資料的數量 DATA_TYPE : 是待送出資料的類別 T : 是接收資料存放的陣列起點 N : 是接收來自各個 CPU 的資料數量 DATA_TYPE : 是接收資料的類別
43 MPI_ALLGATHER 示意圖 CPU0 T T1 T2 T3 T4 CPU0 A A1 CPU1 CPU2 T T T1 T2 T3 T4 T1 T2 T3 T4 ALLGATHER CPU1 CPU2 A A A2 A3 CPU3 T T1 T2 T3 T4 CPU3 A A4 CALL MPI_ALLGATHER (A, N, DATA_TYPE, T, N, DATA_TYPE,MPI_COMM_WORLD, MPI_ERR)
44 MPI_REDUCE,MPI_ALLREDUCE 集體通訊 類副程式 reduction operation MPI_REDUCE 運作的結果只存放在指定的 CPU 裏 MPI_ALLREDUCE 則是把運作的結果存放在每一個 CPU 裏
45 MPI_REDUCE IROOT = 0 CALL MPI_REDUCE ( SUMA, SUMALL, KOUNT,DATA_TYPE, MPI_SUM, IROOT, MPI_COMM_WORLD, MPI_ERR) SUMA : 待運作 ( 累加 ) 的變數 SUMALL : 存放運作 ( 累加 ) 後的結果 ( 把各個 CPU 上的 SUMA 加總 ) KOUNT : 待運作 ( 累加 ) 的資料個數 DATA_TYPE : SUMA 和 SUMALL 的資料類別 MPI_SUM : 運作函數 IROOT : 存放運作結果的 CPU_id
46 MPI_REDUCE 示意圖 CPU0 SUMA 0.2 CPU0 SUMALL 1.7 CPU1 SUMA 0.5 REDUCE CPU1 CPU2 SUMA 0.3 MPI_SUM CPU2 CPU3 SUMA 0.7 CPU3 IROOT = 0 CALL MPI_REDUCE ( SUMA, SUMALL, KOUNT,DATA_TYPE, MPI_SUM, IROOT, MPI_COMM_WORLD, MPI_ERR)
47 MPI Reduction Function 指令 MPI_SUM MPI_PROD MPI_MAX MPI_MIN MPI_MAXLOC MPI_MINLOC MPI_LAND MPI_LOR MPI_LXOR MPI_BAND MPI_BOR MPI_BXOR Operation sum 累加 product 乘積 maximum 最大值 minimum 最小值 max value and location min value and location logical AND logical OR logical exclusive OR binary AND binary OR binary exclusive OR Data type MPI_INTEGER,MPI_REAL MPI_REAL8,MPI_COMPLEX MPI_COMPLEX16 MPI_INTEGER,MPI_REAL MPI_REAL8 MPI_DOUBLE_PRECISION MPI_2INTEGER,MPI_2REAL MPI_2DOUBLE_PRECISION MPI_LOGICAL MPI_INTEGER MPI_BYTE
48 MPI_ALLREDUCE CALL MPI_ALLREDUCE( SUMA, SUMALL, KOUNT, DATA_TYPE, MPI_SUM, MPI_COMM_WORLD, MPI_ERR) SUMA : 待運作 ( 累加 ) 的變數 SUMALL : 存放運作 ( 累加 ) 後的結果 ( 把各個 CPU 上的 SUMA 加總 ) KOUNT : 待運作 ( 累加 ) 的資料個數 DATA_TYPE : SUMA 和 SUMALL 的資料類別 MPI_SUM : 運作函數
49 MPI_ALLREDUCE 示意圖 CPU0 SUMA 0.2 CPU0 SUMALL 1.7 CPU1 SUMA 0.5 ALLREDUCE CPU1 SUMALL 1.7 CPU2 SUMA 0.3 MPI_SUM CPU2 SUMALL 1.7 CPU3 SUMA 0.7 CPU3 SUMALL 1.7 CALL MPI_ALLREDUCE( SUMA, SUMALL, KOUNT, DATA_TYPE, MPI_SUM, MPI_COMM_WORLD, MPI_ERR)
50 MPI_BARRIER MPI_BARRIER 是屬於 集體通訊 類的副程式, 可以使所有 CPU 達到 同步 (synchronized) 的狀況 等到所有 CPU 執行到 MPI_BARRIER 之後, 處理步驟才會繼續下個動作
51 MPI_WTIME MPI_WTIME() 是用來取得當時的 clock time, 其計量單位是秒鐘 如果想知道參與平行計算各 CPU 花費多少時間來完成平行程式的執行工作, 可以在呼叫完 MPI_INIT 之後取得一個 MPI_WTIME, 然後在呼叫 MPI_FINALIZE 之前再取得一個 MPI_WTIME, 後者減掉前者, 就可取得各 CPU 執行程式所花費的時間了
52 平行程式的切割方式 1. 計算切割, 資料不切割 程式易閱讀易維護 2. 計算切割, 資料切割 節省記憶體使用量
53 計算切割而資料不切割之示意圖 I=1 50 I= I= I= CPU 0 CPU 1 CPU 2 CPU 3 REAL A(200) REAL A(200) REAL A(200) REAL A(200) DO I=1,200 A(I)=B(I)+C(I)*D(I) ENDDO DO I=ISTART,IEND A(I)=B(I)+C(I)*D(I) ENDDO
54 計算切割且資料切割之示意圖 I= Local index I=(1 50) (51 100) ( ) ( ) REAL A(200) Global index REAL B(200) REAL C(200) REAL D(200) CPU 0 CPU 1 CPU 2 CPU 3 DO I=1,200 A(I)=B(I)+C(I)*D(I) ENDDO DO I=1,50 A(I)=B(I)+C(I)*D(I) ENDDO
55 課 程結束
56 程式平行化的考量 是否該平行化 - 平行化後的效率是否顯著 Ts=Tc+Tio Tp=Tc/N+Tio+Tm - 有那些替代方案 平行化的困難在那裡
57 遞迴計算 DO 100 J=1,MY DO 100 I=1,MX X(I,J)=X(I,J) + (X(I 1,J) + X(I, J 1)) * CONTINUE 由於資料相依性的緣故, 在 X(I-1,J) 以及 X(I,J-1) 算出來之前 X(I.J) 將無法計算, 因此雖然資料可以分割計算, 但是由於相依性的緣故, 將無法同時平行化處理, 而需要以類似 pipeline 的方式, 也就是第一個 CPU 處理好第一塊資料後, 將邊界條件交給其它 CPU 後, 這些 CPU 才能開始計算 由於一開始的 CPU 閑置, 加上資料傳送的時間, 因此平行化的效率將會降低
投影片 1
平行運算簡介 / 實例操作企鵝也會的 MPICH 研究員 : 鄧偉華 wade@nchc.org.tw 什麼是平行計算 傳統 : 單一程序 單一 CPU 什麼是平行計算 ( 續 ) 平行計算 程序切割 多 CPUs 為什麼要平行計算 簡省時間 解決大型問題 即時性 使用更多來自網路上的資源 使用大量 便宜 PCs 取代超級電腦 記憶體不足 平行計算種類 Flynn's taxonomy 多處理器架構
More information消息传递并行编程环境MPI.doc
973 MPI PETS 8 15 8 16 8 17 MPI MPI MPI MPI 2 MPI PETS PETS 1 1971 7 1992 1997 1999 2 MPI MPI MPI 1 MPI MPI MPI 2 - u=f MPI 3 1 proess 1 2 2 CPU 4 send reeive barrier redution 1 2 3 CPU soket, 4 : API
More information第7章-并行计算.ppt
EFEP90 10CDMP3 CD t 0 t 0 To pull a bigger wagon, it is easier to add more oxen than to grow a gigantic ox 10t 0 t 0 n p Ts Tp if E(n, p) < 1 p, then T (n) < T (n, p) s p S(n,p) = p : f(x)=sin(cos(x))
More informationMicrosoft PowerPoint - KN002.ppt
MPI II 1300141 14114 16001630 1630 MPI 11 11 3 MPI MPI-110 MPI- SPMD Single Program/Instruction Multiple Data CPU 4 PE: Processing Element PE #0 Program Data #0 PE #1 Program Data #1 SPMD mpirun -np M
More informationPowerPoint 演示文稿
第四讲 消息传递编程接口 MPI 一 MPI 编程基础 主要内容 MPI 安装 程序编译与运行 MPI 编程基础 MPI 程序基本结构 MPI 数据类型 消息发送和接收 MPI 一些常用函数 MPI 介绍 Message Passing Interface 消息传递编程标准, 目前最为通用的并行编程方式 提供一个高效 可扩展 统一的并行编程环境 MPI 是一个库, 不是一门语言,MPI 提供库函数
More informationmpic_2002
C 語言 MPI 平行計算程式設計 編著 : 鄭守成 期 間 : 民國 91 年 1 月 1 日 電話 : (03) 5776085 x 305 E-mail : c00tch00@nchc.gov.tw 1 C 語言 MPI 平行計算程式設計...1 第一章 前言...4 1.1 MPI 平行計算軟體...5 1.2 國家高速電腦中心的平行計算環境...6 1.3 在 IBM SP2 上如何使用
More informationMicrosoft PowerPoint - Tongji_MPI编程初步
并行编程初步 张丹丹 上海超级计算中心 2011-3-4 提纲 引言 认识 MPI 编程 MPI 编程简介 实例 并行计算机体系架构 共享存储 (Shared Memory) 并行计算机体系架构 分布式存储 (Distributed Memory) 混合架构 (Hybrid) 并行计算机体系架构 并行编程模型 数据并行模型 相同的操作同时作用于不同的数据 共享变量模型 用共享变量实现并行进程间的通信
More information模板
MPI MPI MPI MPI MPI MPI 4 18 9% 5 ? 6 ? 7 数 个数 数 个数 个数 个数 8 ccnuma; SMP MPP; Cluster 9 10 11 12 13 MPI MPI MPI MPI MPI? MPI MPI MPI MPI 15 MPI? MPI(Message Passing Interface ) 1994 5 MPI MPI MPI MPI C
More informationLinux Linux Linux
2003 2003 8 28 http://lssc.cc.ac.cn/training2003 1 3 23 Linux 37 3.1............................................... 37 3.2 Linux..................................... 37 3.3 Linux..................................
More informationCC213
: (Ken-Yi Lee), E-mail: feis.tw@gmail.com 9 [P.11] : Dev C++ [P.12] : http://c.feis.tw [P.13] [P.14] [P.15] [P.17] [P.23] Dev C++ [P.24] [P.27] [P.34] C / C++ [P.35] 10 C / C++ C C++ C C++ C++ C ( ) C++
More informationParallel Programming with MPI
MPI 并行编程入门 中国科学院计算机网络信息中心超级计算中心 聚合通信 定义 三种通信方式 聚合函数列表 同步 广播 收集 散发 全散发收集 归约 定义 communicator 1 3 4 5 0 2 一个通信器的所有进程参与, 所有进程都调用聚合通信函数 MPI 系统保证聚合通信函数与点对点调用不会混淆 聚合通信不需要消息标号 聚合通信函数都为阻塞式函数 聚合通信的功能 : 通信 同步 计算等
More informationCC213
: (Ken-Yi Lee), E-mail: feis.tw@gmail.com 49 [P.51] C/C++ [P.52] [P.53] [P.55] (int) [P.57] (float/double) [P.58] printf scanf [P.59] [P.61] ( / ) [P.62] (char) [P.65] : +-*/% [P.67] : = [P.68] : ,
More informationPowerPoint Presentation
并行计算 十五 分布存储系统并行编程 分布存储系统并行编程 14.1 基于消息传递的并行编程 14.2 MPI 并行编程 6 个基本函数组成的 MPI 子集 MPI 消息 点对点通信 群集通信 SPMD 和 MPMD SPMD 各个进程是同构的, 多个进程对不同的数据执行相同的代码 ( 一般是数据并行 ) 常对应并行循环, 数据并行结构, 单代码 MPMD 各个进程是异构的, 多个进程执行不同的代码
More informationDepartment of Science and Engineering Computing School of Mathematics School Peking University October 9, 2007
Department of Science and Engineering Computing School of Mathematics School Peking University October 9, 2007 Department of Science and Engineering Computing School of Mathematics School Peking University
More information07-1.indd
1 02 04 13 16 19 21 24 28 32 38 44 49 54 12 27 57 58 59 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Å 20 ELMFIRE Procon LES EFSS CohortComparator GPaw 21 22 ï ~ ~ ~ ~ 23 24 25 26 CPU usage time (s) time
More informationParallel Programming with MPI
MPI 并行编程入门 中国科学院计算机网络信息中心超级计算中心 参考材料 张林波清华大学出版社莫则尧科学出版社都志辉清华大学出版社 消息传递平台 MPI 什么是 MPI (Message Passing Interface) 是函数库规范, 而不是并行语言 ; 操作如同库函数调用 是一种标准和规范, 而非某个对它的具体实现 (MPICH 等 ), 与编程语言无关 是一种消息传递编程模型, 并成为这类编程模型的代表
More informationmpif_2003
Fortran 語言 MPI 平行計算程式設計 編著 : 鄭守成 期 間 : 民國 92 年 2 月 12 日 電話 : (03) 5776085 x 305 E-mail : c00tch00@nchc.gov.tw 1 Fortran 語言...1 MPI 平行計算程式設計...1 第一章 前言...5 1.1 MPI 平行計算軟體...6 1.2 國家高速網路與計算中心的平行計算環境...7
More information投影片 1
資料庫管理程式 ( 補充教材 -Part2) 使用 ADO.NET 連結資料庫 ( 自行撰寫程式碼 以實現新增 刪除 修改等功能 ) Private Sub InsertButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles InsertButton.Click ' 宣告相關的 Connection
More informationC 1
C homepage: xpzhangme 2018 5 30 C 1 C min(x, y) double C // min c # include # include double min ( double x, double y); int main ( int argc, char * argv []) { double x, y; if( argc!=
More informationC/C++语言 - C/C++数据
C/C++ C/C++ Table of contents 1. 2. 3. 4. char 5. 1 C = 5 (F 32). 9 F C 2 1 // fal2cel. c: Convert Fah temperature to Cel temperature 2 # include < stdio.h> 3 int main ( void ) 4 { 5 float fah, cel ;
More information科学计算的语言-FORTRAN95
科 学 计 算 的 语 言 -FORTRAN95 目 录 第 一 篇 闲 话 第 1 章 目 的 是 计 算 第 2 章 FORTRAN95 如 何 描 述 计 算 第 3 章 FORTRAN 的 编 译 系 统 第 二 篇 计 算 的 叙 述 第 4 章 FORTRAN95 语 言 的 形 貌 第 5 章 准 备 数 据 第 6 章 构 造 数 据 第 7 章 声 明 数 据 第 8 章 构 造
More informationC++ 程式設計
C C 料, 數, - 列 串 理 列 main 數串列 什 pointer) 數, 數, 數 數 省 不 不, 數 (1) 數, 不 數 * 料 * 數 int *int_ptr; char *ch_ptr; float *float_ptr; double *double_ptr; 數 (2) int i=3; int *ptr; ptr=&i; 1000 1012 ptr 數, 數 1004
More informationPowerPoint 演示文稿
第六讲 消息传递编程接口 MPI 二 MPI 消息传递 1 MPI 消息传递 MPI 点对点通信类型 阻塞型和非阻塞型 MPI 消息发送模式 标准模式 缓冲模式 同步模式 就绪模式 MPI 聚合通信 多个进程间的通信 2 阻塞型和非阻塞型通信 阻塞型 (blocking) 和非阻塞型 (non blocking) 通信 阻塞型通信函数需要等待指定的操作实际完成, 或所涉及的数据被 MPI 系统安全备份后才返回
More informationPowerPoint 演示文稿
机群应用开发 并行编程原理及程序设计 Parallel Programming: Fundamentals and Implementation 占杰 zhanjie@dawningcomcn 曙光信息产业有限公司 2010 年 1 月 2010 年 1 月 1 参考文献 黄铠, 徐志伟著, 陆鑫达等译 可扩展并行计算技术, 结构与编程 北京 : 机械工业出版社, P33~56,P227~237,
More informationPowerPoint 演示文稿
机群应用开发 并行编程原理及程序设计 Parallel Programming: Fundamentals and Implementation 戴荣 dair@dawningcomcn 曙光信息产业有限公司 2008 年 7 月 2008 年 7 月 1 参考文献 黄铠, 徐志伟著, 陆鑫达等译 可扩展并行计算技术, 结构与编程 北京 : 机械工业出版社, P33~56,P227~237, 2000
More informationmpi
MPI I II MPI FORTRAN C MPI MPI C /FORTRAN MPI MPI MPI MPI MPI MPI-2 MPI-1 MPI-2 MPI MPI ...IX...XI... XII...XIV... XVII...1 1...2 1.1...2 1.1.1...2 1.1.2...3 1.2...4 1.3...5 2...6 2.1...6 2.2...7 2.3...8
More informationPython a p p l e b e a r c Fruit Animal a p p l e b e a r c 2-2
Chapter 02 變數與運算式 2.1 2.1.1 2.1.2 2.1.3 2.1.4 2.2 2.2.1 2.2.2 2.2.3 type 2.2.4 2.3 2.3.1 print 2.3.2 input 2.4 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 + 2.4.6 Python Python 2.1 2.1.1 a p p l e b e a r c 65438790
More informationTrilinos 简介 Trilinos 简介 卢朓 Trilinos 简介 卢朓 Trilinos 简介 Trilinos 简介 Trilinos 的安装和使用 Trilinos 简介 Trilinos 简介 Trilinos 的安装和使用 Trilinos 简介 Trilinos Epetra
Department of Science and Engineering Computing School of Mathematics School Peking University Department of Science and Engineering Computing School of Mathematics School Peking University August 14,
More informationebook8-30
3 0 C C C C C C++ C + + C++ GNU C/C++ GNU egcs UNIX shell s h e l l g a w k P e r l U N I X I / O UNIX shell awk P e r l U N I X C C C C C C U N I X 30.1 C C U N I X 70 C C U N I X U N I X U N I X C Dennis
More informationmannal
高 性 能 集 群 计 算 机 使 用 说 明 书 版 本 1.0.8 高 性 能 计 算 研 究 组 编 2008 年 3 月 12 日 第 1 页 共 30 页 高 性 能 集 群 计 算 机... 1 使 用 说 明 书... 1 高 性 能 计 算 集 群 使 用 说 明... 3 1. 集 群 系 统 概 述... 3 2. 使 用 方 法... 5 1. 登 录 方 法... 5 2.MPI
More informationchi@sccas.cn, chi@sc.cnic.cn http://lssc.cc.ac.cn/ http://www.sccas.cn/ http://www.scgrid.cn/ http://www.cngrid.org/ 2005 4 6 3 5 1.1............................ 5 1.2............................. 6 1.2.1..........................
More informationExcel VBA Excel Visual Basic for Application
Excel VBA Jun5,00 Sub 分頁 () Dim i As Integer Dim Cname As String Dim Code As Variant Set score=thisworkbook.sheets("sheet") Code=Array(" 專北一 "," 專北二 "," 專北三 "," 專桃園 "," 專桃竹 "," 專中苗 ", " 專台中 "," 專台南 ","
More informationMicrosoft Word - 2CA13內文.doc
006 公 民 - 歷 屆 試 題 全 解 答 案 是 完 全 正 確 的? : 能 源 使 用 愈 多, 除 了 帶 來 經 濟 成 長 外, 相 對 的, 也 會 帶 來 負 面 的 環 保 問 題 我 們 在 發 展 經 濟 的 過 程 中, 若 不 能 兼 顧 環 境 資 源 的 保 育, 將 賠 上 後 代 子 孫 的 生 存 環 境, 這 是 下 列 那 一 種 理 念? 比 較 利 益
More information目录 第一章 MPI 简介 消息传递编程的相关概念 分布式内存 消息传输 进程 消息传递库 发送 / 接收 同步 / 异步 阻塞
神威蓝光 计算机系统 MPI 用户手册 国家超级计算济南中心 2011 年 03 月 目录 第一章 MPI 简介... 1 1.1 消息传递编程的相关概念... 2 1.1.1 分布式内存... 2 1.1.2 消息传输... 3 1.1.3 进程... 3 1.1.4 消息传递库... 3 1.1.5 发送 / 接收... 3 1.1.6 同步 / 异步... 3 1.1.7 阻塞通讯... 4
More information1 LINUX IDE Emacs gcc gdb Emacs + gcc + gdb IDE Emacs IDE C Emacs Emacs IDE ICE Integrated Computing Environment Emacs Unix Linux Emacs Emacs Emacs Un
Linux C July 27, 2016 Contents 1 Linux IDE 1 2 GCC 3 2.1 hello.c hello.exe........................... 5 2.2............................... 9 2.2.1 -Wall................................ 9 2.2.2 -E..................................
More informationFun Time (1) What happens in memory? 1 i n t i ; 2 s h o r t j ; 3 double k ; 4 char c = a ; 5 i = 3; j = 2; 6 k = i j ; H.-T. Lin (NTU CSIE) Referenc
References (Section 5.2) Hsuan-Tien Lin Deptartment of CSIE, NTU OOP Class, March 15-16, 2010 H.-T. Lin (NTU CSIE) References OOP 03/15-16/2010 0 / 22 Fun Time (1) What happens in memory? 1 i n t i ; 2
More informationDepartment of Science and Engineering Computing School of Mathematics School Peking University August 14, 2007
Department of Science and Engineering Computing School of Mathematics School Peking University August 14, 2007 Department of Science and Engineering Computing School of Mathematics School Peking University
More informationMicrosoft PowerPoint - VCAD.ppt []
WG HPCHPC 2 2004 MD-GRAPE2 GRAPE1989 MDM:MD-GRAPE2 2004MDMRSCC 2006MD-GRAPE3 1 Peta FLOPS 200611Gordon Bell installed Honorable MD-GRAPE3 Planed (RIKEN) Mention180TFLOPS 1PetaFLOPS MD-GRAPE3 BlueGene/Q
More information3.1 num = 3 ch = 'C' 2
Java 1 3.1 num = 3 ch = 'C' 2 final 3.1 final : final final double PI=3.1415926; 3 3.2 4 int 3.2 (long int) (int) (short int) (byte) short sum; // sum 5 3.2 Java int long num=32967359818l; C:\java\app3_2.java:6:
More informationFY.DOC
高 职 高 专 21 世 纪 规 划 教 材 C++ 程 序 设 计 邓 振 杰 主 编 贾 振 华 孟 庆 敏 副 主 编 人 民 邮 电 出 版 社 内 容 提 要 本 书 系 统 地 介 绍 C++ 语 言 的 基 本 概 念 基 本 语 法 和 编 程 方 法, 深 入 浅 出 地 讲 述 C++ 语 言 面 向 对 象 的 重 要 特 征 : 类 和 对 象 抽 象 封 装 继 承 等 主
More informationMicrosoft Word - 把时间当作朋友(2011第3版)3.0.b.06.doc
2 5 8 11 0 13 1. 13 2. 15 3. 18 1 23 1. 23 2. 26 3. 28 2 36 1. 36 2. 39 3. 42 4. 44 5. 49 6. 51 3 57 1. 57 2. 60 3. 64 4. 66 5. 70 6. 75 7. 83 8. 85 9. 88 10. 98 11. 103 12. 108 13. 112 4 115 1. 115 2.
More information840 提示 Excel - Excel -- Excel (=) Excel ch0.xlsx H5 =D5+E5+F5+G5 (=) = - Excel 00
Excel - - Excel - -4-5 840 提示 Excel - Excel -- Excel (=) Excel ch0.xlsx H5 =D5+E5+F5+G5 (=) = - Excel 00 ( 0 ) 智慧標籤 相關說明提示 -5 -- Excel 4 5 6 7 8 + - * / % ^ = < >= & 9 0 (:) (,) ( ) Chapter - :,
More informationepub83-1
C++Builder 1 C + + B u i l d e r C + + B u i l d e r C + + B u i l d e r C + + B u i l d e r 1.1 1.1.1 1-1 1. 1-1 1 2. 1-1 2 A c c e s s P a r a d o x Visual FoxPro 3. / C / S 2 C + + B u i l d e r / C
More information2/80 2
2/80 2 3/80 3 DSP2400 is a high performance Digital Signal Processor (DSP) designed and developed by author s laboratory. It is designed for multimedia and wireless application. To develop application
More information( CIP) /. :, ( ) ISBN TP CIP ( 2005) : : : : * : : 174 ( A ) : : ( 023) : ( 023)
( CIP) /. :, 2005. 2 ( ) ISBN 7-5624-3339-9.......... TP311. 1 CIP ( 2005) 011794 : : : : * : : 174 ( A ) :400030 : ( 023) 65102378 65105781 : ( 023) 65103686 65105565 : http: / /www. cqup. com. cn : fxk@cqup.
More informationThe golden pins of the PCI card can be oxidized after months or years
Q. 如何在 LabWindows/CVI 編譯 DAQ Card 程式? A: 請參考至下列步驟 : 步驟 1: 安裝驅動程式 1. 安裝 UniDAQ 驅動程式 UniDAQ 驅動程式下載位置 : CD:\NAPDOS\PCI\UniDAQ\DLL\Driver\ ftp://ftp.icpdas.com/pub/cd/iocard/pci/napdos/pci/unidaq/dll/driver/
More informationSlide 1
HPC 最佳实例 Tools, Compilers, and profiling 刘通 2010 年 10 月国际高性能计算咨询委员会中国区总监 Compilers and Libraries 免费编译器 GNU Compiler Open64 付费编译器 PGI Intel 數學函数庫 ACML Intel MKL MPI 库 Open MPI MVAPICH Platform MPI Intel
More information目 录 参 考 材 料 1 第 一 章 预 备 知 识 2 1.1 高 性 能 并 行 计 算 机 系 统 简 介.................................. 2 1.1.1 微 处 理 器 的 存 储 结 构.................................
MPI 并 行 编 程 讲 稿 张 林 波 中 国 科 学 院 数 学 与 系 统 科 学 研 究 院 科 学 与 工 程 计 算 国 家 重 点 实 验 室 1999 年 7 月 ( 最 后 修 订 :2012 年 7 月 ) i 目 录 参 考 材 料 1 第 一 章 预 备 知 识 2 1.1 高 性 能 并 行 计 算 机 系 统 简 介..................................
More informationC语言的应用.PDF
AVR C 9 1 AVR C IAR C, *.HEX, C,,! C, > 9.1 AVR C MCU,, AVR?! IAR AVR / IAR 32 ALU 1KBytes - 8MBytes (SPM ) 16 MBytes C C *var1, *var2; *var1++ = *--var2; AVR C 9 2 LD R16,-X ST Z+,R16 Auto (local
More information<4D6963726F736F667420576F7264202D20482E323634B5F8B054BD73BD58A4A7A5ADA6E6A4C6ACE3A8732E646F63>
H.264 視 訊 編 碼 之 平 行 化 研 究 專 題 學 生 : 廖 友 誌 陳 彥 豪 指 導 教 授 : 李 良 德 教 授 大 同 大 學 資 訊 工 程 學 系 專 題 報 告 中 華 民 國 九 十 七 年 六 月 摘 要 H.264 是 新 一 代 的 視 訊 壓 縮 標 準, 它 提 供 了 更 高 的 壓 縮 效 能, 使 壓 縮 品 質 進 一 步 的 提 升, 也 使 得
More information, 7, Windows,,,, : ,,,, ;,, ( CIP) /,,. : ;, ( 21 ) ISBN : -. TP CIP ( 2005) 1
21 , 7, Windows,,,, : 010-62782989 13501256678 13801310933,,,, ;,, ( CIP) /,,. : ;, 2005. 11 ( 21 ) ISBN 7-81082 - 634-4... - : -. TP316-44 CIP ( 2005) 123583 : : : : 100084 : 010-62776969 : 100044 : 010-51686414
More information1 Project New Project 1 2 Windows 1 3 N C test Windows uv2 KEIL uvision2 1 2 New Project Ateml AT89C AT89C51 3 KEIL Demo C C File
51 C 51 51 C C C C C C * 2003-3-30 pnzwzw@163.com C C C C KEIL uvision2 MCS51 PLM C VC++ 51 KEIL51 KEIL51 KEIL51 KEIL 2K DEMO C KEIL KEIL51 P 1 1 1 1-1 - 1 Project New Project 1 2 Windows 1 3 N C test
More informationOracle Solaris Studio makefile C C++ Fortran IDE Solaris Linux C/C++/Fortran IDE "Project Properties" IDE makefile 1.
Oracle Solaris Studio 12.2 IDE 2010 9 2 8 9 10 11 13 20 26 28 30 32 33 Oracle Solaris Studio makefile C C++ Fortran IDE Solaris Linux C/C++/Fortran IDE "Project Properties" IDE makefile 1. "File" > "New
More information座號
學 姐 們 的 升 學 經 驗 分 享 以 下 是 98 學 年 度 畢 業 數 理 資 優 班 學 姐 們 的 應 試 秘 笈 林 耀 星 老 師 註 : 以 下 問 題 之 回 答, 若 前 面 為 (1), 表 示 為 (1) 劉 思 伶 學 姐 之 建 議, 以 此 類 推, 回 答 問 題 之 學 姐 共 10 位, 如 下 表 : 座 號 姓 名 考 上 的 科 系 強 科 (1) 劉
More information51 C 51 isp 10 C PCB C C C C KEIL
http://wwwispdowncom 51 C " + + " 51 AT89S51 In-System-Programming ISP 10 io 244 CPLD ATMEL PIC CPLD/FPGA ARM9 ISP http://wwwispdowncom/showoneproductasp?productid=15 51 C C C C C ispdown http://wwwispdowncom
More informationMPI实验.doc
MPI 实验手册 2014 年 5 月 实验环境说明 : 虚拟机 :Vmware Workstation 9 Linux 系统 :CentOS 6.3 每台机器上有 3 个未配置的虚拟机节点用于进行 MPI 环境配置实验, 有 3 个已配置好 的节点可以直接运行 MPI 程序 3 台已配置好的 Linux 虚拟机 IP 地址如下, 可以登录系统用 ifconfig 指令查看 node1 192.168.1.11
More informationMicrosoft Word - ACL chapter02-5ed.docx
第 2 章神奇的質數 2.1.1 什麼是質數 1 1 1 打下好基礎 - 程式設計必修的數學思維與邏輯訓練 1 1 0 10 2 3 5 7 4 6 8 9 10 4 10000 1229 1000 168 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131
More informationuntitled
Fortran Chapter 7 Subroutine ( ) and Function 7-1 subroution 行 不 行 來 行 The general form of a subroutine is subroutine subroutine_name ( argument_list) (Declaration section) (Execution section) retrun end
More information第 15 章 程 式 編 写 語 言 15.1 程 式 編 写 語 言 的 角 色 程 式 編 寫 語 言 是 程 式 編 寫 員 與 電 腦 溝 通 的 界 面 語 法 是 一 組 規 則 讓 程 式 編 寫 員 將 字 詞 集 合 起 來 電 腦 是 處 理 位 元 和 字 節 的 機 器, 與
程 式 編 写 語 言 在 完 成 這 章 後, 你 將 能 夠 了 解 程 式 編 写 語 言 的 功 能 了 解 高 階 語 言 和 低 階 語 言 之 間 的 分 別 知 道 翻 譯 程 式 的 意 義 和 能 夠 把 翻 譯 程 式 分 類 為 : 匯 編 程 式 編 譯 程 式 和 解 譯 程 式 認 識 不 同 翻 譯 程 式 的 優 點 和 缺 點 程 式 是 指 揮 電 腦 的 指
More information_汪_文前新ok[3.1].doc
普 通 高 校 本 科 计 算 机 专 业 特 色 教 材 精 选 四 川 大 学 计 算 机 学 院 国 家 示 范 性 软 件 学 院 精 品 课 程 基 金 青 年 基 金 资 助 项 目 C 语 言 程 序 设 计 (C99 版 ) 陈 良 银 游 洪 跃 李 旭 伟 主 编 李 志 蜀 唐 宁 九 李 涛 主 审 清 华 大 学 出 版 社 北 京 i 内 容 简 介 本 教 材 面 向
More information新版 明解C++入門編
511!... 43, 85!=... 42 "... 118 " "... 337 " "... 8, 290 #... 71 #... 413 #define... 128, 236, 413 #endif... 412 #ifndef... 412 #if... 412 #include... 6, 337 #undef... 413 %... 23, 27 %=... 97 &... 243,
More informationOracle Oracle Solaris Studio IDE makefile C C++ Fortran makefile IDE Solaris Linux C/C++/Fortran Oracle IDE "P
Oracle Solaris Studio 12.3 IDE 2011 12 E26461-01 2 7 8 9 9 Oracle 10 12 14 21 26 27 29 31 32 33 Oracle Solaris Studio IDE makefile C C++ Fortran makefile IDE Solaris Linux C/C++/Fortran Oracle IDE "Project
More informationuntitled
MODBUS 1 MODBUS...1 1...4 1.1...4 1.2...4 1.3...4 1.4... 2...5 2.1...5 2.2...5 3...6 3.1 OPENSERIAL...6 3.2 CLOSESERIAL...8 3.3 RDMULTIBIT...8 3.4 RDMULTIWORD...9 3.5 WRTONEBIT...11 3.6 WRTONEWORD...12
More information新・明解C言語入門編『索引』
!... 75!=... 48 "... 234 " "... 9, 84, 240 #define... 118, 213 #include... 148 %... 23 %... 23, 24 %%... 23 %d... 4 %f... 29 %ld... 177 %lf... 31 %lu... 177 %o... 196 %p... 262 %s... 242, 244 %u... 177
More informationA Preliminary Implementation of Linux Kernel Virus and Process Hiding
邵 俊 儒 翁 健 吉 妍 年 月 日 学 号 学 号 学 号 摘 要 结 合 课 堂 知 识 我 们 设 计 了 一 个 内 核 病 毒 该 病 毒 同 时 具 有 木 马 的 自 动 性 的 隐 蔽 性 和 蠕 虫 的 感 染 能 力 该 病 毒 获 得 权 限 后 会 自 动 将 自 身 加 入 内 核 模 块 中 劫 持 的 系 统 调 用 并 通 过 简 单 的 方 法 实 现 自 身 的
More information, 即 使 是 在 昏 暗 的 灯 光 下, 她 仍 然 可 以 那 么 耀 眼 我 没 有 地 方 去, 你 会 带 着 我 么 杜 晗 像 是 在 嘲 笑 一 般, 嘴 角 的 一 抹 冷 笑 有 着 不 适 合 这 个 年 龄 的 冷 酷 和 无 情, 看 着 江 华 的 眼 神 毫 无 温
爱 情 飞 过 苍 凉 / 作 者 :18758265241 1 红 色 格 子 的 旅 行 箱, 在 湿 漉 漉 地 上 发 出 刺 啦 刺 啦 的 声 音, 那 么 刺 耳, 就 像 是 此 刻 杜 晗 的 里 一 样, 烦 躁 而 不 安 就 这 样 走 出 来 了,18 年 禁 锢 自 己 的 地 方 就 在 身 后, 杜 晗 手 指 关 节 泛 白, 紧 紧 地 拉 着 旅 行 箱, 走
More information上海市本科教学质量年度报告
上 海 市 本 科 教 学 质 量 年 度 报 告 数 据 内 涵 说 明 V2.0 版 上 海 市 教 委 高 教 处 上 海 喆 思 (2015.07.02) 目 录 一 基 本 统 计 挃 标 说 明... 4 二 挃 标 解 释... 4 1. 全 日 制 在 校 本 科 生 数 及 占 在 校 生 总 数 的 比 例 ( 学 年 )... 4 2. 当 年 本 科 招 生 与 业 总 数
More information運算子多載 Operator Overloading
函數樣板 (Function Template) 與 類別樣板 (Class Template) 講師 : 洪安 1 資料結構與 C++ 程式設計進階班 為何需要通用函數? (1/2) int abs(int x) { return (x>0)?x:-x; 取名困難不好記 float fabs(float x) { return (x>0)?x:-x; complex cabs(complex x)
More information6 C51 ANSI C Turbo C C51 Turbo C C51 C51 C51 C51 C51 C51 C51 C51 C C C51 C51 ANSI C MCS-51 C51 ANSI C C C51 bit Byte bit sbit
6 C51 ANSI C Turbo C C51 Turbo C C51 C51 C51 C51 C51 C51 C51 C51 C51 6.1 C51 6.1.1 C51 C51 ANSI C MCS-51 C51 ANSI C C51 6.1 6.1 C51 bit Byte bit sbit 1 0 1 unsigned char 8 1 0 255 Signed char 8 11 128
More information運算子多載 Operator Overloading
多型 Polymorphism 講師 : 洪安 1 多型 編譯時期多型 ( 靜態多型 ) function overloading 如何正確呼叫同名的函數? 利用參數個數與型態 operator overloading 其實同 function overloading 執行時期多型 ( 或動態多型 ) 如何正確呼叫不同物件的相同名稱的成員函數 利用繼承與多型 2 子類別與父類別物件間的指定 (assignment)
More informationebook14-4
4 TINY LL(1) First F o l l o w t o p - d o w n 3 3. 3 backtracking parser predictive parser recursive-descent parsing L L ( 1 ) LL(1) parsing L L ( 1 ) L L ( 1 ) 1 L 2 L 1 L L ( k ) k L L ( 1 ) F i r s
More informationuntitled
料 2-1 料 料 x, y, z 料 不 不 料濾 料 不 料 料 不 料 錄 料 2-1 a 料 2-1 b 2003 a 料 b 料 2-1 料 2003 料 料 行 料濾 料亂 濾 料 料 滑 料 理 料 2001 料 兩 理 料 不 TIN, Triangular Irregular Network 8 2-2 a 數 量 料 便 精 2003 料 行 理 料 立 狀 連 料 狀 立 料
More informationuntitled
3 C++ 3.1 3.2 3.3 3.4 new delete 3.5 this 3.6 3.7 3.1 3.1 class struct union struct union C class C++ C++ 3.1 3.1 #include struct STRING { typedef char *CHARPTR; // CHARPTR s; // int strlen(
More informationPowerPoint Presentation
中 小 IT 企 业 人 力 资 源 管 理 咨 询 简 介 一 背 景 分 析 二 需 求 分 析 三 服 务 内 容 四 操 作 流 程 五 斯 隆 优 势 六 行 业 案 例 七 服 务 理 念 目 录 一 背 景 分 析 -IT 业 现 状 分 析 IT 产 业 的 总 量 水 平 较 低 中 国 IT IT 现 状 总 体 规 模 较 小 技 术 自 主 创 新 能 力 差 对 经 济 的
More informationebook 132-6
6 SQL Server Windows NT Windows 2000 6.1 Enterprise Manager SQL Server Enterprise Manager( ) (Microsoft Management C o n s o l e M M C ) Enterprise Manager SQL Server Enterprise Manager 6.1.1 Enterprise
More informationD C 93 2
D9223468 3C 93 2 Java Java -- Java UML Java API UML MVC Eclipse API JavadocUML Omendo PSPPersonal Software Programming [6] 56 8 2587 56% Java 1 epaper(2005 ) Java C C (function) C (reusability) eat(chess1,
More informationuntitled
不 料 料 例 : ( 料 ) 串 度 8 年 數 串 度 4 串 度 數 數 9- ( ) 利 數 struct { ; ; 數 struct 數 ; 9-2 數 利 數 C struct 數 ; C++ 數 ; struct 省略 9-3 例 ( 料 例 ) struct people{ char name[]; int age; char address[4]; char phone[]; int
More informationSpyder Anaconda Spyder Python Spyder Python Spyder Spyder Spyder 開始 \ 所有程式 \ Anaconda3 (64-bit) \ Spyder Spyder IPython Python IPython Sp
01 1.6 Spyder Anaconda Spyder Python Spyder Python Spyder Spyder 1.6.1 Spyder 開始 \ 所有程式 \ Anaconda3 (64-bit) \ Spyder Spyder IPython Python IPython Spyder Python File
More informationMaster Thesis_專門用來製作目錄.doc
Introduction All-IP [1-4] All-IP packet switching long delay time, jitter packet loss All-IP Budget-Based QoS End-to-End QoS (real time on demand) 1 1.1 Circuit Switching Packet Switching DWDM IP VoIP
More informationmvc
Build an application Tutor : Michael Pan Application Source codes - - Frameworks Xib files - - Resources - ( ) info.plist - UIKit Framework UIApplication Event status bar, icon... delegation [UIApplication
More information目录
ALTERA_CPLD... 3 11SY_03091... 3 12SY_03091...4....5 21 5 22...8 23..10 24..12 25..13..17 3 1EPM7128SLC.......17 3 2EPM7032SLC.......18 33HT46R47......19..20 41..20 42. 43..26..27 5151DEMO I/O...27 52A/D89C51...28
More informationTel:010-62981668-2930 1
Access 93C46 with SPI function V1.0.0 Jan. 31, 2005 http://www.sunplusmcu.com Tel:010-62981668-2930 http://www.sunplusmcu.com E-mail:mcu@sunplus.com.cn 1 0 0...2 1...3 2...4 2.1...4 2.2...5 3...6 3.1 AT93C46...6
More informationuntitled
Ogre Rendering System http://antsam.blogone.net AntsamCGD@hotmail.com geometry systemmaterial systemshader systemrendering system API API DirectX OpenGL API Pipeline Abstraction API Pipeline Pipeline configurationpipeline
More informationuntitled
1 5 IBM Intel 1. IBM 第 1/175 页 第 2/175 页 第 3/175 页 80 第 4/175 页 2. IBM 第 5/175 页 3. (1) 第 6/175 页 第 7/175 页 第 8/175 页 = = 第 9/175 页 = = = = = 第 10/175 页 = = = = = = = = 3. (2) 第 11/175 页 第 12/175 页 第 13/175
More information2 2 3 DLight CPU I/O DLight Oracle Solaris (DTrace) C/C++ Solaris DLight DTrace DLight DLight DLight C C++ Fortran CPU I/O DLight AM
Oracle Solaris Studio 12.2 DLight 2010 9 2 2 3 DLight 3 3 6 13 CPU 16 18 21 I/O DLight Oracle Solaris (DTrace) C/C++ Solaris DLight DTrace DLight DLight DLight C C++ Fortran CPU I/O DLight AMP Apache MySQL
More information华恒家庭网关方案
LINUX V1.5 1 2 1 2 LINUX WINDOWS PC VC LINUX WINDOWS LINUX 90% GUI LINUX C 3 REDHAT 9 LINUX PC TFTP/NFS http://www.hhcn.com/chinese/embedlinux-res.html minicom NFS mount C HHARM9-EDU 1 LINUX HHARM9-EDU
More information团 学 要 闻 我 校 召 开 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 3 月 17 日, 我 校 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 在 行 政 办 公 楼 五 楼 会 议 室 举 行, 校 团 委 委 员 各 院 ( 系 ) 团 委 书 记 校 学 生
共 青 团 工 作 简 报 2011 年 第 1 期 共 青 团 大 连 海 洋 大 学 委 员 会 团 学 要 闻 : 导 读 我 校 召 开 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 我 校 在 大 连 市 大 学 生 创 新 创 意 作 品 大 赛 中 取 得 佳 绩 校 团 委 召 开 学 生 干 部 思 想 动 态 座 谈 会 校 团 委 组 织 开 展 弘 扬 雷 锋
More information邏輯分析儀的概念與原理-展示版
PC Base Standalone LA-100 Q&A - - - - - - - SCOPE - - LA - - ( Embedded ) ( Skew ) - Data In External CLK Internal CLK Display Buffer ASIC CPU Memory Trigger Level - - Clock BUS Timing State - ( Timing
More informationC
C 2017 4 1 1. 2. while 3. 4. 5. for 6. 2/161 C 7. 8. (do while) 9. 10. (nested loop) 11. 12. 3/161 C 1. I 1 // summing.c: 2 #include 3 int main(void) 4 { 5 long num; 6 long sum = 0L; 7 int status;
More informationC/C++语言 - 分支结构
C/C++ Table of contents 1. if 2. if else 3. 4. 5. 6. continue break 7. switch 1 if if i // colddays.c: # include int main ( void ) { const int FREEZING = 0; float temperature ; int cold_ days
More information<4D F736F F D D342DA57CA7DEA447B14D2DA475B57BBB50BADEB27AC3FEB14DA447B8D5C344>
1. 請 問 誰 提 出 積 體 電 路 (IC) 上 可 容 納 的 電 晶 體 數 目, 約 每 隔 24 個 月 (1975 年 更 改 為 18 個 月 ) 便 會 增 加 一 倍, 效 能 也 將 提 升 一 倍, 也 揭 示 了 資 訊 科 技 進 步 的 速 度? (A) 英 特 爾 (Intel) 公 司 創 始 人 戈 登. 摩 爾 (Gordon Moore) (B) 微 軟 (Microsoft)
More information1 2 3 1 2 1 3 1 4 1 5 1 6 1 7 4 5 6 1 3 1 4 1 4 1 5 1 5 1 6 7 1 6 1 7 - 1983 0 0 1 1 1 2 2 NP complete ElvisPresley 1935 1977
More information1 2 3 1 2 1 3 1 4 1 5 1 6 1 7 4 5 6 1 3 1 4 1 4 1 5 1 5 1 6 7 1 6 1 7 - 1983 0 0 1 1 1 2 2 NP complete ElvisPresley 1935 1977
More informationMicrosoft Word - PHP7Ch01.docx
PHP 01 1-6 PHP PHP HTML HTML PHP CSSJavaScript PHP PHP 1-6-1 PHP HTML PHP HTML 1. Notepad++ \ch01\hello.php 01: 02: 03: 04: 05: PHP 06:
More informationuntitled
A, 3+A printf( ABCDEF ) 3+ printf( ABCDEF ) 2.1 C++ main main main) * ( ) ( ) [ ].* ->* ()[] [][] ** *& char (f)(int); ( ) (f) (f) f (int) f int char f char f(int) (f) char (*f)(int); (*f) (int) (
More information雲端 Cloud Computing 技術指南 運算 應用 平台與架構 10/04/15 11:55:46 INFO 10/04/15 11:55:53 INFO 10/04/15 11:55:56 INFO 10/04/15 11:56:05 INFO 10/04/15 11:56:07 INFO
CHAPTER 使用 Hadoop 打造自己的雲 8 8.3 測試 Hadoop 雲端系統 4 Nodes Hadoop Map Reduce Hadoop WordCount 4 Nodes Hadoop Map/Reduce $HADOOP_HOME /home/ hadoop/hadoop-0.20.2 wordcount echo $ mkdir wordcount $ cd wordcount
More informationuntitled
1 DBF (READDBF.C)... 1 2 (filetest.c)...2 3 (mousetes.c)...3 4 (painttes.c)...5 5 (dirtest.c)...9 6 (list.c)...9 1 dbf (readdbf.c) /* dbf */ #include int rf,k,reclen,addr,*p1; long brec,erec,i,j,recnum,*p2;
More informationC/C++ 语言 - 循环
C/C++ Table of contents 7. 1. 2. while 3. 4. 5. for 6. 8. (do while) 9. 10. (nested loop) 11. 12. 13. 1 // summing.c: # include int main ( void ) { long num ; long sum = 0L; int status ; printf
More information