2016-05-07 14 views
1

最近CUDA C By Exampleの書籍を購入しましたが、セットアップをしようとしています。私は、ツールキットをダウンロードして、簡単なコードのこのビットを実行しようとしています:CUDA Cセットアップの問題

#include <stdio.h> 

__global__ void add(int a, int b, int * c) 
{ 
    *c = a + b; 
} 

int main(void) 
{ 
    printf("Hello World!"); 

    return 0; 
} 

私は取得していますエラーは次のとおりです。

expected '(' to follow '__global__'       line 2 
'add' not in formal parameters list       line 3 
syntax error: missing ';' before '{'       line 3 
expected a ';'            line 3 

ない私が間違ってやっていることを確認。 #include文がいくつかありますか?この本には1つが含まれていませんでした。私がオンラインで読んだ例は、もう1つもないようです。もう少し詳しくはVisual StudioでVisual C++プロジェクトを作成し、ファイルに拡張子「.c」と「.cpp」を付けました。

すべてのヘルプは、私は本当にこのようなもので作業を開始したい、高く評価されるだろう:D

+0

Visual Studioでは、CUDA C/C++プロジェクト(通常のc/C++プロジェクトではありません)に具体的に存在する必要があります。ファイル名は '.c'や' .cpp '。私は[Windowsインストールガイド](http://docs.nvidia.com/cuda/cuda-installation-guide-microsoft-windows/index.html#abstract)の指示に従って、CUDAツールキットは* VSをインストールした後に*インストールしてください。いくつかのサンプルプロジェクトの作成と実行を含む検証ステップを実行します。 –

+0

@Matthew:テイクにはたくさんのサンプルが含まれています。例えば。 'CUDA Samples \ v7.5 \ 0_Simple \ vectorAdd'はCUDAの" Hello World "であり、起動に役立つ適切に設定されたVSプロジェクトファイルが付属しています。 – Marco13

+0

@Robert Crovellaありがとうございました!これは、私が購入した本には言及されていませんでした。ファイルを検証する作業に取り掛かり、サンプルコードの一部を試してみます。 –

答えて

-1

あなたのファイルは、「.cu」の拡張子を持っている必要がありますし、CUDAプログラムのため#include <host_defines.h>以上好ましく#include <cuda_runtime.h>を含める必要があります。

+2

ランタイムAPI定義ヘッダーをnvccでコンパイルされた '.cu'ファイルに含める必要はありません。コンパイラは、サポートされているカーネルコードとホストランタイムAPIのすべてを自動的にインクルードします。あなたが何をしているのかが分かっていなければ、予期せぬ動作につながる可能性があります。 – talonmies

関連する問題