Is it not possible to offload threadprivate globals?
Compiling the following:
module mymodule
integer var_save
!dir$ attributes offload:mic :: var_save
!$omp threadprivate(var_save)
end module mymodule
Yields this error:
error #8690: *MIC* A threadprivate variable cannot appear in a DECLARE TARGET directive. [VAR_SAVE]