First of all I should inform you that I am a newbie in gpu computing. :rolleyes:
I managed to run some .cu samples. Now I want to try cublas, I took the following code from CUBLAS Library user guide.
[codebox]#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include “cublas.h”
#define IDX2F(i,j,ld) ((((j)-1)*(ld))+((i)-1))
void modify (float *m, int ldm, int n, int p, int q, float alpha,
float beta)
{
cublasSscal (n-p+1, alpha, &m[IDX2F(p,q,ldm)], ldm);
cublasSscal (ldm-p+1, beta, &m[IDX2F(p,q,ldm)], 1);
}
#define M 6
#define N 5
int main (void)
{
int i, j;
cublasStatus stat;
float* devPtrA;
float* a = 0;
a = (float *)malloc (M * N * sizeof (*a));
if (!a) {
printf (“host memory allocation failed”);
return EXIT_FAILURE;
}
for (j = 1; j <= N; j++) {
for (i = 1; i <= M; i++) {
a[IDX2F(i,j,M)] = (i-1) * M + j;
}
}
cublasInit();
stat = cublasAlloc (M*N, sizeof(a), (void*)&devPtrA);
if (stat != CUBLAS_STATUS_SUCCESS) {
printf (“device memory allocation failed”);
return EXIT_FAILURE;
}
cublasSetMatrix (M, N, sizeof(*a), a, M, devPtrA, M);
modify (devPtrA, M, N, 2, 3, 16.0f, 12.0f);
cublasGetMatrix (M, N, sizeof(*a), devPtrA, M, a, M);
cublasFree (devPtrA);
cublasShutdown();
for (j = 1; j <= N; j++) {
for (i = 1; i <= M; i++) {
printf (“%7.0f”, a[IDX2F(i,j,M)]);
}
printf (“\n”);
}
return EXIT_SUCCESS;
}[/codebox]
However, the following errors occur,
Error 7 error LNK2019: unresolved external symbol _cublasAlloc@12 referenced in function _main CUDA1.cu.obj
Error 4 error LNK2019: unresolved external symbol _cublasFree@4 referenced in function _main CUDA1.cu.obj
Error 5 error LNK2019: unresolved external symbol _cublasGetMatrix@28 referenced in function _main CUDA1.cu.obj
Error 8 error LNK2019: unresolved external symbol _cublasInit@0 referenced in function _main CUDA1.cu.obj
Error 6 error LNK2019: unresolved external symbol _cublasSetMatrix@28 referenced in function _main CUDA1.cu.obj
Error 3 error LNK2019: unresolved external symbol _cublasShutdown@0 referenced in function _main CUDA1.cu.obj
Error 2 error LNK2019: unresolved external symbol _cublasSscal@16 referenced in function “void __cdecl modify(float *,int,int,int,int,float,float)” (?
modify@@YAXPAMHHHHMM@Z) CUDA1.cu.obj
Error 9 fatal error LNK1120: 7 unresolved externals C:\Documents and Settings\Administrator\Desktop\gpu_deneme\cublass\Debug\cublass.exe
What should I do?
Thanks