SHARE
TWEET

Untitled

a guest Nov 3rd, 2011 50 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <strong> <cite>Потенциал для оптимизации очень хороший и чем интеллектуальнее эвристики я использую, тем лучшие результаты, но дело иногда доходит к абсурду, когда, скажем, вычисления для симуляции одного дня на фабрике занимают даже больше 24 часов при использовании однопоточной процессорной реализации. Мне же нужно симулировать 200-300 дней, делать много экспериментов с разными параметрами, так что параллельные вычисления – мой единственный выход, и сейчас моя задача – продумать грамотно дизайн этих вычислений</cite></strong>
  2. Ок, хорошо - в этом случае действительно на мой взгляд попытка использования GPU целесообразна. Быть может вам придётся использовать и не одну GPU.
  3.  
  4. <strong> <cite>Использовать кластер я пробовал. У меня был доступ к линукс-кластеру, где я проводил некоторые эксперименты. Но проблема в том, что вынуждено центральный нод кластера з программным обеспечениям для симуляции – это Windows-машина.</cite></strong>
  5. Я не понял смысл этих предложений. У вас есть проекты (исходный код+файлы сборки) только для Windows?
  6.  
  7. <strong> <cite>Для коммуникации и передачи данных пришлось использовать SSH и SCP протоколы, из-за этого возникал довольно большой overhead при параллельных вычислениях.</cite></strong>
  8. Ну всё зависит от объёма коммуникаций и от их структуры (да, я кэп). Для кластеров обычно используется MPI, для которого как я понял обычно работа с сетью достаточно оптимизированная.
  9. Быстрый хинт для SSH/SCP - попробовать выключить сжатие (и если возможно шифрование - на счёт этого не уверен).
  10.  
  11. <strong> <cite>Так что, доступ к памяти, я надеюсь, для меня будет скорее большим преимуществом, а не способом похоронить прирост производительности</cite></strong>
  12. Я говорил о другом. А именно о том, что без продуманного использования памяти (которой на GPU несколько видов), получить значения мощности близкие хотя бы к 70% от пика - невозможно. Более того, для некоторых задач это невозможно в принципе.
  13.  
  14. Я вам советую "откинуться на спинку кресла" и посмотреть видео лекций Борескова: http://www.intuit.ru/video/59/ - там всего четыре часа. Информация там немного устаревшая, так как вышло новое железо - но в общем даёт неплохое поверхностное представление о технологии, и подводных камнях.
  15.  
  16. <strong> <cite>На счет почти одинаковой роботы для параллельных нитей, не могли бы вы, пожалуйста, немного детальнее объяснить, что вы имеете в виду?</cite></strong>
  17. Я имел ввиду то, что очень желательно, чтобы нити выполняли один и тот же код, причём находились на одних и тех же ветках выполнения.
  18. То есть допустим есть задача суммирования двух векторов, псевдокод для GPU, для одной из возможных реализаций будет иметь вид:
  19. <code>
  20. void threadCode(T *vecA,T *vecB,T *vecC)
  21. {
  22.     int i=getThreadID();
  23.     vecC[i]=vecA[i]+vecB[i];
  24. }
  25. </code>
  26. Где threadCode - это код который будет выполняться в одной нити.
  27. Всё это конечно очень грубо, и ветвления возможны, и даже запуск совершенно разных кодов на одной GPU. Но опять же, желательно, чтобы все нити выполняли один и тот же код - иначе производительность сильно просядет.
  28.  
  29. <strong><cite>Выбор Tesla по сравнению с AMD из-за доступной и простой среды разработки. </cite></strong>
  30. Да, у NVidia среда разработки намного лучше. Она намного лучше подходит для обучения.
  31. Но тут несколько нюансов. Double GFlop's у AMD лучше, по крайней мере если сравнивать с GTX'ами.
  32. Между Tesla и GTX'ами существенной разницей для описанной вами ситуации является опять же скорость  Double GFlop's - у Tesla больше. Но, например Memory Bandwidth соответствующих моделей меньше у Tesla (даже при отключённом ECC), также я думаю что Single GFlop's у Tesla может быть меньше. Ещё не маловажный фактор это цена(особенно важно если использовать несколько карт).
  33.  
  34. <strong><cite>На счет double precision floating-point , то у меня все вычисления с числами з плавающей точкой, у меня нет почти целочисленных вычислений. Если я не правильно понял замечание, объясните мне, пожалуйста.</cite></strong>
  35. Какие именно у вас числа с плавающей точкой? 32бита или 64бита?
  36.  
  37. <strong><cite>И, простите за любопытство, почему вам же лучше будет из-за вливания денег в индустрию? :-) </cite></strong>
  38. Не, ну во-первых, от этого будет лучше любому IT'шнику. Например где бы было сейчас это GPGPU без вливаний средств геймеров?
  39. Во-вторых я специализируюсь на визуализации и вычислениях/обработке данных (научных) (и стараюсь работать только в этих направлениях) - поэтому для меня развитие GPU вдвойне полезно.
  40.  
  41.  
  42. P.S.:
  43. To lexa: мне кажется на этот сайт напрашивается небольшой FAQ - так как некоторый Q, действительно FA.
  44.  
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top