CUDA - это скомпилированный язык. Развертывание цикла - это оптимизация компилятора. Развертывание цикла выполнения подразумевает какой-то интерпретатор времени выполнения или генерацию динамического кода. Это явно не может произойти.
Было бы разумно, чтобы случай развернутого выполнял столько же или больше инструкций, чем простой цикл, потому что компилятор заменит цикл повторениями содержимого цикла. Если развернутый регистр выполняет инструкции less , это будет означать, что компилятор предварительно вычисляет часть или все содержимое цикла и заменяет код постоянным результатом.
Все зависит от того, что содержится в цикле.