WM>Здравствуйте, shadows_s, Вы писали:
WM>То есть, на самом деле, нет никакого смысла в полноценном С или в С++. А вместо этого нужно уметь вычислять только формулы?
Если не вдаватся в подробности, то:
Решается задача вычисления двойных интегралов на заданой областе интегрирования.
На одном из этапов, нужно вычыслить функцию при всемозможных входных параметрах.
в опщем, нужно получить что-нибуть вида:
__global__ void integral_kernel ( float * result_array )
{
// ...код
value = ФУНКЦИЯ_ВВЕДЕНАЯ_ПОЛЬЗОВАТЕЛЕМ( x, y );
}
Вся проблема, в том как ефективно реализовать эту функцию.
WM>Разобраться с генерацией PTX-файлов. Для математических формул это сделать не сложно. Соответственно, загружать после этого на GPU код в виде PTX.
Самый интересны вариант, буду сейчас искать информацию и попробую, что-то сделать.
WM>Реализовать в ядре на GPU простой интерпретатор байт-кода. То есть превращать текстовую запись формулы в последовательность команд для своего стекового вычислителя, например, и исполнять эту программу на GPU. Недостаток очевиден — ощутимые потери на интерпретацию. Нужно попробовать сделать прототип и понять, устраивает ли полученная производительность.[/list]
Да, я сначала и пошел этим путём, но хочется большей ефективности.
А использование интерпретатора, заметно снижает производительность, что воопще ставит под сомнение целесообразность использовать CUDA...