Can nvvidconv convert the video frame size from one to another?

As I am new to gstreamer, would you please let me know if nvvidconv can convert the frame size from one (for example: 2592x1944) to another (for example: 640x480)?
If can, is this size conversion by hardware or software code running on CPU?

Yes, downscaling 2592x1944 to 640x480 is supported. For more sample pipelines, please check gstreamer user guide.
It is done on hardware engine called VIC.