Call CUDA failed on another computer

Computer A - GeForce 2060, gpu driver, cuda10.1, cudnn, win10
Computer B - GeForce 1060, gpu driver, win10
I compiled p.exe on A, which is a face recognition task. Now I want to run p.exe on B, so I packed p.exe with its necessary dll in the same directory, including the related cuda dll. The problem is the p.exe running on B cannot using
CUDA kernel computing, it run on cpu instead.
So, I am not sure whether the operation is correct, how can I solve this problem?
Lastly, thank you very much!

I will be very appreciated if you emailed me the solution, thanks.

GeForce 1060 and GeForce 2060 are GPUs from two different GPU architectures (Pascal and Turing). Generally speaking, there is no binary compatibility between GPU architectures. The solution used by CUDA is to provide for fat binaries that allow binary code for more than one GPU architecture to be mebedded in the executable, by specifying more than one build target to the compiler. See the documentation for the -gencode flag of nvcc.

yes, I also noticed the architecture, and when compiled caffe-gpu, I set(Caffe_known_gpu_archs “20 21(20) 30 35 50 60 61”) in Cuda.cmake.
Moreover, I compiled a cuda sample on A, and deployed it on B, it can call CUDA computing resources.
So, I cannot make out root cause.

I compiled this executable at computer which install Geforce 1060, then I deploy the executable at B, still can’t call CUDA computation capacity.