ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
25 апреля
706075 Топик полностью
Mahagam (16.10.2016 13:28, просмотров: 75) ответил Ксения на Это не важно, а важным является вопрос о том, кто оценивает результаты предыдущего шага и решает, что делать на следующем шаге. Если это решает видеокарта, то и сам программный алгоритм должен быть в нее вложен, и тогда задача выливается в
то что вы называете "программированием видеокарты" - по большей части сводится к написанию слэдующих вещей: а) код для проца, который оформляет массивы с данными, указывает где исходники шейдеров, заливает в карту всё что нужно для вычислений и запускает их. ь) собственно - compute shader. выглядит как си. просто си. причём довольно сильно порезанный си. например нет указателей. нет статик переменных и всё такое. но это объясняется очень просто - потоков вычислений может быть не одна сотня. и который из них будет определять значение статик-переменной? второй вариант - читать что есть OpenCL. собственно там тоже будет Си. и будет жирный мануал описывающий подобные ограничения. только в варианте OpenCL API должен избавить вас от низкоуровнего программирования (шейдеры оно само скомпилит, зальёт само, все uniform и attribute само установит и всё такое). что касается скорости памяти, то у моей древней видеокарты, которая успела уже сгореть, пропускная была ~150GB/s. а у довольно новых процов - всего ~35GB/s. а новые видюшки могут и ~500GB/s выжать.