Konwersja Octave do użycia CuBLAS
Chciałbym przekonwertować Octave, aby używać CuBLAS do mnożenia macierzy. Ten film wskazuje, że jest to tak proste, jak wpisanie 28 znaków:
Korzystanie z biblioteki CUDA w celu przyspieszenia aplikacji
W praktyce jest to trochę bardziej skomplikowane. Czy ktoś wie, jaka dodatkowa praca musi zostać wykonana, aby modyfikacje wprowadzone w tym filmie zostały skompilowane?
AKTUALIZACJAOto metoda, którą próbuję
w dMatrix.cc dodaj
#include <cublas.h>
w dMatrix.cc zmień wszystkie zdarzenia (zachowujące)
dgemm
do
cublas_dgemm
w moim zestawie terminalowym
export CC=nvcc
export CFLAGS="-lcublas -lcudart"
export CPPFLAGS="-I/usr/local/cuda/include"
export LDFLAGS="-L/usr/local/cuda/lib64"
błąd, który otrzymuję to:
libtool: link: g++ -I/usr/include/freetype2 -Wall -W -Wshadow -Wold-style-cast
-Wformat -Wpointer-arith -Wwrite-strings -Wcast-align -Wcast-qual -g -O2
-o .libs/octave octave-main.o -L/usr/local/cuda/lib64
../libgui/.libs/liboctgui.so ../libinterp/.libs/liboctinterp.so
../liboctave/.libs/liboctave.so -lutil -lm -lpthread -Wl,-rpath
-Wl,/usr/local/lib/octave/3.7.5
../liboctave/.libs/liboctave.so: undefined reference to `cublas_dgemm_'