GPU编程实例

本文介绍了在GPU上进行并行编程的实际操作,以联想深腾7000G GPU集群为平台,展示了如何编译GPU程序,并提供了向量加法和矩阵乘法的实例。实验结果将保存在.log文件中,错误信息则存储在.err文件。
摘要由CSDN通过智能技术生成

GPU是多核技术的代表之一,在一块芯片上集成多个较低功耗的核心,单个核心频率基本不变,一般在1~3GHz,设计重心转向到多核的集成技术,GPU是一种特殊的多核处理器。本文在联想深腾7000G GPU集群上进行实验,该集群有100个节点,每个节点包含两个4核CPU(Intel XEON),16GB内存,其中16个节点配置一块GPU卡,18个节点配置两块GPU卡。

编译GPU程序nvcc –o vectorAdd vectorAdd.cu

运行:

为了方便,写了简单的shell脚本,具体内容如下:

if [ -f $@.log ]; then
    rm $@.log
fi
if [ -f $@.err ]; then
    rm $@.err
fi
bsub -q c2050 -o $@.log -e $@.err ./$@

示例:

1. 向量加法

#include<stdio.h>
#define N 200000
#define M 500
__global__ void kernelvectorAdd(int *dev_a,int *dev_b,int *dev_c)
{
	int tid=blockIdx.x*blockDim.x+threadIdx.x;
	if(tid<N)
	{
		dev_c[tid]=dev_a[tid]+dev_b[tid];
	}
}
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值