Обычно потому, что вы уже привели драйвер в нестабильное состояние ранее в своем приложении. При работе с API-интерфейсами graphi c вам необходимо уделять максимальное внимание проблемам с потоками (включая то, какие API-интерфейсы гарантированно являются потокобезопасными, а какие нет) и потенциальным повреждениям кучи (использовать после освобождения, переполнения буфера), реализации которых легко повреждены.
CL_INVALID_PROGRAM
и другие ошибки часто вводят в заблуждение и возникают в явно не связанный момент времени. В частности, они просто указывают на то, что какая-либо внутренняя проверка ошибок не удалась, но редко отображаются значимым образом. полное приложение и без какой-либо многопоточности), то ваша лучшая надежда - зарегистрировать ошибку с помощью NVidia.
Если это невозможно воспроизвести в минимальном примере, то почти наверняка вы вызвали неопределенное поведение где-то еще в своем приложении.