Some days ago I updated to xorg-server-1.5.3 and xf86-video-ati-6.10.0. This also resulted in a pixman update from 0.10.0 to 0.12.0. Since I'm still on gcc-4.1.2, I couldn't compile pixman with SSE2 support, so I disabled that and left SSE (1) enabled. But then watching YouTube in Firefox was extremely slow. So I disabled SSE too and things work fine now again. Reproducible: Always Steps to Reproduce: 1. Set USE="sse -sse2" for x11-libs/pixman-0.12.0 and emerge it. 2. Open a YouTube video in Firefox Actual Results: X server gets very slow until you leave YouTube. Expected Results: Should be faster... ;-) pixman should not be slower with sse than without. # emerge -pv xorg-server xf86-video-ati pixman mozilla-firefox netscape-flash These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild R ] x11-libs/pixman-0.12.0 USE="mmx (-altivec) -debug -sse -sse2" 0 kB [ebuild R ] www-client/mozilla-firefox-3.0.5 USE="custom-optimization dbus java startup-notification xulrunner -bindist -gnome -iceweasel -ipv6 -mozdevelop -restrict-javascript" LINGUAS="de -af -ar -be -bg -bn -bn_IN -ca -cs -cy -da -el -en -en_GB -en_US -eo -es -es_AR -es_ES -et -eu -fi -fr -fy -fy_NL -ga -ga_IE -gl -gu -gu_IN -he -hi -hi_IN -hu -id -is -it -ja -ka -kn -ko -ku -lt -lv -mk -mn -mr -nb -nb_NO -nl -nn -nn_NO -oc -pa -pa_IN -pl -pt -pt_BR -pt_PT -ro -ru -si -sk -sl -sq -sr -sv -sv_SE -te -th -tr -uk -zh -zh_CN -zh_TW" 0 kB [ebuild R ] net-www/netscape-flash-10.0.15.3 0 kB [ebuild R ] x11-base/xorg-server-1.5.3-r1 USE="hal nptl sdl xorg -3dfx -debug -dmx -ipv6 -kdrive -minimal -tslib" INPUT_DEVICES="evdev keyboard mouse synaptics -acecad -aiptek -calcomp -citron -digitaledge -dmc -dynapro -elo2300 -elographics -fpit -hyperpen -jamstudio -joystick -magellan -microtouch -mutouch -palmax -penmount -spaceorb -summa -tek4957 -tslib -ur98 -vmmouse -void -wacom" VIDEO_CARDS="radeon -apm -ark -ast -chips -cirrus -cyrix -dummy -epson -fbdev -fglrx -geode -glint -i128 -i740 (-impact) -imstt -intel -mach64 -mga -neomagic (-newport) -nsc -nv -nvidia -r128 -radeonhd -rendition -s3 -s3virge -savage -siliconmotion -sis -sisusb (-sunbw2) (-suncg14) (-suncg3) (-suncg6) (-sunffb) (-sunleo) (-suntcx) -tdfx -tga -trident -tseng -v4l -vermilion -vesa -vga -via -vmware -voodoo -xgi" 0 kB [ebuild R ] x11-drivers/xf86-video-ati-6.10.0 USE="dri -debug" 0 kB Total: 5 packages (5 reinstalls), Size of downloads: 0 kB # emerge --info Portage 2.1.6.4 (default/linux/x86/2008.0/desktop, gcc-4.1.2, glibc-2.6.1-r0, 2.6.27-gentoo-r7 i686) ================================================================= System uname: Linux-2.6.27-gentoo-r7-i686-Intel-R-_Pentium-R-_M_processor_1400MHz-with-glibc2.0 Timestamp of tree: Sun, 18 Jan 2009 12:45:01 +0000 app-shells/bash: 3.2_p39 dev-java/java-config: 1.3.7-r1, 2.1.6-r1 dev-lang/python: 2.5.2-r7 dev-util/cmake: 2.4.6-r1 sys-apps/baselayout: 1.12.11.1 sys-apps/sandbox: 1.2.18.1-r2 sys-devel/autoconf: 2.13, 2.63 sys-devel/automake: 1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.2 sys-devel/binutils: 2.18-r3 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 1.5.26 virtual/os-headers: 2.6.27-r2 ACCEPT_KEYWORDS="x86" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=pentium-m -O2 -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config /var/lib/hsqldb" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d" CXXFLAGS="-march=pentium-m -O2 -pipe" DISTDIR="/usr/src/distfiles" FEATURES="distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch userpriv usersandbox" GENTOO_MIRRORS="http://mirrors.sec.informatik.tu-darmstadt.de/gentoo/ http://gentoo.tiscali.nl/ http://gentoo.inode.at/ http://mirror.qubenet.net/mirror/gentoo/" LANG="de_DE@euro" LC_ALL="de_DE@euro" LDFLAGS="-Wl,-O1" LINGUAS="de" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="X a52 aac acpi akode alsa amarok asf audiofile berkdb bluetooth branding bzip2 cairo cddb cdparanoia cdr cli cracklib crypt cups curl d dbus dri dvd dvdread emboss encode evo exif ffmpeg firefox flac foomaticdb fortran gdbm gif gimp glitz glut gmp gphoto2 gtk gtk2 hal iconv idn imlib isdnlog java javascript jpeg kde kdeenablefinal kdehiddenvisibility libnotify live logrotate mad midi mikmod mmx mng mp3 mpeg mplayer mudflap mule musicbrainz ncurses network nls nptl nptlonly nsplugin ogg opengl openmp pam pch pcmcia pcre pdf perl png pnp povray pppd python qt3 qt3support qt4 quicktime readline reflection samba sdl session spell spl sse sse2 ssl startup-notification svg symlink sysfs tiff truetype unicode usb vim vim-syntax visualization vorbis wifi win32codecs wmf x264 x86 xcomposite xine xml xorg xscreensaver xulrunner xv xvid zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_anon authn_default authz_default authz_file authz_groupfile authz_host authz_owner authz_user autoindex cache charset_lite deflate dir disk_cache env ext_filter file_cache filter imagemap include info mem_cache mime mime_magic status userdir" ELIBC="glibc" INPUT_DEVICES="evdev keyboard mouse synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de" USERLAND="GNU" VIDEO_CARDS="radeon" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS # cat /proc/cpuinfo processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 9 model name : Intel(R) Pentium(R) M processor 1400MHz stepping : 5 cpu MHz : 600.000 cache size : 1024 KB fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 2 wp : yes flags : fpu vme de pse tsc msr mce cx8 apic sep mtrr pge mca cmov pat clflush dts acpi mmx fxsr sse sse2 tm pbe bts est tm2 bogomips : 1200.04 clflush size : 64 power management:
I'm tempted to blame GCC 4.1, which is known to have optimization issues. I'm not sure there's much to be done on pixman's side. I think waiting for GCC 4.3 to go stable is the best way forward. @toolchain, what say you? Thanks
Another idea would be just to disable SSE without SSE2 for now. But I don't know what users of gcc 4.3 would say about that. Or maybe the ebuild should give the same error as for USE=sse2 with gcc 4.1 for USE=sse, too. Anyway it is not a huge issue as there is an easy workaround. 8-)
I don't know if the following is related or not. But after changing from netscape-flash to adobe-flash on AMD64 no movie plays more than 30s and there is a very high load.
How is this with gcc-4.3?