Skip to content

MAGMAのインストール

atinfinity edited this page Mar 20, 2017 · 12 revisions

MAGMAのインストール

はじめに

MAGMA(Matrix Algebra on GPU and Multicore Architectures)はNVIDIA GPUおよびマルチコアCPU向けの線形代数ライブラリである.ここではMAGMAのインストール手順についてまとめる(以降はCUDA ToolKitがインストール済であるものとして説明する).

MAGMAのインストール

公式ドキュメントにはMakefileを使ったインストール手順が書かれているが,CMakeLists.txtも提供されているため,ここではCMakeを使ったインストール手順を述べる.

ソースコード入手

ダウンロードページからMAGMAのソースコード(magma-2.2.0.tar.gz)を入手する.

ソースコード展開

下記コマンドでソースコードを展開する.

tar xfvz magma-2.2.0.tar.gz
cd magma-2.2.0

CMakeLists.txt変更

必要に応じて筆者が作成したパッチファイルを適用する. このパッチファイルを適用することで以下の変更が加えられる.必要に応じて変更のこと.

  • Pascalアーキテクチャ向けのビルド設定追加
  • MAGMAライブラリをshared libraryとして生成
  • テストプログラムのビルドを無効化

CMake実行

筆者が作成したビルドスクリプトを実行する. このビルドスクリプトは以下のビルド設定となっている.必要に応じて変更のこと.

  • Releaseビルド
  • Fortran無効
  • ターゲットとしてPascalアーキテクチャを指定

ビルドおよびインストール

下記コマンドでビルドおよびインストールを行う.

make -j4
sudo make install
sudo ldconfig

デフォルトだと/usr/local/includeにヘッダファイル,/usr/local/lib以下にライブラリファイルがインストールされる.

サンプルコード

// あとで書きます

CMakeLists.txtサンプル

MAGMAを使ったプログラムのCMakeLists.txtの雛形は以下の通り.

cmake_minimum_required(VERSION 2.8)
project(magma_simple)

find_package(CUDA REQUIRED)
find_library(MAGMA_LIBRARY magma)
set(MAGMA_INCLUDE_DIR /usr/local/include)
file(GLOB SOURCES "*.cpp" "*.c" "*.h" "*.hpp")

if(CUDA_FOUND)
  add_executable(magma_simple ${SOURCES})
  include_directories(${MAGMA_INCLUDE_DIR} ${CUDA_INCLUDE_DIRS})
  target_link_libraries(magma_simple ${MAGMA_LIBRARY} ${CUDA_LIBRARIES} ${CUDA_cublas_LIBRARY})
endif(CUDA_FOUND)

備考

筆者は以下の環境で動作確認した.

  • Ubuntu 16.04 64bit
  • gcc 5.4.0
  • CUDA 8.0
  • MAGMA 2.2.0
  • NVIDIA GTX 1060

Menu

Computer Vision

GPGPU

AR

ROS

Docker

Jetson

ARM

プログラミング言語

開発環境

勉強会

Clone this wiki locally