Функция-член объекта C ++ как функция CUDA __global__

У меня есть базовый класс:

  template  
  class A{
         public:
           // some data
           T data;
           //some functions like constructs etc.
            ...
           // one virtual function
           virtual void evaluate() = 0;

   }

и производный класс:

 template  
 class B:public A{
          public:
          // some functions like constructors etc.
          virtual void evaluate();
          __global__ void function2();   // **** error message

 } 

Также у меня есть

 template  void
 B::evaluate()
 { 
    dim3 grid(1);dim3 block(1);  
    void function2();
 }

а также

template   __global__ void B::function2() // **** error message 
{
   // computation here
}

по сути, у меня есть функция-член производного класса, которую я хотел бы выполнить параллельно на устройстве.

К сожалению, я получаю ошибку:

error : illegal combination of memory qualifiers on the lines :

1> __global__ void function2();   // **** error message

2> template   __global__ void B::function2() // **** error message

Я новичок в CUDA. Было бы очень любезно, если бы кто-то указал мне на мою ошибку. Я занимаюсь разработкой на Visual Studio 2010.

Ответы на вопрос(1)

Ваш ответ на вопрос