Reply to comment

Крышу и правдо рвало с петель да несло в овраг..........
И так озвучиваю результаты опытов

Использование cudaSetDeviceFlags(cudaDeviceBlockingSync); не дало желаемого результата время запуска 9 креналов 0.086315 мс. Однако время выполенения всей программы с многочисленными вызованим керналов увеличелось с 4561 мс до 4717 мс. Хотя судя по референс мануал - это то что нужно.....

Использование принудительной синхронизациии после керналов cudaThreadSynchronize() дало положительный результат 8.079 мс. При том же вермени исполнения всей программы осталось равным 4580 мс

Совместное использование чуть повлияло на измерение керналов 8.183 мс и время выполнения программы 4727 мс

Итого замера времени исполненния я остнавился на таком варианте

  1. execTime -= cutGetTimerValue( timer);
  2. //запускаю 9 керналов подряд
  3. cudaThreadSynchronize();
  4. execTime += cutGetTimerValue( timer);
  5. cutilSafeCall( cudaMemcpy( updateds, d_updateds, 1 * sizeof(int),
  6.                                         cudaMemcpyDeviceToHost) );

ПС Для меня остался открытым вопрос что делает cudaSetDeviceFlags(cudaDeviceBlockingSync)????

Reply

The content of this field is kept private and will not be shown publicly.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <i> <table> <td> <tr> <th>
  • Lines and paragraphs break automatically.
  • You can enable syntax highlighting of source code with the following tags: <code>, <blockcode>. The supported tag styles are: <foo>, [foo].
  • Images can be added to this post.

More information about formatting options

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
Image CAPTCHA
Enter the characters shown in the image.

Copyright © 2008-2009 Alex Tutubalin