⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 testgather.c

📁 shpf 1.9一个并行编译器
💻 C
字号:


#include <stdio.h>
#include "ad++.h"
#include "admacros.h"


void main(int argc, char* argv[]) {
  AdlibInit(argc, argv) ;

  Procs2 p(3, 2) ;

  Range t1(100, p.dim(0), BLK) ;
  //Range t2(100, p.dim(1), CYC, 20) ;
  Range t2(100, p.dim(1), BLK) ;

  Range x = t1.subrng(20, 15, 3) ;
  Range y = t2.subrng(15, 25, 5) ;

  Array2<int> a(p, x, y) ;

  Range i(10) ;
  Range j = t2.subrng(20, 70, -2) ;

  Array2<int> b(p, i, j), u(p, i, j), v(p, i, j), mask(p, i, j) ;

  on(p) {
    where(x) {
      where(y) {
	a(x, y) = 1000 * x + y ;
      } erewh(y) ;
    } erewh(x) ;

    where(i) {
      where(j) {
	b(i, j) = 0 ;
	u(i, j) = (i + j) % 20 ;
	v(i, j) = (i + (30 - j)) % 15 ;
	mask(i, j) = (i + j) % 2 ;
      } erewh(j) ;
    } erewh(i) ;
  } no(p) ;

  //gather(b, a, u, v) ;
  gatherMask(b, a, u, v, mask) ;

  aprintf("%3R0%3R1%10d\n", b) ;

  AdlibFinalize() ;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -