Makefile for OpenCL

INCLUDE=-I/usr/local/cuda/include/            -I/usr/local/cuda/include/CL            -I/usr/include             -I/usr/include/c++
LIBRARY_PATH :=-L/usr/local/cuda/lib64
LIBRARIES :=-lOpenCL
LINKPATH  :=/usr/lib/
TARGETS   :=$(notdir $(PWD))
OBJECTS   =$(patsubst %.cpp, %.o, $(wildcard *.cpp))
TIMEOBJECTS :=IML_PrecisionTimer.o                stimer.o

INCLUDE+=-I../shareIMLTimer
.SUFFIXES:.o .cpp
.cpp.o:
        g++ $(INCLUDE) -c -g -o [email protected] $<  

all:$(OBJECTS) $(TIMEOBJECTS)
    ln -s libOpenCL.so libOpenCL.so.0
    ln -s libOpenCL.so libOpenCL.so.0.0
    g++    $(INCLUDE) -g -o $(TARGETS) $^ $(LIBRARY_PATH) $(LIBRARIES)
run:
    ./$(TARGETS)    

$(TIMEOBJECTS):
    cd ../shareIMLTimer && make && cp *.o $(PWD) 

clean:
    rm -rf ../shareIMLTimer/*.o
    rm -rf *.o libOpenCL.so.0 libOpenCL.so.0.0
    rm -rf $(TARGETS)
    rm -rf *.txt 
时间: 2024-10-25 21:37:52

Makefile for OpenCL的相关文章

编译GDAL支持OpenCL使用GPU加速

前言 GDAL库中提供的gdalwarp支持各种高性能的图像重采样算法,图像重采样算法广泛应用于图像校正,重投影,裁切,镶嵌等算法中,而且对于这些算法来说,计算坐标变换的运算量是相当少的,绝大部分运算量都在图像的重采样算法中,尤其是三次卷积采样以及更高级的重采样算法来说,运算量会成倍的增加,所以提升这些算法的处理效率优先是提高重采样的效率.由于GPU的多核心使得目前对于GPU的并行处理非常热,同时也能大幅度的提升处理速度.基于上述原因,GDALWARP也提供了基于OPENCL的GPU加速,之前在

OpenCL Device Information

1 #include <stdio.h> 2 #include <stdlib.h> 3 4 #ifdef __APPLE__ 5 #include <OpenCL/opencl.h> 6 #else 7 #include <CL/cl.h> 8 #endif 9 10 11 12 #define MEM_SIZE (128) 13 #define MAX_SOURCE_SIZE (0x100000) 14 15 int main() 16 { 17 cl_

OpenCV GPU CUDA OpenCL 配置

首先,正确安装OpenCV,并且通过测试. 我理解GPU的环境配置由3个主要步骤构成. 1. 生成关联文件,即makefile或工程文件 2. 编译生成与使用硬件相关的库文件,包括动态.静态库文件. 3. 将生成的库文件加入到程序中,加入过程类似于OpenCV库的添加过程. 详细操作参见: http://wenku.baidu.com/link?url=GGDJLZFwhj26F50GqW-q1ZcWek-QN2kAgVJ5SHrQcmte-nx9-GyIUKxGwIvtzJ_WoBddvasI

一步一步写一个简单通用的makefile(三)

上一篇一步一步写一个简单通用的makefile(二) 里面的makefile 实现对通用的代码进行编译,这一章我将会对上一次的makefile 进行进一步的优化. 优化后的makefile: #Hellomake #Magnum, 2014-10-20 # 指令编译器和选项 CC=gcc CFLAGS=-Wall # 需要链接库的库名,比如libm.a,就是-lm,需要去掉前面的lib和后面的.a LIBS=-lm # 设置默认搜索头文件的路径,优先是这个,然后是系统路径 IncludeDir

4.5-安装OpenCL Caffe By Fabian Tschopp (@naibaf7)

安装inter driver for OpenCL for CPU /opt/intel/intel-opencl-1.2-5.0.0.43 lsb-core >= 4.0 sudo apt-get install lsb-core 下载源文件make 修改Makefile.config USE_CUDA := 0 make all make test make runtest 失败 修改config文件 失败 源文件CMake 安装ViennaCL sudo apt-get install l

关于makefile中变量的多次赋值以及override指令

1 基本原则如下 1.1 原则1 变量的普通赋值是有先后顺序的,后面的赋值会覆盖掉前面的赋值. 1.2 原则2 使用的时候,用的是其前面最后的赋值,就算其后面有使用了override指令的赋值也不会影响这条原则. 1.3 原则3 当使用了override指令定义赋值了变量后,其后对该变量的所有的赋值都是无效的.但是override之前的所有的赋值都是有效的.使用的时候是往前最近原则. 2 override变量.命令行参数和普通变量之间的屏蔽关系 override变量会屏蔽命令行参数,除非用+=:

使用Makefile去管理程序

前言:在gcc中如何使用分屏操作  : 在命令行中使用    : sp + filename     vim  Makefile  编辑make工程   第一行使用 # 进行注释   说明是什么make  内容格式:  目标文件:  依赖文件 ·  ·  ·  但是一定要注意如果要使用编译指令一定要用table键 不能使用几个空格代替 另外  max.h 和min.h 的内容就是函数声明 下面说下这样make的好处吧:  在大型程序中能很好帮我们管理我们的代码和项目,程序的任何部分分工都很明确,

Contiki 2.7 Makefile 文件(三)

2.第二部分 这里的usage,targets,savetarget,savedefines都是伪目标. 和all不同,这些伪目标不会被执行,除非显式指定这些目标. 这里有两个目标savetarget,savedefines前边我们提过. 通过命令 make TARGET=esb savetarget可以保存默认的TARGET到Makefile.target中. 通过命令 make TARGET=esb DEFINES=MYTRACE,MYVALUE=4711 savedefines 可以保存默

My first makefile to compile multiple C files

I have three files to compile: main.c, func.c,  func.h The steps: 1   main.c   to   main.o 2   func.c    to   func.o 3    link main.o func.o to main(file that can execute) So, u need to run at least three commands without a Makefile.Then if u have 10