Форум программистов, компьютерный форум, киберфорум
Наши страницы

CUDA, не получается вывести значение - CUDA

Войти
Регистрация
Восстановить пароль
Другие темы раздела
CUDA Маленький супер-компьютер для вычислений с помощью видеокарт NVIDIA с применением технологии CUDA. http://www.cyberforum.ru/cuda/thread225245.html
В моей голове созрела идея собрать машину для вычислений с помощью видеокарт NVIDIA с применением технологии CUDA! Суть в том что, я в большей части программист-теортик и с железом не в ладах....
CUDA Маленький супер-компьютер с применением технологии CUDA! Всем привет! Не знал куда отнести эту тему, потому что она связана со всем железом! В моей голове созрела идея собрать машину для вычислений с помощью видеокарт NVIDIA с применением технологии... http://www.cyberforum.ru/cuda/thread225200.html
CUDA CUDA
Добрый день! Не знал куда отнести эту тему, поэтому решил создать данную тему на ветке "С#.NET", так как CUDA будет использоваться совместно с C#. Для работы понадобилась CUDA, а полезного...
CUDA C# + CUDA
Слышал, о полезной штуковине – CUDA. Есть смысл изучить данный сабж, или это на много усложнит программу? Хочется использовать С# , а не С. Вот например есть программа: Вот например есть...

Показать сообщение отдельно
NoWar
0 / 0 / 0
Регистрация: 11.07.2010
Сообщений: 7

CUDA, не получается вывести значение - CUDA

23.01.2011, 15:30. Просмотров 1166. Ответов 2
Метки (Все метки)

Прошу прощения, если создал тему не в том разделе, но прошу помочь мне,нужно написать программу для вывода значений функции используя прараллельные вычисления,дело в том,что приготовленный массив заполняется нулями, я не могу понять почему,вот код,помогите кто может плз;
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include <stdio.h>
#include <conio.h>
#include <iostream>
#include <math.h>
using namespace std;
__global__  void tablekernel(float * devPtr,float step)
{
 int index = blockIdx.x * blockDim.x + threadIdx.x;
 float x = step * index;
 devPtr [index] =  __sinf(x);
}
void buildTable(float * res, int n, float step)
{
  float * devPtr;
  cudaMalloc( &devPtr, n * sizeof(float));
  tablekernel<<<dim3(n/256), dim3(256)>>>(devPtr,step);
  cudaMemcpy(res,devPtr,n * sizeof(float),cudaMemcpyDeviceToHost);
  cudaFree(devPtr);
}
int main(int argc, char * argv [])
{
 cudaEvent_t start,stop;
 cudaEventCreate(&start);
 cudaEventCreate(&stop);
 float gputime =0.0f;
 float Table[10];
 cudaEventRecord(start,0);
 buildTable(Table,11,4);
  cudaEventRecord(stop,0);
  cudaEventSynchronize(stop);
 for(int i = 0;i < 10;i++)
 {
     cout<<Table[i]<<endl;
 }
 cudaEventElapsedTime(&gputime,start,stop);
 cout << "Elapsed time : "<<gputime<<"  ms";
 getch();
 return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru