У меня фиксированное ядро, и я хочу иметь возможность включать определенные пользователем функции устройства для изменения вывода. Пользовательские функции всегда будут иметь одинаковые входные аргументы и всегда будут выводить скалярное значение. Если бы я знал пользовательские функции во время компиляции, я мог бы просто передавать их в виде указателей ядру (и иметь функцию устройства по умолчанию, которая работает на входе, если не задана функция). У меня есть доступ к коду PTX пользовательской функции во время выполнения, и мне интересно, могу ли я использовать что-то вроде jitify от NVIDIA для компиляции PTX во время выполнения, получить указатель на функцию устройства, а затем передать эту функцию устройства предварительно скомпилированной функции ядра,
Я видел несколько сообщений, близких к ответу на этот вопрос ( Как генерировать, компилировать и запускать ядра CUDA во время выполнения ), но большинство предлагают компилировать все ядро вместе с функцией устройства вво время выполнения. Учитывая, что функция устройства имеет фиксированные входы и выходы, я не вижу причин, по которым функция ядра не может быть скомпилирована заранее. Часть, которую мне не хватает, это как скомпилировать только функцию устройства во время выполнения и получить указатель на нее, чтобы затем передать ее функции ядра.