I have a question regarding the latency measurement reported as “17 ms”, which is described as being measured end‑to‑end from photon to display on NVIDIA IGX Orin. This value is shown on the main NVIDIA website (https://www.nvidia.com/en-us/technologies/holoscan-sensor-bridge/), and I have attached a screenshot for reference.
However, in the HSB v2.5.0 documentation, specifically in the “Measuring Sensor Data Latency” section (https://docs.nvidia.com/holoscan/sensor-bridge/latest/latency.html#measuring-sensor-data-latency), the reported end‑to‑end latency is 19.4 ms. According to the document, this value is derived from the frame_start timestamp to the complete timestamp, broken down as 15.8 ms + 1.2 ms + 2.4 ms. I have also attached a screenshot of this section.
1.Could you clarify where this discrepancy between the 17 ms and 19.4 ms latency measurements comes from? My understanding is that both measurements were performed using an IGX Orin device as the host system, along with GPU RTX A6000. Theoretically, if the settings are the same, these two latencies should be identical.
2. Could the difference in camera model or configuration be the reason for the observed latency difference, or is there another factor contributing to this discrepancy? The documentation states that the measurement is based on an IMX274 camera operating in 4K RAW10 mode, whereas the main website simply mentions a “4K60” camera without specifying the sensor or data format.
3. Could you clarify what ‘photon’ and ‘display’ means? On the main website, it says “Measured end-to-end from photon to display on NVIDIA IGX Orin”. Does ‘photon’ means the exact time when the light comes into the camera sensor? Or does ‘photon’ mean the exact time when the first data arrives at the FPGA?
Also, does ‘display’ mean actual glass-to-glass latency? Is the ‘display’ time when the HoloViz operator finishes? Or does it mean the “operator_s/ns” timestamp, which is the time when the operators of Holoscan pipeline are available to see the frames?
All these questions come from the difference of the latency report (17ms vs. 19.4ms) between the main website and the document.
Thanks for pointing this out. As you know, glass-to-glass latency (“photon to photon” is used interchangably) is challenging to measure and replicate across setups (including our own!). These two graphics were made at different times in the lifetime of Holoscan Sensor Bridge, and the host setup, software stack versions, and exposure settings could have been different.
Directionally, the goal is to show that Holoscan Sensor Bridge introduces no significant FIFOing, frame-buffering, or compression that would drive latencies into the multiples-of-a-frame-duration.
As you’re probably aware, the greatest source of latency in an optimized g2g system is the actual exposure and read-out of the image sensor, along with any output framebuffering needed to synchronize the input and output to avoid frame-tearing. This is highly dependent on the camera, display, and exposure/timing settings you are employing.
Are there specific latency targets you’re trying to achieve with HSB that you’re not seeing? Would love to help you achieve your performance goals!
Thank you so much for your fast reply. I really appreciate it. I have few more questions to add on.
Assuming that the 17 ms and 19.4 ms latency values were measured under different environments and configurations, I would like to focus on the details of the 19.4 ms measurement.
According to the latency diagram shown in the following document
( Holoscan sensor bridge data latency - NVIDIA Docs ),
the reported 19.4 ms corresponds to the total latency measured in that specific example pipeline.
1. In the diagram, the frame_start timestamp (marked as 0 ms) is defined as the point at which the first data arrives at the FPGA via the MIPI CSI‑2 stream. This suggests that the frame_start timing depends on the camera sensor’s exposure and readout characteristics.
Could you please confirm whether this interpretation of frame_start is correct?
2. The document mentions that an “IMX274 camera in 4K RAW10 mode” was used for the measurement. Could you clarify the exact camera module or reference design that was used?
Additionally, if available, could you provide an estimate of the latency between the moment photons reach the sensor and the moment the frame_start timestamp is recorded at the FPGA?
3. In the diagram, the complete timestamp is described as being recorded when the HoloViz operator completes. Is this timestamp defined purely at the Holoscan SDK/operator level, or does it also reflect display‑dependent behavior such as frame buffering, synchronization, or display refresh timing?
In other words, does the operator completion time correspond to the moment the frame is actually presented on the display?
4. If the complete timestamp is influenced by display behavior, could you share which display device and configuration were used during this latency measurement?
Yes your understanding is correct. Whenever the first line of the frame that is being captured is done, the sensor starts reading it out and that moment is Frame_start received at the FPGA. This also means frame_end - frame_start will be the readout time for the camera mode.