Video Imaging Compositor (VIC) performance differences between Xavier and Orin platforms

Hi NV,

We run the same G-streamer pipeline.
When running on the xavier platform, the following error is reported.

 cnxmeyh-igvak-12-dcu1 kernel: [73567.809844] 
May 25 05:36:59 cnxmeyh-igvak-12-dcu1 kernel: [73567.821282] iommu_context_dev 13e40000.host1x:niso1_ctx0: pin_array_ids: could not get buf err=-22
May 25 05:36:59 cnxmeyh-igvak-12-dcu1 kernel: [73567.830858] falcon 15340000.vic: nvhost_ioctl_channel_submit: failed with err -22
May 25 05:37:00 cnxmeyh-igvak-12-dcu1 kernel: [73568.009852] falcon 15340000.vic: nvhost_job_alloc: job is very large (16376), expect performance loss
May 25 05:37:00 cnxmeyh-igvak-12-dcu1 kernel: [73568.009852] 
May 25 05:37:00 cnxmeyh-igvak-12-dcu1 kernel: [73568.021383] iommu_context_dev 13e40000.host1x:niso1_ctx0: pin_array_ids: could not get buf err=-22
May 25 05:37:00 cnxmeyh-igvak-12-dcu1 kernel: [73568.030972] falcon 15340000.vic: nvhost_ioctl_channel_submit: failed with err -22
May 25 05:37:00 cnxmeyh-igvak-12-dcu1 kernel: [73568.209830] falcon 15340000.vic: nvhost_job_alloc: job is very large (16952), expect performance loss
May 25 05:37:00 cnxmeyh-igvak-12-dcu1 kernel: [73568.209830] 
May 25 05:37:00 cnxmeyh-igvak-12-dcu1 kernel: [73568.221343] iommu_context_dev 13e40000.host1x:niso1_ctx0: pin_array_ids: could not get buf err=-22
May 25 05:37:00 cnxmeyh-igvak-12-dcu1 kernel: [73568.230934] falcon 15340000.vic: nvhost_ioctl_channel_submit: failed with err -22
May 25 05:37:00 cnxmeyh-igvak-12-dcu1 kernel: [73568.409812] falcon 15340000.vic: nvhost_job_alloc: job is very large (17528), expect performance loss
May 25 05:37:00 cnxmeyh-igvak-12-dcu1 kernel: [73568.409812] 
May 25 05:37:00 cnxmeyh-igvak-12-dcu1 kernel: [73568.421133] iommu_context_dev 13e40000.host1x:niso1_ctx0: pin_array_ids: could not get buf err=-22
May 25 05:37:00 cnxmeyh-igvak-12-dcu1 kernel: [73568.430943] falcon 15340000.vic: nvhost_ioctl_channel_submit: failed with err -22
May 25 05:37:00 cnxmeyh-igvak-12-dcu1 kernel: [73568.609793] falcon 15340000.vic: nvhost_job_alloc: job is very large (18104), expect performance loss
May 25 05:37:00 cnxmeyh-igvak-12-dcu1 kernel: [73568.609793] 
May 25 05:37:00 cnxmeyh-igvak-12-dcu1 kernel: [73568.621117] iommu_context_dev 13e40000.host1x:niso1_ctx0: pin_array_ids: could not get buf err=-22
May 25 05:37:00 cnxmeyh-igvak-12-dcu1 kernel: [73568.630567] falcon 15340000.vic: nvhost_ioctl_channel_submit: failed with err -22
May 25 05:37:00 cnxmeyh-igvak-12-dcu1 kernel: [73568.809801] falcon 15340000.vic: nvhost_job_alloc: job is very large (18680), expect performance loss
May 25 05:37:00 cnxmeyh-igvak-12-dcu1 kernel: [73568.809801] 
May 25 05:37:00 cnxmeyh-igvak-12-dcu1 kernel: [73568.821272] iommu_context_dev 13e40000.host1x:niso1_ctx0: pin_array_ids: could not get buf err=-22
May 25 05:37:00 cnxmeyh-igvak-12-dcu1 kernel: [73568.830862] falcon 15340000.vic: nvhost_ioctl_channel_submit: failed with err -22
May 25 05:37:01 cnxmeyh-igvak-12-dcu1 kernel: [73569.009820] falcon 15340000.vic: nvhost_job_alloc: job is very large (19256), expect performance loss
May 25 05:37:01 cnxmeyh-igvak-12-dcu1 kernel: [73569.009820] 
May 25 05:37:01 cnxmeyh-igvak-12-dcu1 kernel: [73569.021386] iommu_context_dev 13e40000.host1x:niso1_ctx0: pin_array_ids: could not get buf err=-22
May 25 05:37:01 cnxmeyh-igvak-12-dcu1 kernel: [73569.031084] falcon 15340000.vic: nvhost_ioctl_channel_submit: failed with err -22
May 25 05:37:01 cnxmeyh-igvak-12-dcu1 kernel: [73569.210119] falcon 15340000.vic: nvhost_job_alloc: job is very large (19832), expect performance loss
May 25 05:37:01 cnxmeyh-igvak-12-dcu1 kernel: [73569.210119] 
May 25 05:37:01 cnxmeyh-igvak-12-dcu1 kernel: [73569.222289] iommu_context_dev 13e40000.host1x:niso1_ctx0: pin_array_ids: could not get buf err=-22
May 25 05:37:01 cnxmeyh-igvak-12-dcu1 kernel: [73569.232754] falcon 15340000.vic: nvhost_ioctl_channel_submit: failed with err -22
May 25 05:37:01 cnxmeyh-igvak-12-dcu1 kernel: [73569.409894] falcon 15340000.vic: nvhost_job_alloc: job is very large (20408), expect performance loss
May 25 05:37:01 cnxmeyh-igvak-12-dcu1 kernel: [73569.409894] 
May 25 05:37:01 cnxmeyh-igvak-12-dcu1 kernel: [73569.421391] iommu_context_dev 13e40000.host1x:niso1_ctx0: pin_array_ids: could not get buf err=-22
May 25 05:37:01 cnxmeyh-igvak-12-dcu1 kernel: [73569.430931] falcon 15340000.vic: nvhost_ioctl_channel_submit: failed with err -22
May 25 05:37:01 cnxmeyh-igvak-12-dcu1 kernel: [73569.609779] falcon 15340000.vic: nvhost_job_alloc: job is very large (20984), expect performance loss
May 25 05:37:01 cnxmeyh-igvak-12-dcu1 kernel: [73569.609779] 
May 25 05:37:01 cnxmeyh-igvak-12-dcu1 kernel: [73569.621313] iommu_context_dev 13e40000.host1x:niso1_ctx0: pin_array_ids: could not get buf err=-22
May 25 05:37:01 cnxmeyh-igvak-12-dcu1 kernel: [73569.630832] falcon 15340000.vic: nvhost_ioctl_channel_submit: failed with err -22
May 25 05:37:01 cnxmeyh-igvak-12-dcu1 kernel: [73569.809835] falcon 15340000.vic: nvhost_job_alloc: job is very large (21560), expect performance loss
.
.
.
May 25 05:53:26 cnxmeyh-igvak-12-dcu1 kernel: [74554.045326] INFO: task nvv4l2camerasrc:12401 blocked for more than 1208 seconds.
May 25 05:53:26 cnxmeyh-igvak-12-dcu1 kernel: [74554.053679]       Tainted: G        W  OE     5.10.104-tegra #1
May 25 05:53:26 cnxmeyh-igvak-12-dcu1 kernel: [74554.059913] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
May 25 05:53:26 cnxmeyh-igvak-12-dcu1 kernel: [74554.068134] task:nvv4l2camerasrc state:D stack:    0 pid:12401 ppid: 11582 flags:0x00000000
May 25 05:53:26 cnxmeyh-igvak-12-dcu1 kernel: [74554.068141] Call trace:
May 25 05:53:26 cnxmeyh-igvak-12-dcu1 kernel: [74554.068150]  __switch_to+0xc8/0x120
May 25 05:53:26 cnxmeyh-igvak-12-dcu1 kernel: [74554.068156]  __schedule+0x3d0/0x910
May 25 05:53:26 cnxmeyh-igvak-12-dcu1 kernel: [74554.068157]  schedule+0x78/0x110
May 25 05:53:26 cnxmeyh-igvak-12-dcu1 kernel: [74554.068160]  schedule_timeout+0x2dc/0x340
May 25 05:53:26 cnxmeyh-igvak-12-dcu1 kernel: [74554.068161]  __down+0x7c/0xe0
May 25 05:53:26 cnxmeyh-igvak-12-dcu1 kernel: [74554.068165]  down+0x58/0x70
May 25 05:53:26 cnxmeyh-igvak-12-dcu1 kernel: [74554.068169]  nvhost_cdma_wait_locked+0xa4/0x1f0
May 25 05:53:26 cnxmeyh-igvak-12-dcu1 kernel: [74554.068171]  nvhost_cdma_push_gather+0xfc/0x1c0
May 25 05:53:26 cnxmeyh-igvak-12-dcu1 kernel: [74554.068173]  host1x_channel_submit+0x820/0xda0
May 25 05:53:26 cnxmeyh-igvak-12-dcu1 kernel: [74554.068175]  nvhost_channel_submit+0x2c/0x40
May 25 05:53:26 cnxmeyh-igvak-12-dcu1 kernel: [74554.068178]  nvhost_ioctl_channel_submit+0x45c/0xbd0
May 25 05:53:26 cnxmeyh-igvak-12-dcu1 kernel: [74554.068180]  nvhost_channelctl+0x25c/0xe70
May 25 05:53:26 cnxmeyh-igvak-12-dcu1 kernel: [74554.068184]  __arm64_sys_ioctl+0xac/0xf0
May 25 05:53:26 cnxmeyh-igvak-12-dcu1 kernel: [74554.068187]  el0_svc_common.constprop.0+0x80/0x1d0
May 25 05:53:26 cnxmeyh-igvak-12-dcu1 kernel: [74554.068189]  do_el0_svc+0x38/0xb0
May 25 05:53:26 cnxmeyh-igvak-12-dcu1 kernel: [74554.068192]  el0_svc+0x1c/0x30
May 25 05:53:26 cnxmeyh-igvak-12-dcu1 kernel: [74554.068193]  el0_sync_handler+0xa8/0xb0
May 25 05:53:26 cnxmeyh-igvak-12-dcu1 kernel: [74554.068194]  el0_sync+0x16c/0x180 

When running on the orin platform, there is no error.

Part of the pipeline:

nvv4l2camerasrc device=/dev/video${INPUT_NUMBER} do-timestamp=TRUE ! \
nvvidconv ! video/x-raw(memory:NVMM), width=960, height=540, format=(string)I420 ! tee name=t_raw_fps_${INPUT_NUMBER} ! nvvidconv ! videorate ! video/x-raw(memory:NVMM),framerate=5/1 ! nvvidconv ! tee name=t_raw_camera_nv_${INPUT_NUMBER} ! nvvidconv ! video/x-raw(memory:NVMM), width=960, height=540, format=(string)BGRx ! \
nvvidconv ! fakesink async=false

Please help answer the following questions:

  1. On which hardware module does the plug-in ”videorate“ run?
  2. Does the ”nvvidconv“ run on VIC?
    3.Video Imaging Compositor (VIC) performance differences between Xavier and Orin platforms?

Thanks!

Hi,

This is a software plugin to change frame rate. We are uncertain about the detail. But it does not use any hardware engine.

Yes.

Yes. Maximum rate of the engine is different. Please check

Jetson Orin Nano Series, Jetson Orin NX Series and Jetson AGX Orin Series — NVIDIA Jetson Linux Developer Guide 1 documentation
Jetson Xavier NX Series and Jetson AGX Xavier Series — NVIDIA Jetson Linux Developer Guide 1 documentation

VIC in AGX Xavier can run to1036.8Mhz which is higher than AGX Orin.

Hi DaneLLL,

So can I simply assume that the VIC performance of the Orin platform is lower than that of Xavier?

Hi,

Yes, this is correct.

Hi DaneLLL,

Thanks!

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.