OpenCL-программы / ядра собираются / компилируются во время выполнения с помощью функции clBuildProgram ().Моя программа динамически создает ядра для сборки и поэтому тратит значительное количество времени на их компиляцию.Конечно, учитывая, что существует много ядер, и они полностью независимы друг от друга, я хотел бы разделить эту работу на несколько ядер, как показано во фрагменте ниже:
Этот человек, кажется, имеет очень похожую проблему, но это было 6 лет назад, и решение на самом деле не является удовлетворительным.-6 (у меня 8 потоков), чего и следовало ожидать.Однако сборка OpenCL-ядер не дает.Кажется, что одновременно может быть только одно ядро.
Есть ли решение для этого?Я нахожусь на MacOS Atm, но я также был бы заинтересован в Linux / Windows.
Если нет, есть ли способ собрать OpenCL-ядра, которые не включают clBuildProgram (), но, например, gcc илианалогичное решение?