Я прошел через несколько ресурсов: книгу OpenCL Khronos, учебник GATech, учебник NYU, и я мог бы пройти через все. Но я до сих пор не понимаю полностью. В чем разница между ядром и программным объектом?В чем разница между ядром и программным объектом?
До сих пор лучшее объяснение это для меня, но это не для меня достаточно, чтобы полностью понять: объектная программа: программный объект инкапсулирует некоторый исходный код (с потенциально нескольких функций ядра) и его последней успешной сборки. KERNEL: Объект ядра инкапсулирует значения аргументов ядра , используемых при запуске ядра.
Возможно, программный объект является кодом? И ядро является скомпилированным исполняемым файлом? Это оно? Потому что я мог понять что-то подобное.
Заранее благодарен!
Это объяснение также не имеет для меня смысла: ядра - это функции OpenCL, которые работают на устройствах OpenCL; Программные объекты - это исходный код программы и исполняемые файлы, которые реализуют ядра. Мое отсоединение состоит в том, что функции и исходный код означают для меня то же самое. –
Я не уверен, почему это имеет значение для вас - кажется, вы одержимы терминологией. Практический аспект - это то, что важно, и это довольно ясно - ядро - это скомпилированная функция, которую вы можете выполнить; программа скомпилированного кода, который содержит потенциально несколько ядер. Таким образом, это объекты на разных уровнях абстракций, точно такие же, как программа и функция/подпрограмма на любом языке программирования. –
Получил! Это имеет смысл. Благодаря! –