Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Testing 3dnow, sse, etc...
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Gentoo on AMD64
View previous topic :: View next topic  
Author Message
dryadcito
Apprentice
Apprentice


Joined: 08 Oct 2004
Posts: 170
Location: Spain

PostPosted: Wed Aug 10, 2005 3:36 am    Post subject: Testing 3dnow, sse, etc... Reply with quote

I know that several packages won't work with flags enabling 3dnow & co, but developers of those packages are most likely working on that, and some packages could work now. Perhaps ebuild maintainers can't make tests because they have no time ( or the necessary amd64 ) but I'm sure here are people willing to help.

Could be useful if we start testing packages emerged with those use flags and report results? I'm saying this because of three reasons:

1) Does anyone know which packages won't work with them and which ones are ready? Is anyone trying each release with them on this architecture?

2)this kind of articles :

http://enterprise.linux.com/enterprise/05/06/09/1413209.shtml?tid=121

taken from

http://forums.gentoo.org/viewtopic-t-196967.html

and others that make clear 3dnow and sse intruction sets will improve performance on some kind of applications / libraries. It's a pity to waste our xmm and mmx registers because of a shrinking list of not working packages which can be compiled without these flags just adding an entry in package.use ...


3) I've unmasked them ( in /usr/portage/profiles/default-linux/amd64/use.mask since I don't know any other way) just to try and I had just a few problems, so there are some packages that could be ready.


The packages which gave me troubles where

xawtv and fftw didn't compile, I had to unset use flags un packages.use
transcode-1.0.0 compiles, but I have not tested it yet. Previous version didn't compile


The rest of the packages were emerged successfully and I'm using some of them (Xorg,xmms,xscreensaver,rss-glx) but other people could try The gimp or transcode if the use them frequently and tell us if they work. This is the list:

Code:

USE="-mmx -sse -3dnow -sse2 -3dnowext -mmxext" emerge -pv --newuse world

These are the packages that I would merge, in order:

Calculating world dependencies ...done!
[ebuild   R   ] media-video/mplayer-1.0_pre6-r4  (-3dfx) -3dnow* -3dnowext* +X -aalib +alsa (-altivec) -arts +avi -bidi -cdparanoia -debug +dga -directfb (-divx4linux) -doc -dts -dv -dvb -dvd -dvdread -edl +encode -esd -fbcon -ggi +gif +gtk -i8x0 +ipv6 -jack -joystick +jpeg -libcaca -lirc -live -lzo +mad -matroska -matrox -mmx* -mmxext* +mpeg -mythtv -nas +nls +nvidia +oggvorbis +opengl +oss +png +real -rtc -samba +sdl -sse* -sse2* (-svga) -tga +theora +truetype +v4l -v4l2 -xanim -xinerama +xmms +xv +xvid -xvmc 0 kB
[ebuild   R   ] media-libs/flac-1.1.1  -sse* +xmms 0 kB
[ebuild   R   ] media-video/transcode-1.0.0  -3dnow* +X -a52 (-altivec) +avi (-divx4linux) -dv -dvdread -fame +ffmpeg +gtk +imagemagick +jpeg -lzo +mjpeg -mmx* +mp3 +mpeg -network +ogg (-pvm) +quicktime +sdl -sse* -sse2* +theora +truetype +v4l +vorbis +xml2 +xvid 0 kB
[ebuild   R   ] media-sound/xmms-1.2.10-r15  -3dnow* +alsa -arts -directfb -esd +flac -jack -lirc +mad +mikmod -mmx* +mp3 +nls +oss -sndfile +vorbis 0 kB
[ebuild   R   ] media-gfx/gimp-2.2.6-r1  -aalib (-altivec) -debug -doc -gimpprint -gtkhtml +hardened +jpeg -mmx* -mng +png +python -sse* +svg +tiff -wmf 0 kB
[ebuild   R   ] x11-base/xorg-x11-6.8.2-r1  (-3dfx) -3dnow* +bitmap-fonts -cjk -debug +dlloader -dmx -doc +font-server -hardened -insecure-drivers +ipv6 -minimal -mmx* +nls +opengl +pam -sdk -sse* -static +truetype-fonts +type1-fonts (-uclibc) -xprint +xv 0 kB
[ebuild   R   ] media-libs/libfame-0.9.1-r1  -mmx* -sse* 0 kB
[ebuild     U ] media-libs/libkexif-0.2.1-r1 [0.2.1] -arts -debug +kdeenablefinal -xinerama 0 kB
[ebuild   R   ] x11-misc/rss-glx-0.7.6  -3dnow* +kde -openal -sse* 0 kB
Back to top
View user's profile Send private message
fangorn
Veteran
Veteran


Joined: 31 Jul 2004
Posts: 1886

PostPosted: Wed Aug 10, 2005 6:01 am    Post subject: Reply with quote

IIRC the 2005.0 profile of amd64 implicitely sets sse, sse2 USE flags, because all amd64 processors support this. Not sure about 3dnow.
Back to top
View user's profile Send private message
herbs
Retired Dev
Retired Dev


Joined: 11 Apr 2005
Posts: 11

PostPosted: Wed Aug 10, 2005 10:04 am    Post subject: Reply with quote

There is no need to set these flags. Packages that support SIMD extensions on amd64 are hard-enabled in the ebuild (since all amd64 procs support them). Most of the packages you mention already enable these features on amd64 regardless of your use flags. Unmasking these flags globaly can only lead to problems in packages where support implies x86 specific assembly.
Back to top
View user's profile Send private message
dryadcito
Apprentice
Apprentice


Joined: 08 Oct 2004
Posts: 170
Location: Spain

PostPosted: Wed Aug 10, 2005 11:59 am    Post subject: Reply with quote

Ok, I thought they were disabled always since mplayer said it was compiled without them, but I will think it's the exception ...
Back to top
View user's profile Send private message
nxsty
Veteran
Veteran


Joined: 23 Jun 2004
Posts: 1556
Location: .se

PostPosted: Wed Aug 10, 2005 5:31 pm    Post subject: Reply with quote

dryadcito wrote:
Ok, I thought they were disabled always since mplayer said it was compiled without them, but I will think it's the exception ...


Are you sure? This is from the mplayer pre7 ebuild:

Quote:

#################
# Platform specific flags, hardcoded on amd64 (see below)
use x86 && myconf="${myconf} $(use_enable 3dnow)"
use x86 && myconf="${myconf} $(use_enable 3dnowext 3dnowex)";
use x86 && myconf="${myconf} $(use_enable sse)"
use x86 && myconf="${myconf} $(use_enable sse2)"
use x86 && myconf="${myconf} $(use_enable mmx)"
use x86 && myconf="${myconf} $(use_enable mmxext mmx2)"
Back to top
View user's profile Send private message
herbs
Retired Dev
Retired Dev


Joined: 11 Apr 2005
Posts: 11

PostPosted: Wed Aug 10, 2005 5:50 pm    Post subject: Reply with quote

Also from the mplayer pre7 ebuild:
Code:
    # mplayer now contains SIMD assembler code for amd64
    # AMD64 Team decided to hardenable SIMD assembler for all users
    # Danny van Dyk <kugelfang@gentoo.org> 2005/01/11
    if use amd64; then
        myconf="${myconf} --enable-3dnow --enable-3dnowex --enable-sse --enable- sse2 --enable-mmx --enable-mmx2"
    fi


so yes they are enabled on amd64.
Back to top
View user's profile Send private message
freke
Apprentice
Apprentice


Joined: 23 Jan 2003
Posts: 153

PostPosted: Thu Aug 11, 2005 8:43 pm    Post subject: Reply with quote

Seems like I'm going ~amd64 on mplayer to test it out (unless the pre7 build is about to be marked stable?)
Back to top
View user's profile Send private message
hnaparst
Apprentice
Apprentice


Joined: 27 Jul 2005
Posts: 236
Location: Norrköping, Sweden

PostPosted: Thu Oct 20, 2005 1:22 pm    Post subject: Reply with quote

herbs wrote:
There is no need to set these flags. Packages that support SIMD extensions on amd64 are hard-enabled in the ebuild (since all amd64 procs support them). Most of the packages you mention already enable these features on amd64 regardless of your use flags. Unmasking these flags globaly can only lead to problems in packages where support implies x86 specific assembly.


OK, but if this is the case, then why does the configure command for fftw omit --enable-sse or --enable-sse2? The resulting library doesn't use sse, which results in
very slow FFTs.

Code:

./configure --prefix=/usr --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --libdir=/usr/lib64 --build=x86_64-pc-linux-gnu --enable-shared --enable-threads --enable-float --disable-altivec

_________________
Harold Naparst
Back to top
View user's profile Send private message
Gnufsh
Guru
Guru


Joined: 28 Dec 2002
Posts: 400
Location: Portland, OR

PostPosted: Thu Oct 20, 2005 1:47 pm    Post subject: Reply with quote

What about sse3? Not all amd64 cpus support sse3. Is there any way to enable support for that (in addition to -msse3)?
Back to top
View user's profile Send private message
hnaparst
Apprentice
Apprentice


Joined: 27 Jul 2005
Posts: 236
Location: Norrköping, Sweden

PostPosted: Thu Oct 20, 2005 1:53 pm    Post subject: SSE3 worthless Reply with quote

My experience has been that SSE3 does not add any performance to anything. It's a bust.

Additionally, I don't think it is a supported configure option in fftw (according to fftw.org)

I've filed a bug report for the fftw ebuild. Do you think this was the right thing to do?
_________________
Harold Naparst
Back to top
View user's profile Send private message
tnt
Veteran
Veteran


Joined: 27 Feb 2004
Posts: 1130

PostPosted: Mon Oct 24, 2005 12:51 pm    Post subject: Reply with quote

Are there any test about performance gains/drow-backs with -mfpu -m3dnow -mmmx -m3dnow -msse -msse2 and -msse3 on different CPUs?
_________________
gentoo user
Back to top
View user's profile Send private message
Gnufsh
Guru
Guru


Joined: 28 Dec 2002
Posts: 400
Location: Portland, OR

PostPosted: Mon Oct 24, 2005 2:09 pm    Post subject: Reply with quote

tnt wrote:
Are there any test about performance gains/drow-backs with -mfpu -m3dnow -mmmx -m3dnow -msse -msse2 and -msse3 on different CPUs?

AFAIK, -mmmx -m3dnow -msse -msse2 are enabled on all amd64 cpus.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Gentoo on AMD64 All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum