Question about GPU Auto-scheduling Implementation

Hi,

I am new to TVM, and I have a question about the implementation of auto-scheduling on GPU.

What is the difference between enabling cuDNN and disabling cuDNN? From my understanding, cuDNN is a library that is targeted for Nvidia GPU. It probably has some scheduling policy or optimization for a convolution layer. If TVM auto-scheduler doesn’t use cuDNN, does it means that TVM has its own library for GPU computation scheduling? So that TVM auto-scheduler will opttimize each layer and map the computation to the GPU?

What would happen if I use cuDNN on a Nvidia GPU? Does it rely on cuDNN for scheduling or TVM auto-scheduler? What role does TVM auto-scheduler play here?

Thank you, Yu

@YuFengUofR

do you have idea now?