Figment
Search…
Performance and CPU Load
The following tables show Figment's output FPS and CPU load (in percent) in different settings. Each setting is evaluated across different input frequencies (left column). We define the frequency as the interval (in milliseconds) between frames entering the machine learning model. To make the input FPS explicit we specify each frequency as 1000/FPS. With the next release (currently in beta) we will add the option set_input_frequency to the setOptionfunction allowing you to control the input frequency.
i7-10750H

Plain Figment

CPU load when rendering a MediaStream while Figment is deactivated: 3-5 %
Performance Mode
Quality Mode
1000/5
5 FPS / 4-9 %
5 FPS / 7-9 %
1000/10
9 FPS / 8-10 %
9 FPS / 12-14 %
1000/20
18 FPS / 13-15 %
16 FPS / 19-21 %
1000/30
25 FPS / 18-21 %
22 FPS / 25-28 %
1000/40 *
31 FPS / 22-25 %
27 FPS / 31-32 %
1000/50
35 FPS / 26-28 %
32 FPS / 35-37 %
1000/75
49 FPS / 32-35 %
41 FPS / 42-44 %
1000/100
58 FPS / 35-37 %
46 FPS / 48-51%

Figment in WebRTC Peer Connection

CPU load of WebRTC peer connection (15 FPS, 480p) while Figment is deactivated: 16-18 %. Our implementation is based on this WebRTC sample.
Performance Mode
Quality Mode
1000/5
5 FPS / 11-14 % **
5 FPS / 14-16 % **
1000/10
9 FPS / 21-23 %
9 FPS / 24-26 %
1000/20
17 FPS / 30-32 %
16 FPS / 36-39 %
1000/30
24 FPS / 40-43 %
21 FPS / 46-49 %
1000/40 *
30 FPS / 44-47 %
27 FPS / 54-57 %
1000/50
34 FPS / 48-50 %
30 FPS / 59-61 %
1000/75
49 FPS / 55-57 %
40 FPS / 64-68 %
1000/100
57 FPS / 59-61 %
46 FPS / 74-76 %
*Current default setting.
** Setting Figment's input frequency to a lower FPS than the WebRTC baseline positively impacts WebRTC's CPU load. This explains the lower CPU load than with the WebRTC baseline.
Last modified 6mo ago
Copy link