There is nothing special, just that the whole convolution is going directly going to cpp and then launches a single cudnn kernel.
Your version with im2col most certainly launch few kernels which result in an increased launch time.