Прежде чем вы даже попадете в код CUDA, у вас есть следующее:
#define N 15
//...
int main( void ) {
float a[N], c[N];
int i,m=3,n=18;
//...
for(i=m;i<=m+n-1;i++)
a[i] = 0;
Итак, вы записываете в [20] и b [20], что кажется вероятным источником проблем ...
Вы должны убедиться, что вы строите с отладочными символами, а затем перейти к коду, чтобы отследить источник проблемы, подобной этой.