SU(Seismic Unix)与CUDA的混合编程
当前,众多的学者在Linux下面用SU做地震勘探的编程,并与CUDA做融合,进行GPU编程开发。本人研究FWI(全波形反演),也是用CUDA+SU的方式编程C语言的程序。
那么在编写MakeFile文件的时候,如何将CUDA的库文件与SU的库文件进行结合呢?下面我给大家一个例子,大家可以参考着进行自己的编写。
SU+CUDA的MakeFile文件示例:
# Makefile for GPU program based on SU
# Home path
SU_HOME = /home/yourname/su
SU_HOME1 = /home/yourname/su/src/Complex
MPI_HOME = /home/ry/openmpi
CUDA_HOME = /home/yourname/cuda9
# Which compiler
NVCC = nvcc
# Include path
CFLAGS = -I$(SU_HOME)/include -I$(SU_HOME1)/include -I$(MPI_HOME)/include \
-I$(CUDA_HOME)/include
# Lib path
LFLAGS = -L$(SU_HOME)/lib -L$(SU_HOME1)/lib -L$(MPI_HOME)/lib \
-L$(CUDA_HOME)/lib64
LD = -lsu -lpar -lcwp -lm -lcublas -lcurand -lcufft -lcusparse
CU_APPS=appname
all: ${CU_APPS}
%: %.cu
-$(NVCC) -O2 -arch=sm_35 $(@F).cu -o $@ $(LD) $(LFLAGS) $(CFLAGS)
clean:
rm -f ${CU_APPS}
以上是我自己在用的一个Makefile文件,亲测有效。
SU(Seismic Unix)与CUDA的混合编程相关推荐
- SU(Seismic Unix)画图函数supsimage使用方法
一.简介 SU是基于类Unix平台的开源地震处理软件,不仅具有强大的数据处理能力,还能画出美观的地震剖面图. 这里介绍一个重要的画图函数supsimage. supsimage是一个二维绘图函数,类似 ...
- Ubuntu下SU(seismic unix)安装教程
记录程序人生 环境:linux 我用的是 ubuntu 16.04 具体步骤: 1 . 下载Seismic unix安装包 // Download the seismic unix 链接: https ...
- seismic unix地震数据处理流程
GEPH316 Seismic Data Processing https://pages.mtu.edu/~ctyoung/Robinson/Default.htm添加链接描述 Data proce ...
- CUDA、SU、MPI和Madagascar混合编程的Makefile文件配置
本人从事地震勘探的科研工作,在Ubuntu系统中用CUDA.SU.MPI和Madagascar做C语言的混合编程.多语言混合编程,关键之处在于Makefile文件的配置.在此给出一个简单的示例,供大家 ...
- Ubuntu16.04上安装SU(Seismic Unix)的基本步骤
Seismic Unix(SU)是科罗拉多矿业学院的波场研究中心(CWP)开发的一款开源地震数据处理软件,当前很多学者在Linux下用SU做地震数据的处理与编程.我本人是研究FWI的,也在Linux下 ...
- CUDA 8混合精度编程
CUDA 8混合精度编程 Mixed-Precision Programming with CUDA 8 论文地址:https://devblogs.nvidia.com/mixed-precisio ...
- C与CUDA混合编程的配置问题
C与CUDA混合编程的配置问题 2015-10-05 19:58 526人阅读 评论(2) 收藏 举报 分类: CUDA(6) 目录(?)[+] 原文: http://blog.csdn.net/u0 ...
- Java与Cuda混合编程
基本上和Java与C语言混合编程(链接)相同,就是在生成动态库的编译过程不同. 首先编写一个名为Main.java的文件,内容如下: class NativeMethod{public native ...
- Gtk与Cuda混合编程
大家都知道,不同的编译器有不同的-L和-I,而在编译过程中要实现两种编译器的混合使用,利用Makefile是一个很好地解决方案,比如之前在mpi与cuda混合编程中讨论的那样,基于图形界面的GTK编程 ...
最新文章
- linux平台下QtCreator中集成Valgrind系列工具
- WPF学习笔记(4):获取DataGridTemplateColumn模板定义的内容控件(转)
- 一个c++程序员的学习历程自述
- JAVA开发环境及其开发
- BZOJ4681 [jsoi2010]旅行
- 发布sensor_msgs/Range数据
- App邀请机制下,策略决定成败
- RuntimeError: Python is not installed as a framework. Mac下使用Matplotlib报错
- twitter跳过手机验证_twitter跳过手机验证_twitter手机验证不了_攻略
- 青春是一列不再回头的火车…
- html中document和Document的区别。
- 群晖docker签到京豆_在docker中建立一个自动签到站点
- wifidog源码分析 - 初始化阶段
- 综合Synthesis
- python随机生成验证码,数字+大小写字母
- 大家玩突袭2吗?呵呵我有秘籍哟!
- 淘宝/天猫/京东/抖音和聚划算百亿补贴、预售定金直链/BP链接制作生成教程
- 超低功耗水气表GSM/GPRS无线抄表模块
- 第三次作业辅导视频:微分方程求解(1)
- 一个清华大学毕业生在麻省理工学院读计算机专业看美国博士研究生如何攻博
热门文章
- controller,sevices层,java初步了解
- urllib,url中链接包含汉字怎么用百分号(%)加密处理
- bat转exe工具 Bat To Exe Converter v2.4.7 绿色版
- maven2打包不同jdk版本的包
- 如何以 JAVA call 一個現有的 dll 檔?
- RequestDispatcher对象的应用-请求转发
- 如何探测局域网中某台主机是否开机_「渲染」3Dmax 分布式渲染,局域网渲染,联机渲染教程...
- oracle右模糊查询不使用索引,oracle like模糊查询不能走索引?
- python中字典类型中的item是什么-Python中的字典介绍
- odoo13 订单模板设置_免费开源ERP Odoo 13系统E-mail邮件功能设置操作指南