Open Menu
Background removal performance analysis — Citrix ctxbeffect & Fluendo flubkgndremoval

Background removal performance analysis — Citrix ctxbeffect & Fluendo flubkgndremoval

User Name

Written by

Aleix Figueres

September 8, 2026

Table of Contents


1. Overview

This report compares two background-removal solutions, Citrix ctxbeffect and Fluendo FAIP v1.2.6 flubkgndremoval, focusing on processing performance, latency, resource consumption, and output quality under the same benchmark framework.

FAIP v1.2.6 integrates Raven AI Engine v0.4.7 and provides GPU-native processing capabilities when configured with CUDA inference and Vulkan rendering. In the evaluated GPU-native path, frames are provided through CUDAMemory, processed with Vulkan, inferred with CUDA, and exported as VulkanImage. By keeping compatible stages GPU-addressable, this architecture is designed to reduce unnecessary host/device transitions and take advantage of GPU parallelism.

The objective of this benchmark is to quantify the practical performance characteristics of both solutions and evaluate the processing characteristics of FAIP’s GPU-native architecture under real-time and high-load conditions.

The benchmark evaluates how these architectural differences translate into throughput, processing latency, resource usage, scalability, and visual quality. From a deployment perspective, higher processing capacity and lower latency provide additional headroom for more demanding real-time video-processing workloads and can be relevant for thin-client and high-density video-processing scenarios.


1.1 Executive Summary

This campaign focuses on three representative execution paths covering the main CPU and GPU deployment options evaluated in the benchmark.

Representative execution paths:

Citrix
└── CPU/raw -> CPU processing -> CPU effect -> CPU postprocessing -> CPU/raw

FAIP CPU
└── CPU/raw -> CPU processing -> CPU inference -> CPU postprocessing -> CPU/raw

FAIP GPU-native
└── CUDAMemory -> Vulkan processing -> CUDA inference -> Vulkan postprocessing -> VulkanImage

These three paths provide the main product-level comparison used throughout the Executive Summary: Citrix running on CPU, FAIP running on CPU, and FAIP using its GPU-native CUDA+Vulkan path. In FAIP, processing and postprocessing/render stages can use CUDA or Vulkan depending on the selected GPU-native execution path. The remaining FAIP execution permutations are analyzed in Section 3.

Scenario A and Scenario B answer two complementary questions:

  • Scenario A: input is paced to the target 30 or 60 FPS rate, representing real-time operation and reported as Observed FPS and Delivery Ratio.
  • Scenario B: pacing is removed to measure maximum processing capacity, reported as Throughput FPS and Headroom.

Scenario A — Real-Time Performance

Scenario A evaluates each execution path with input paced to the target 30 or 60 FPS rate, showing observed behavior under real-time operating conditions.

Real-Time Output
WorkloadCitrixFAIP CPUFAIP GPU-native
720p (30/60 FPS)30.00 / 24.0030.00 / 60.0027.50 / 52.00
1080p (30/60 FPS)17.00 / 22.5030.00 / 60.0028.00 / 34.50
1440p (30/60 FPS)28.00 / 7.5030.00 / 28.0016.00 / 28.00
4K (30/60 FPS)5.50 / 1.5017.50 / 18.0015.00 / 29.00

Under paced real-time conditions, FAIP provides stronger output at several demanding workloads. However, the GPU-native path does not reach the target input rate in all tested configurations, with the observed delivery ratio decreasing for some higher-resolution and higher-framerate workloads. This indicates that not all expected frames were observed at the final output during the measurement interval, but does not by itself demonstrate that frames were dropped by the FAIP plugin.

Scenario B — Maximum Processing Performance

Scenario B removes real-time pacing to measure the maximum processing capacity of each execution path and the corresponding plugin latency and resource utilization under load.

Processing Throughput
WorkloadCitrixFAIP CPUFAIP GPU-native
720p (30/60 FPS)30.00 / 60.5030.50 / 60.00159.50 / 141.00
1080p (30/60 FPS)30.00 / 59.5030.00 / 39.50135.50 / 112.50
1440p (30/60 FPS)30.00 / 40.5028.00 / 27.5095.00 / 112.00
4K (30/60 FPS)16.00 / 19.0019.50 / 16.0085.00 / 161.50

In unpaced processing, the GPU-native FAIP path provides the largest headroom across the evaluated workloads, showing the practical benefit of the CUDA+Vulkan execution path when real-time pacing is removed.

Direct Plugin Latency
WorkloadCitrixFAIP CPUFAIP GPU-native
720p (30/60 FPS)7.62 / 11.5720.51 / 10.924.90 / 5.38
1080p (30/60 FPS)10.73 / 10.3011.15 / 18.595.43 / 6.40
1440p (30/60 FPS)13.79 / 13.5621.98 / 23.206.87 / 5.90
4K (30/60 FPS)33.84 / 29.0223.92 / 30.217.01 / 3.57
Resource Usage
WorkloadCitrix CPUCitrix RAMFAIP CPU CPUFAIP CPU RAMFAIP GPU-native CPUFAIP GPU-native RAM
720p (30/60 FPS)30.9% / 103.0%81.4 MB / 80.5 MB1129.8% / 1394.4%541.3 MB / 543.9 MB898.5% / 808.5%986.8 MB / 953.6 MB
1080p (30/60 FPS)49.1% / 93.3%105.6 MB / 106.3 MB1194.2% / 1271.6%554.9 MB / 556.0 MB793.0% / 725.4%939.9 MB / 926.7 MB
1440p (30/60 FPS)73.0% / 98.9%140.6 MB / 140.1 MB1204.2% / 1208.6%578.5 MB / 578.4 MB712.7% / 688.6%951.2 MB / 934.1 MB
4K (30/60 FPS)102.2% / 117.2%213.5 MB / 224.8 MB973.2% / 803.3%609.0 MB / 614.3 MB680.4% / 1017.6%969.4 MB / 1074.8 MB

FAIP GPU-native combines lower direct plugin latency with substantially higher processing headroom, while Citrix maintains a lighter host CPU/RAM footprint across the same workloads.

Visual Quality Analysis

Sample A - CitrixSample B - Fluendo
Citrix clipFAIP clip

Both solutions provide effective foreground/background separation, but with different visual styles: Citrix emphasizes smoother blur, while FAIP uses opaque/replaced background rendering in this configuration. At a high level, both solutions show similar subject-preservation behavior, with differences mainly in background treatment aesthetics.


1.2 Key Findings

  • Maximum processing capacity: FAIP GPU-native delivers the highest Scenario B throughput, reaching 159.50 FPS at 720p30 and 161.50 FPS at 4K60.

  • Lower plugin latency: FAIP GPU-native provides the lowest direct plugin latency, with 6.40 ms at 1080p60 and 3.57 ms at 4K60, versus 10.30 ms and 29.02 ms for Citrix.

  • Real-time performance: FAIP performs strongly under paced workloads. At 1080p60, FAIP CPU reaches 60 FPS versus 22.50 FPS for Citrix. At 4K60, FAIP GPU-native provides the highest observed output at 29 FPS.

  • Better high-load scaling: FAIP GPU-native maintains substantially more processing headroom as resolution and framerate increase, particularly in Scenario B.

  • Resource trade-off: Citrix has a significantly lighter CPU/RAM footprint, while FAIP uses more resources in exchange for higher processing capacity and lower GPU-native latency.

  • Runtime stability: FAIP still shows teardown instability in some execution paths, which remains an area for further hardening.

Overall, the benchmark shows two distinct deployment profiles. Citrix offers the lighter CPU-oriented footprint, while FAIP GPU-native provides the strongest processing-capacity and latency profile when GPU resources are available. FAIP CPU provides a useful CPU-backed execution option, but at significantly higher host-resource cost. The preferred architecture therefore depends on whether the deployment prioritizes minimum resource footprint or maximum processing headroom and latency performance.


2. Benchmark Scope


2.1 Benchmark Matrix

DimensionValue
Configurations9
Resolutions4 (720p, 1080p, 1440p, 4K)
Target framerates2 (30, 60)
Scenarios2
Total9 x 4 x 2 x 2 = 144

Workloads: 720p30, 720p60, 1080p30, 1080p60, 1440p30, 1440p60, 4K30, 4K60.

Case counts:

  • Scenario A: 72
  • Scenario B: 72
  • FAIP: 128
  • Citrix: 16

2.2 Benchmark Environment

ComponentConfiguration
OSUbuntu 22.04
GPUNVIDIA GeForce RTX 3090
GStreamer1.28.2
FAIPv1.2.6
Raven AI Enginev0.4.7.0
Citrix pluginctxbeffect
FAIP pluginflubkgndremoval
AI device classesCPU / CUDA
Render path classesCPU / CUDA / Vulkan

2.3 Evaluated Configurations

IDRequested execution family
faip_cpuraw_cpu_cpuCPU/raw -> CPU processing -> CPU AI -> CPU/raw
faip_cpuraw_cpu_cudaCPU/raw -> CPU processing -> CUDA AI -> CPU/raw
faip_cpuraw_vulkan_cpuCPU/raw -> Vulkan processing -> CPU AI -> VulkanImage
faip_cpuraw_vulkan_cudaCPU/raw -> Vulkan processing -> CUDA AI -> VulkanImage
faip_cudamemory_cuda_cpuCUDAMemory -> CUDA processing -> CPU AI -> CPU/raw
faip_cudamemory_cuda_cudaCUDAMemory -> CUDA processing -> CUDA AI -> CPU/raw
faip_cudamemory_vulkan_cpuCUDAMemory -> Vulkan processing -> CPU AI -> VulkanImage
faip_cudamemory_vulkan_cudaCUDAMemory -> Vulkan processing -> CUDA AI -> VulkanImage
citrix_cpu_cpu_cpuCPU/raw -> CPU processing -> CPU AI -> CPU/raw

Stale theoretical IDs such as faip_cudamemory_cpu_cpu and faip_cudamemory_cpu_cuda are excluded from this corrected final matrix.


2.4 Benchmark Scenarios

For a fixed workload/configuration, both scenarios preserve the same architecture and content family; pacing mode is the principal experimental difference.

2.4.1 Scenario A - Live Stream / Real-Time Performance

Scenario A uses paced input at the target nominal framerate (30 or 60 FPS) to show observed real-time output behavior.

+----------------------+   +----------------------+   +--------------------------+
| Input paced 30/60 FPS|-->| Selected exec path  |-->| Observed: FPS + delivery |
+----------------------+   +----------------------+   +--------------------------+

2.4.2 Scenario B - Offline / Maximum Processing Performance

Scenario B removes input pacing to measure maximum processing capacity and associated latency/resource behavior under load.

+----------------------+   +----------------------+   +----------------------------------+
| Input unpaced        |-->| Selected exec path  |-->| Measured: thrpt+latency+host res |
+----------------------+   +----------------------+   +----------------------------------+

3. Processing Architecture and GStreamer Pipelines

The GStreamer pipeline describes inter-element topology and memory exchange. The FAIP Updated execution plan describes the internal processing/render and AI backend actually selected at runtime.


3.1 Processing Architecture

High-level pipeline architecture:

Input
  |
  v
Decoder
  |
  v
Memory Carrier
  |
  +--------------------------+
  |                          |
  v                          v
CPU/raw                  CUDAMemory
  |                          |
  v                          v
Background Removal Plugin
  |
  v
Output Memory Carrier
  |
  v
Sink

Conceptual plugin internal architecture:

                    Background Removal Plugin
                              |
                              v
                     +------------------+
                     |  Pre-processing  |
                     | CPU/CUDA/Vulkan  |
                     +------------------+
                              |
                              v
                     +------------------+
                     |   AI Inference   |
                     |    CPU / CUDA    |
                     +------------------+
                              |
                              v
                     +------------------+
                     | Post-processing  |
                     | CPU/CUDA/Vulkan  |
                     +------------------+
                              |
                              v
                         Output Frame

3.2 Execution-Path Summary Table

This subsection summarizes the evaluated execution configurations in a compact table.

Configuration IDInput familyProcessing backendAI backendOutput familyUpload/DownloadRepresentative execution path
citrix_cpu_cpu_cpuCPU/raw (Y4M)CPUCPU effectCPU/rawno / noCPU/raw -> CPU processing -> CPU effect -> CPU/raw
faip_cpuraw_cpu_cpuCPU/raw (Y4M)CPUCPUCPU/rawno / noCPU/raw -> CPU processing -> CPU AI -> CPU/raw
faip_cpuraw_cpu_cudaCPU/raw (Y4M)CPUCUDACPU/rawno / noCPU/raw -> CPU processing -> CUDA AI -> CPU/raw
faip_cpuraw_vulkan_cpuCPU/raw (Y4M)VulkanCPUVulkanImageyes / noCPU/raw -> Vulkan processing -> CPU AI -> VulkanImage
faip_cpuraw_vulkan_cudaCPU/raw (Y4M)VulkanCUDAVulkanImageyes / noCPU/raw -> Vulkan processing -> CUDA AI -> VulkanImage
faip_cudamemory_cuda_cpuCUDAMemory (H.264 + NVDEC)CUDACPUCPU/rawno / yesCUDAMemory -> CUDA processing -> CPU AI -> CPU/raw
faip_cudamemory_cuda_cudaCUDAMemory (H.264 + NVDEC)CUDACUDACPU/rawno / yesCUDAMemory -> CUDA processing -> CUDA AI -> CPU/raw
faip_cudamemory_vulkan_cpuCUDAMemory (H.264 + NVDEC)VulkanCPUVulkanImageyes / noCUDAMemory -> Vulkan processing -> CPU AI -> VulkanImage
faip_cudamemory_vulkan_cudaCUDAMemory (H.264 + NVDEC)VulkanCUDAVulkanImageyes / noCUDAMemory -> Vulkan processing -> CUDA AI -> VulkanImage

Scenario A and Scenario B use the same execution-path selection for a given configuration; the primary experimental difference is input pacing mode.


4. Measurement Methodology


4.1 Throughput and Plugin Latency

Throughput uses the final sink rendered-frame rate over the measurement window. Scenario A reports observed FPS with delivery context; Scenario B reports throughput with headroom against nominal workload FPS.

plugin sink timestamp
        |
        v
   background-removal plugin
        |
        v
plugin src timestamp

PluginLatency_i = t_src,i - t_sink,i

Direct plugin latency is measured from matched sink/src PTS using monotonic timestamps. Latency is stage-local and is not equivalent to 1000/FPS or pure CUDA kernel time.


4.2 Resource Measurement and Execution Validation

CPU mean [%], RAM mean [MB], GPU utilization [%], and GPU memory [MB] are sampled in-window. CPU can exceed 100% because process CPU is summed across logical cores.

Execution-path interpretation uses this evidence hierarchy: FAIP Updated execution plan, negotiated caps, AI-device selection, and Vulkan environment. measurement_validity and runtime_stability remain independent dimensions, so VALID + TEARDOWN_ABORT can occur when teardown fails after measurement completion.


5. Performance Results

Primary comparison set in this section:

  • Citrix CPU reference: citrix_cpu_cpu_cpu
  • FAIP CPU reference: faip_cpuraw_cpu_cpu
  • FAIP GPU-native reference: faip_cudamemory_vulkan_cuda

Data-integrity audit policy:

  • All cells were verified against testcase-level rows in results_smoke_enriched.json for exact scenario, workload, configuration, validity, FPS, latency, and resources.
  • If any primary row were invalid, the table cell would be N/E; no focused rerun values are substituted into the primary matrix.

5.1 Real-Time Performance

Scenario A paced real-time results (Observed FPS with delivery ratio):

WorkloadCitrix CPUFAIP CPUFAIP GPU-native
720p3030.00 FPS (100.0%)30.00 FPS (100.0%)27.50 FPS (91.7%)
720p6024.00 FPS (40.0%)60.00 FPS (100.0%)52.00 FPS (86.7%)
1080p3017.00 FPS (56.7%)30.00 FPS (100.0%)28.00 FPS (93.3%)
1080p6022.50 FPS (37.5%)60.00 FPS (100.0%)34.50 FPS (57.5%)
1440p3028.00 FPS (93.3%)30.00 FPS (100.0%)16.00 FPS (53.3%)
1440p607.50 FPS (12.5%)28.00 FPS (46.7%)28.00 FPS (46.7%)
4K305.50 FPS (18.3%)17.50 FPS (58.3%)15.00 FPS (50.0%)
4K601.50 FPS (2.5%)18.00 FPS (30.0%)29.00 FPS (48.3%)

5.2 Maximum Processing Performance

Scenario B unpaced maximum processing results (Throughput FPS with headroom):

WorkloadCitrix CPUFAIP CPUFAIP GPU-native
720p3030.00 FPS (1.00x)30.50 FPS (1.02x)159.50 FPS (5.32x)
720p6060.50 FPS (1.01x)60.00 FPS (1.00x)141.00 FPS (2.35x)
1080p3030.00 FPS (1.00x)30.00 FPS (1.00x)135.50 FPS (4.52x)
1080p6059.50 FPS (0.99x)39.50 FPS (0.66x)112.50 FPS (1.88x)
1440p3030.00 FPS (1.00x)28.00 FPS (0.93x)95.00 FPS (3.17x)
1440p6040.50 FPS (0.68x)27.50 FPS (0.46x)112.00 FPS (1.87x)
4K3016.00 FPS (0.53x)19.50 FPS (0.65x)85.00 FPS (2.83x)
4K6019.00 FPS (0.32x)16.00 FPS (0.27x)161.50 FPS (2.69x)

5.3 Resolution and Framerate Scalability

This subsection interprets scaling trends from Sections 5.1 and 5.2.

In Scenario A (paced), Observed FPS and Delivery Ratio generally decline as resolution and target framerate increase. CPU-reference paths and GPU-native behavior are both workload-dependent, and GPU-native FAIP does not consistently reach the Scenario A target input rate at higher-demand points. Below-target Scenario A output indicates fewer frames observed at final output, but it does not by itself demonstrate plugin-side frame drops.

In Scenario B (unpaced), Throughput FPS and Headroom separate the execution architectures more clearly: CPU-reference paths become constrained earlier at demanding resolution/framerate combinations, while FAIP GPU-native retains substantially more processing headroom across the workload range.

Refer to Section 5.1 for Scenario A detailed values and Section 5.2 for Scenario B detailed values.


5.4 Plugin Latency

Scenario A mean/p95 direct plugin latency (ms), all 8 workloads:

WorkloadCitrix Mean / p95FAIP CPU Mean / p95FAIP GPU-native Mean / p95
720p3013.753 / 14.45510.466 / 13.5254.479 / 5.968
720p6013.560 / 14.22810.453 / 12.1623.944 / 5.504
1080p3018.112 / 19.35210.709 / 13.2684.783 / 8.103
1080p6010.768 / 14.86410.879 / 12.6846.605 / 12.247
1440p3013.455 / 15.93012.902 / 15.3577.817 / 12.929
1440p6014.136 / 17.29323.139 / 35.4427.462 / 14.249
4K3031.974 / 36.28326.234 / 38.1519.544 / 16.705
4K6029.967 / 33.57525.980 / 41.1247.807 / 13.683

Scenario B mean/p95 direct plugin latency (ms), all 8 workloads:

WorkloadCitrix Mean / p95FAIP CPU Mean / p95FAIP GPU-native Mean / p95
720p307.623 / 10.20020.507 / 37.3324.896 / 9.142
720p6011.573 / 14.05010.919 / 11.5505.385 / 10.140
1080p3010.735 / 13.06411.155 / 12.5155.430 / 9.923
1080p6010.303 / 12.89018.587 / 28.2966.403 / 12.533
1440p3013.795 / 16.82021.981 / 29.4316.869 / 12.723
1440p6013.561 / 16.44523.197 / 31.8725.901 / 11.858
4K3033.839 / 36.69223.924 / 34.4107.007 / 15.213
4K6029.020 / 37.85830.208 / 41.5953.571 / 5.057

5.5 Resource Utilization

CPU utilization (%):

WorkloadCitrix AFAIP CPU AFAIP GPU-native ACitrix BFAIP CPU BFAIP GPU-native B
720p3059.51170.9486.230.91129.8898.5
720p6067.81385.0638.1103.01394.4808.5
1080p3071.01183.8522.749.11194.2793.0
1080p6059.61411.9227.893.31271.6725.4
1440p3069.61190.8131.673.01204.2712.7
1440p6074.81205.7140.898.91208.6688.6
4K3093.9823.1134.0102.2973.2680.4
4K60130.0874.0125.2117.2803.31017.6

RAM (MB):

WorkloadCitrix AFAIP CPU AFAIP GPU-native ACitrix BFAIP CPU BFAIP GPU-native B
720p3080.6577.41053.181.4541.3986.8
720p6079.5541.81051.380.5543.9953.6
1080p30104.7556.01079.7105.6554.9939.9
1080p60106.3555.5918.9106.3556.0926.7
1440p30140.0579.5929.5140.6578.5951.2
1440p60139.3578.3926.7140.1578.4934.1
4K30223.4615.2966.1213.5609.0969.4
4K60210.4613.5982.7224.8614.31074.8

GPU utilization (%):

WorkloadCitrix AFAIP CPU AFAIP GPU-native ACitrix BFAIP CPU BFAIP GPU-native B
720p303.02.03.00.54.515.5
720p604.04.56.01.55.511.0
1080p303.03.04.02.57.514.5
1080p601.55.55.00.06.013.5
1440p300.09.54.04.012.011.5
1440p602.011.53.53.09.513.5
4K303.07.54.53.54.011.5
4K604.07.03.03.55.017.5

GPU memory (MB):

WorkloadCitrix AFAIP CPU AFAIP GPU-native ACitrix BFAIP CPU BFAIP GPU-native B
720p30271.0622.0992.0535.0966.01253.0
720p60271.0618.0992.0420.0755.01253.0
1080p30271.0686.01046.0535.01138.51317.0
1080p60535.0682.01301.0535.0971.01315.0
1440p30535.01042.51391.0535.0977.01379.0
1440p60535.01095.01411.0538.01095.01411.0
4K30535.01287.01645.5535.01111.01651.5
4K60414.01287.01647.5271.01287.01386.0

6. Runtime Stability


6.1 Runtime Stability Summary

Runtime status / metricCountInterpretation
Total executed144Complete benchmark matrix
Initial successful measurements142/144Valid results in original campaign
Initial zero-frame anomalies2Original measurement anomalies
STABLE51Measurement and teardown completed normally
TEARDOWN_ABORT91Measurement completed, but process aborted during teardown
Configuration mismatches0Requested execution path matched
Negotiation failures0No caps-negotiation failure

7. Visual Quality Analysis


7.1 Static Analysis (Reference Frames)

7.1.1 Citrix Reference Frame

Citrix frame 4

7.1.2 FAIP Reference Frame

FAIP frame 1

In static-frame comparison, both solutions show clear human segmentation/matting quality. Citrix appears more strict at subject borders, while FAIP appears slightly smoother in edge treatment. Despite these style differences, final perceived quality is similar.


7.2 Dynamic Analysis (Processed Output Animations)

7.2.1 Citrix Processed Output

Citrix processed GIF

7.2.2 FAIP Processed Output

FAIP processed GIF

In dynamic clips, the same conclusion holds: both pipelines maintain effective subject separation over time, with Citrix preserving stricter border definition and FAIP keeping a smoother visual transition. Motion behavior appears stable for both in these examples, and overall output quality remains comparable.


8. Conclusions

The benchmark shows that FAIP’s main performance advantage comes from its GPU-native CUDA+Vulkan architecture. When input pacing is removed in Scenario B, faip_cudamemory_vulkan_cuda consistently provides the largest processing headroom and lowest direct plugin latency of the representative execution paths, demonstrating the benefit of keeping video processing, AI inference, and frame exchange on GPU-addressable memory paths.

Under real-time paced conditions (Scenario A), the results are more workload-dependent. FAIP CPU provides strong delivery at several 720p and 1080p workloads, while the GPU-native path does not consistently reach the target input rate despite its much higher maximum processing capacity in Scenario B. At the most demanding 4K60 workload, however, FAIP GPU-native provides the highest observed output of the three representative paths. This difference between Scenario A and Scenario B also shows that maximum processing capacity alone does not guarantee equivalent paced real-time delivery, and that pacing, synchronization, memory flow, and pipeline behavior must be considered together.

The performance advantage of FAIP comes with a clear resource trade-off. Citrix maintains a substantially lighter CPU and RAM footprint, whereas FAIP—particularly its GPU-backed configurations—uses more host and GPU resources. The two solutions therefore represent different deployment profiles: Citrix favors a lightweight CPU-oriented execution model, while FAIP GPU-native favors processing headroom and low plugin latency when GPU resources are available.

From a scalability perspective, the results support the architectural direction of FAIP: as workload complexity increases, the CUDA+Vulkan GPU-native path retains a substantially wider processing envelope than the CPU-reference paths in maximum-load operation. This makes the GPU-native architecture particularly relevant where processing capacity and latency are more important than minimizing resource consumption.

Finally, runtime stability remains the main technical area requiring further hardening. Teardown-abort and memory-corruption signatures were observed even when measurements themselves completed successfully. These issues do not invalidate completed performance measurements, but they should be resolved before treating the evaluated paths as fully mature for long-running production workloads.

Overall, FAIP GPU-native provides the strongest performance profile in this benchmark, particularly for maximum processing capacity and direct plugin latency, while Citrix provides the more resource-efficient baseline. The results also identify two clear priorities for FAIP: improve paced real-time delivery consistency and resolve the observed teardown instability, while preserving the performance advantages of the GPU-native execution path.


8.1 Technical Q&A

Why can CPU usage exceed 100%?

Process CPU usage is aggregated across logical cores, so multi-threaded pipelines can report values above 100%.

Why can Scenario B FPS exceed Scenario A for the same workload?

Scenario A is paced by design, while Scenario B removes pacing to expose maximum processing capacity.

Does CUDA inference alone mean the full pipeline is GPU-native?

No. Input carrier, processing backend, inference backend, and output carrier are distinct dimensions. The runtime execution plan is authoritative.

How should VALID + TEARDOWN_ABORT be interpreted?

It indicates measurement completed successfully, but the process later aborted on teardown.

Are these results long-duration sustainability claims?

No. They are comparative benchmark measurements and are not long-duration endurance evidence.


Ready to put it to the test? Download and try Fluendo AI Plugins 🚀

For further information, get in touch with our team to discuss how we can help optimize your custom GStreamer and GPU pipelines.