mikeX
11th January 2005, 22:23
A small benchmark regarding mostly GCC flags and their impact on encoding speed with XviD:
: Profile :
: MSI KT3 ULTRA [VIA KT333 based]
: Athlon XP 1800+ [1533 MHz, FSB 133 MHz]
: 256MB RAM 333 MHz
: Debian GNU/Linux 3.1 [custom kernel 2.6.7]
: transcode v0.6.14 (C) 2001-2003 Thomas Oestreich, 2003-2004 T. Bitterberg
: XviD libxvidcore4-1.1.0-0beta1 (GomGom's proposed 1.1 beta)
: NASM version 0.98.38 compiled on Apr 6 2004
: yasm 0.4.0
: gcc-3.4 (GCC) 3.4.2 (Debian 3.4.2-2)
video source:
: raw avi 640x320 transcoded from DVD (with crop & hqdn3d)
: 1min 14sec (1782 frames)
xvid configuration:
: vhq=4, qpel, gmc, trellis (rest at default)
: quality based 1 pass [transcode -i source.avi -y xvid -o /dev/null -R 3 -w 2]
: Results :
1) CFLAGS: none
ASSEMBLY: nasm
result: 6.99 fps, 7.00 fps
2) CFLAGS: -O3 -fomit-frame-pointer
ASSEMBLY: nasm
result: 7.42 fps, 7.40 fps 5.9% faster
3) CFLAGS: -O3 -fomit-frame-pointer -march=athlon-xp -mfpmath=sse
ASSEMBLY: nasm
result: 7.53 fps, 7.55 fps, 7.51 fps 7.6% faster
4) CFLAGS: none
ASSEMBLY: no
result: 2.24 fps (x2) 68% slower
5) CFLAGS: -O3 -fomit-frame-pointer -march=athlon-xp -mfpmath=sse
ASSEMBLY: no
result: 2.72 fps 61.1% slower
6) CFLAGS: no
ASSEMBLY: yasm
result: 7.01 fps, 7.03 fps 0.3% faster
[percentage = (new - org)/org * 100 where org = 7 fps]
: Profile :
: MSI KT3 ULTRA [VIA KT333 based]
: Athlon XP 1800+ [1533 MHz, FSB 133 MHz]
: 256MB RAM 333 MHz
: Debian GNU/Linux 3.1 [custom kernel 2.6.7]
: transcode v0.6.14 (C) 2001-2003 Thomas Oestreich, 2003-2004 T. Bitterberg
: XviD libxvidcore4-1.1.0-0beta1 (GomGom's proposed 1.1 beta)
: NASM version 0.98.38 compiled on Apr 6 2004
: yasm 0.4.0
: gcc-3.4 (GCC) 3.4.2 (Debian 3.4.2-2)
video source:
: raw avi 640x320 transcoded from DVD (with crop & hqdn3d)
: 1min 14sec (1782 frames)
xvid configuration:
: vhq=4, qpel, gmc, trellis (rest at default)
: quality based 1 pass [transcode -i source.avi -y xvid -o /dev/null -R 3 -w 2]
: Results :
1) CFLAGS: none
ASSEMBLY: nasm
result: 6.99 fps, 7.00 fps
2) CFLAGS: -O3 -fomit-frame-pointer
ASSEMBLY: nasm
result: 7.42 fps, 7.40 fps 5.9% faster
3) CFLAGS: -O3 -fomit-frame-pointer -march=athlon-xp -mfpmath=sse
ASSEMBLY: nasm
result: 7.53 fps, 7.55 fps, 7.51 fps 7.6% faster
4) CFLAGS: none
ASSEMBLY: no
result: 2.24 fps (x2) 68% slower
5) CFLAGS: -O3 -fomit-frame-pointer -march=athlon-xp -mfpmath=sse
ASSEMBLY: no
result: 2.72 fps 61.1% slower
6) CFLAGS: no
ASSEMBLY: yasm
result: 7.01 fps, 7.03 fps 0.3% faster
[percentage = (new - org)/org * 100 where org = 7 fps]