Performance report: Intel Pentium 4 3.2 GHz, 2 GB RAM

17 views
Skip to first unread message

Christopher Peters

unread,
Jan 12, 2012, 1:50:25 PM1/12/12
to openreplay
With v4l2_ingest, sdl_gui, playoutd, and mplayer running:

overall CPU usage: 80% - 90%
- sdl_gui: 75% - 85%
- v4l2_ingest: 55% - 65%
- playoutd: 25% - 30%
- xorg: 10% - 12%

v4l2_ingest: ~30 fps
sdl_gui: ~7.5 fps

Adding a hardware-accelerated video card (ATI Radeon X300) did not
improve CPU usage in any of these.

KP
--
-
Kit Peters (W0KEH), Engineer II
KMOS TV Channel 6 / KTBG 90.9 FM
University of Central Missouri
http://kmos.org/ | http://ktbg.fm/

Christopher Peters

unread,
Jan 12, 2012, 3:08:22 PM1/12/12
to openreplay
Note also that this is compiled against libjpeg-turbo.

Hardware:
Dell Optiplex GX620
Pentium 4 3.20 GHz
ATI Radeon X300 (output)
Wave-P Ether 9404 (capture)
2GB RAM
1TB HDD

KP

Christopher Peters

unread,
Jan 13, 2012, 11:35:56 AM1/13/12
to openreplay
Is there anything I can do, software-wise, to speed this up
significantly, or is my hardware just too slow?

Note that the Radeon is running with the OSS drivers; my distro
(Mythbuntu 11.10) won't support the legacy proprietary driver from AMD
that's required.

KP

Andrew Armenia

unread,
Jan 13, 2012, 2:19:22 PM1/13/12
to openr...@googlegroups.com
Multi-core CPUs help a lot, as would more RAM if you were on a 64-bit capable machine. I don't suspect the proprietary driver will improve things any; sometimes they actually have worse 2D performance than the open-source driver. You might try tweaking the priority of the different processes using 'nice' to improve responsiveness or adjusting the 'vm.dirty_ratio' sysctls to prevent I/O stalls, but at the end of the day it comes down to finding out what your bottleneck is and trying to improve that either from the hardware or software perspective.

One more thing, if you haven't already... check 'ldd ./v4l2_ingest' to make sure that libjpeg-turbo is really what's being linked in at runtime. If you see 'libjpeg.so.62 => /path/to/libjpeg-turbo/lib/libjpeg.so.62' then you're fine. On the other hand, if you see 'libjpeg.so.62 => /usr/lib/libjpeg.so.62', you have a problem... see below.

On some systems I've compiled against libjpeg-turbo only to find that when the program loads, it's linked against the system's libjpeg.so.62 instead of libjpeg-turbo's. If that's what you're seeing, editing ld.so.conf or 'export LD_LIBRARY_PATH=/path/to/libjpeg-turbo/lib' in any shell you're running openreplay from will fix it. The LD_LIBRARY_PATH is the most sure-fire way to make sure you're getting the right one because that takes precedence over just about everything else. Once you've made the change, you can use 'ldd' to confirm you're getting the right libjpeg.

-Andrew
Reply all
Reply to author
Forward
0 new messages