RE: [suse-amd64] *** All of mmx dependent parts will be disabled *** *** All of sse mmx dependent parts will be disabled ***
MMX, 3dNow!, x87, SSE, SSE2 are all available on AMD64 CPUs. Little Blue men from Intel are not ;-) ] -Rich ... ] AMD Fellow ] richard.brunner at amd com
-----Original Message----- From: David Liontooth [mailto:liontooth@cogweb.net] Sent: Thursday, February 19, 2004 11:36 AM To: suse-amd64@suse.com Subject: [suse-amd64] *** All of mmx dependent parts will be disabled *** *** All of sse mmx dependent parts will be disabled ***
I got transcode compiled (thanks Philipp) and it works fine -- but slow. The two 1.4GHz Opterons crank out a fps just barely above a single 1.2GHz P4 (6 fps vs 5). How disappointing!
I notice that optimizing flags are disabled:
*** All of mmx dependent parts will be disabled *** *** All of sse dependent parts will be disabled ***
This is the output from transcode configure.
Are these functions not present in the AMD64 CPU?
Cheers, David
-- Check the List-Unsubscribe header to unsubscribe For additional commands, email: suse-amd64-help@suse.com
richard.brunner@amd.com wrote:
MMX, 3dNow!, x87, SSE, SSE2 are all available on AMD64 CPUs. Little Blue men from Intel are not ;-)
] -Rich ... ] AMD Fellow ] richard.brunner at amd com
I thought so! Does anyone have a suggestion as to why these features of the CPU get disabled? Cheers, David
-----Original Message----- From: David Liontooth [mailto:liontooth@cogweb.net] Sent: Thursday, February 19, 2004 11:36 AM To: suse-amd64@suse.com Subject: [suse-amd64] *** All of mmx dependent parts will be disabled *** *** All of sse mmx dependent parts will be disabled ***
I got transcode compiled (thanks Philipp) and it works fine -- but slow. The two 1.4GHz Opterons crank out a fps just barely above a single 1.2GHz P4 (6 fps vs 5). How disappointing!
I notice that optimizing flags are disabled:
*** All of mmx dependent parts will be disabled *** *** All of sse dependent parts will be disabled ***
This is the output from transcode configure.
Are these functions not present in the AMD64 CPU?
Cheers, David
-- Check the List-Unsubscribe header to unsubscribe For additional commands, email: suse-amd64-help@suse.com
Hi, On Thursday 19 February 2004 22:11, David Liontooth wrote:
richard.brunner@amd.com wrote:
MMX, 3dNow!, x87, SSE, SSE2 are all available on AMD64 CPUs. Little Blue men from Intel are not ;-)
] -Rich ... ] AMD Fellow ] richard.brunner at amd com
I thought so! Does anyone have a suggestion as to why these features of the CPU get disabled?
The MMX, SSE1/2 and 3dnow features all require assembly snippets in the code. The syntax of the assembly has changed in 64bit mode. Thus the configure script thinks that these features are not available. Either rewrite the code or compile it in 32 bit mode to get it to work. /peter
David Liontooth may (or may not) have said:
I thought so! Does anyone have a suggestion as to why these features of the CPU get disabled?
Because transcode doesn't know about x86_64. If you want to build 64bit you cannot use the x86 .asm that comes with transcode, it just isn't going to work. So, effectively you are doing everything with slow C functions. Transcode itself is fine, its the modules that it uses that need to be updated. I got about half way through porting the xvid codec asm over to x86_64, its not as trivial as it seems, fixing the -fPIC differences from x86 to x86_64 takes long enough, and, oh yeah, you can't use nasm either, you'll have to use yasm. (Plus change the function calls to using registers instead of the stack.) And all this is before even looking at optimizing the code for the extra gpr and xmm registers we get. Mike
Mike Phillips wrote:
David Liontooth may (or may not) have said:
I thought so! Does anyone have a suggestion as to why these features of the CPU get disabled?
Because transcode doesn't know about x86_64. If you want to build 64bit you cannot use the x86 .asm that comes with transcode, it just isn't going to work. So, effectively you are doing everything with slow C functions.
Transcode itself is fine, its the modules that it uses that need to be updated. I got about half way through porting the xvid codec asm over to x86_64, its not as trivial as it seems, fixing the -fPIC differences from x86 to x86_64 takes long enough, and, oh yeah, you can't use nasm either, you'll have to use yasm. (Plus change the function calls to using registers instead of the stack.)
And all this is before even looking at optimizing the code for the extra gpr and xmm registers we get.
Mike
Hi Mike, All right, it sounds like you know what you're doing! I see from the transcode-devel list that you had some advice on how to get this working (or not quite) back in November; could you give us an update? Cheers, David
David Liontooth may (or may not) have said:
Hi Mike,
All right, it sounds like you know what you're doing!
I see from the transcode-devel list that you had some advice on how to get this working (or not quite) back in November; could you give us an update?
To be honest I haven't worked on it for a while. I think something like 85% of it compiles now. I have no idea if it will work though, I could be off by one in the assmebly somewhere as it will ruin the video. I read all the background on the transforms being done and the math is not trivial to say the least. (Made me dig up all my matrix learning from school again.) x86_64 uses a completely different (and actually easier) way of dealing with -fPIC code, you reference everything relative to the %rip register. Regular 32bit x86 code figures the reloc's out itself, but we have to specifically tell it how to find the data its looking for. The stuff that catches you out straight away is the push/pop instructions, you can't do 32 bit stack values, you have to change the registers to their 64bit counterparts, i.e. rax instead of eax. If you're interested in this I'd recommend downloading the chipset dev docs from amd's site, you can get the pdf's for free. If anyone wants to play, I've put up the source tree that I was working on: http://siasl.dyndns.org/projects/xvid/xvid_20031115_x86_64.tgz Be careful playing with configure, I had to manually change some of the files to make it work. And you'll need to grab a copy of yasm too. To be honest, I'd use the 32 bit binaries for now, the machine is fast enough. Mike
I have two IDE drives on my AMD64 and often leave them unmounted. If I mount one locally, then nfs mount it, and then umount the nfs volume, I can no longer unmount it locally -- short of rebooting. This is very reliable -- happens every time. I can reproduce it without accessing the drive in any other way. Has anyone encountered this? Cheers, David
SuSE 9.0 uses samba 2.2. Connecting with an external 3.0 samba client, I get "smbfs: mount_data version 1919251317 is not supported" and "smbfs: mount_data version 1075126272 is not supported" in syslog. Is this really a version issue or something else? Cheers, David
participants (4)
-
David Liontooth
-
Mike Phillips
-
Peter Rundberg
-
richard.brunner@amd.com