cuda magma 构建 使用cmake构建的步骤记录

这不是群论代数软件,而是cuda 矩阵计算软件

1. 生成其他精度的源代码


1.1 复制编辑 make.inc
    

cp make.inc-examples/make.inc.openblas  ./make.inc


 并修改其中的定义: OPENBLASDIR ?= /opt/OpenBLAS
 这需要实现安装openblas到此处。文件夹解构:
 /opt/OpenBLAS/include   lib

这个 make.inc 是给 生成各精度代码时使用的。

 
1.2 生成其他精度源文件

make generate


    除了s-c-d 三种精度的文件,还会生成一个叫做 CMake.src.cuda的文件,罗列了源文件的路径。


2. 生成Makefile
   

编辑 CMakeLists.txt关于openmp的部分,改成如下:

# ----------------------------------------
# locate OpenMP
find_package( OpenMP )
if (OPENMP_FOUND)
    set(OpenMP_C_FLAGS "-fopenmp")
    set(OpenMP_CXX_FLAGS "-fopenmp")
    message( STATUS "Found OpenMP" )
    message( STATUS "    OpenMP_C_FLAGS   ${OpenMP_C_FLAGS}" )
    message( STATUS "    OpenMP_CXX_FLAGS ${OpenMP_CXX_FLAGS}" )
    set( CMAKE_C_FLAGS   "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}" )
    set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}" )
endif()

即,增加了两行:

    set(OpenMP_C_FLAGS "-fopenmp")
    set(OpenMP_CXX_FLAGS "-fopenmp")

或者使用类似 cmake   ..   -DOpenMP_C_FLAGS='-flopenmp' 也可以

生成Makefile:

cmake .. -DMAGMA_ENABLE_CUDA=ON  -DGPU_TARGET='Turing'   -DBUILD_SHARED_LIBS=ON

3. 执行构建和测试
    

make -j
./testing/testing_dgetrf
#sudo make install
#如果只是看源代码,不需要install

效果图:

4. 运行集成测试程序

.../ex_magma/magma/build/testing$ ./testing_zunmqr_gpu

运行效果图:

  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值