multimedia/x264: Adding Profile-Guided Optimization to OPTIONS

Mario Sergio Fujikawa Ferreira lioux at FreeBSD.org
Wed Feb 25 05:47:20 PST 2009


Hi,

	What about our adding Profile-Guided Optimization to OPTIONS?
I am still not sure about the performance gains since I do not
usually benchmark x264.

	This would be a default "Off" option at 1st since:

	1) I am not certain it really provides gains (I am not a
	   x264 power user)
	2) I am not certain gcc does not botch the optimized code
	3) I am not sure the user will be using gcc (although I am
	   not sure this ports would work with icc or a variant)

	A lot of cons but we have a pro: giving our users the option.
Furthermore, it does not seem to botch the simple videos I have
here for testing.

	Well, after your consideration, I would propose circulating
this on the -ports mailing list to gather some evidence on performance.

	The patch against multimedia/x264 is attached. I am downloading
a sample.y4m file from mplayerhq which I am not sure is really free.
Therefore, the usual no-redistribution variables could be in order
when WITH_PGO is enabled. Nevertheless, we do not need those for
internal peer review.

	The 1st concrete difference I noticed is the file size. It
is dramatically smaller WITH_PGO enabled.

$ tar -tvjf x264-0.0.20080409_2-PGO.tbz 
-rw-r--r--  0 root   wheel    2148 25 Fev 10:29 +CONTENTS
-rw-r--r--  0 root   wheel      65 25 Fev 10:29 +COMMENT
-rw-r--r--  0 root   wheel     448 25 Fev 10:29 +DESC
-rw-r--r--  0 root   wheel   17501 25 Fev 10:29 +MTREE_DIRS
-rwxr-xr-x  0 root   wheel  557412 25 Fev 10:29 bin/x264
-rw-r--r--  0 root   wheel   17441 25 Fev 10:29 include/x264.h
-rw-r--r--  0 root   wheel  662824 25 Fev 10:29 lib/libx264.a
lrwxr-xr-x  0 root   wheel       0 25 Fev 10:29 lib/libx264.so -> libx264.so.50
-rwxr-xr-x  0 root   wheel  537636 25 Fev 10:29 lib/libx264.so.50
-rw-r--r--  0 root   wheel     241 25 Fev 10:29 libdata/pkgconfig/x264.pc

$ tar -tvjf x264-0.0.20080409_2.tbz
-rw-r--r--  0 root   wheel    2148 25 Fev 10:27 +CONTENTS
-rw-r--r--  0 root   wheel      65 25 Fev 10:27 +COMMENT
-rw-r--r--  0 root   wheel     448 25 Fev 10:27 +DESC
-rw-r--r--  0 root   wheel   17501 25 Fev 10:27 +MTREE_DIRS
-rwxr-xr-x  0 root   wheel  784612 25 Fev 10:27 bin/x264
-rw-r--r--  0 root   wheel   17441 25 Fev 10:27 include/x264.h
-rw-r--r--  0 root   wheel  897432 25 Fev 10:27 lib/libx264.a
lrwxr-xr-x  0 root   wheel       0 25 Fev 10:27 lib/libx264.so -> libx264.so.50
-rwxr-xr-x  0 root   wheel  759940 25 Fev 10:27 lib/libx264.so.50
-rw-r--r--  0 root   wheel     241 25 Fev 10:27 libdata/pkgconfig/x264.pc

ps: In case, you're wondering. I am pushing PGO so that we gather
some notice on some of the players that could really benefit from
it -> firefox/openoffice/mplayer/ffmpeg. Benchmarks pending to make
sure it is beneficial though.

	Regards,

-- 
Mario S F Ferreira - DF - Brazil - "I guess this is a signature."
feature, n: a documented bug | bug, n: an undocumented feature
-------------- next part --------------
A non-text attachment was scrubbed...
Name: patch
Type: text/x-diff
Size: 2774 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-multimedia/attachments/20090225/6058d0f0/patch.bin


More information about the freebsd-multimedia mailing list