Все найденные ошибки, пожелания, замечания и т.п. пишите сюда
Комментарии, пожелания к книге по CUDA
Сообщений 1 страница 5 из 5
Поделиться22010-06-16 18:32:34
Здравствуйте, Алексей Викторович!
Я приобрел вашу книгу и мне бы хотелось узнать что за функция Swater, Swater_и Swater_r (Приложение 2. Моделирование распространения волн цунами на GPU), и как мне её достать. Если есть возможность, по всему приложению мне бы хотелось достать исходники. Хотя самое главное swater.
Спасибо заранее...
Поделиться32010-06-17 12:18:04
Или хотя бы скажите что означает каждый из параметров её задания, swater(uw , qw , vw , &dt[..], u1 , q1 , v1 , &n1 , h1 , &grnd, &t );
uw , qw , vw - входные данные, римановы инварианты?
&dt[..] - это интересует ?
u1 , q1 , v1 - выходные данные?
&n1 , h1 , &grnd, &t - это интересует?
Отредактировано madancer (2010-06-17 12:21:29)
Поделиться42010-06-19 18:33:35
Спасибо вам Алексей Викторович и Александру Харламову за выпущенную книгу по CUDA. Думаю данная книга будет очень полезна для тех, кто начинает изучать CUDA и не имеет доступа(по каким либо причинам) к иностранной литературе по данной теме.
1. Обнаружил опечатку в описании закона Амдала.
В книге написано, что S = 1/( (1+P) + P/N) вместо 1/( (1-P) + P/N). О чем дальше в пределе и сказано(при N->беск).
2. Я далеко не руссковед, но опять же на этой странице(8ая):
3 абзац: "Как легко видно"
4 абзац: "Именно поэтому крайне важно использование хорошо распараллеливаемых" м.б. "использовать хорошо распараллеливаемые алгоритмы и методы".
Стр. 12: "В настоящее, графический ускоритель"(8 абзац)
Cтр. 18: Код для нитей, функция sumKernel был изначально рассчитан на n кратные 512 (то есть используем максимальное кол-во нитей на блок, какой смысл использовать все нити блока, если достаточно n mod maxThreadsPerBlock на блок, это увеличивает производительность?)
Сохраняя идею 512 нитей на блок, предлагаю такую мелкую модификацию для n не кратных 512
(возможно и не прав, т.к. не было возможности посещать курс лекций 2010 г., только начал изучать ваши лекции, проводимые в корпусе МГУ, по аудиозаписям)
dim3 threads = dim3(512, 1); //
dim3 blocks = dim3( (n-1) / threads.x + 1, 1);
Отредактировано 3DSlash (2010-08-20 15:38:09)
Поделиться52010-06-21 16:26:19
1. Обнаружил ошибку на стр 182. в системе (1.2) где в матрице B = {v 0 0; 0 u g; 0 H u;}, а должно быть B = {v 0 0; 0 v g; 0 H v;}.
2. Долго думал и решал, нашел скрытую ошибку, возможно просто опечатались: на стр 181 в системе уравнении (1.1), в первом уравнении системы
где Ht +(uH)x+(vH)y=0 должно быть hetat+(uheta)x+(vheta)y=0. Так как в описании H(x,y,t)=heta(x,y,t)+D(x,y,t), а heta - это возмущение водной поверхности.
Отредактировано madancer (2010-06-22 14:42:56)