The time now is Wed 25 Apr 2018, 22:39
All times are UTC - 4 |
Author |
Message |
feelsub
Joined: 20 Jun 2012 Posts: 39
|
Posted: Thu 05 Jul 2012, 07:24 Post subject:
Hardware compatibility & optimisation 32bits vs x86_64 bits |
|
32bits vs x86_64 bits
64bits Intel & AMD CPU's dates back from end 2000...
The main advantage of 64bits apps, is you're sure to have multi-media instruction sets and more registers !
Instructions set SSE(1999 Pentium 3 a 32bits CPU), SEE2(Nov 2000 with Pentium 4(a 64bits CPU) first generation), SSE3(Intel 2004, AMD April 2005).
Additionnaly, with 64bits you can access more than 3Gb of RAM and randomisation of memory is way more efficient (security), while RAM attacks on 32 bits is more achievable. Linux PAE tries to offer this 64bits advantage.
Multi-media applications ought to use SSE(x) optimisations, for instance ffmpeg surely does it by default and one can later alter this by for instance ffmpeg -cpuflags -sse+mmx
From intel Core5 (and some Core3) there is also the Advanced Encryption Standard (AES) Instruction Set, which offers about 10x speed improves on encryption matters(see ref).
The purpose of 32bits applications is to maintain compatibility on any old hardware (Pentium3 and older class), and so to travel the world.
i386 & i486 do not guarantee to provide FPU(floating point instruction set) due to the SX family, the first CPU to guarantee FPU is the Pentium(i586).
i686 = Pentium pro(Nov 95 till 1998), introduced the MMX multimedia instruction sets.
To maintain compatibility with old hardware, i686 compiliation should be more than enough.
To know more about GCC compilation & CPU optimisation:
http://gcc.gnu.org/onlinedocs/gcc/i386-and-x86_002d64-Options.html
Note that gcc tries to bring additional optimisation as well according to their version see for instance gcc 4.6.x vs 4.7.x; but spaghetti will stay.
See for instance http://gcc.gnu.org/gcc-4.7/changes.html
Given the numereous optimisation compilation options, adding for which CPU class it has been optimized may help avoid confusion and bug reporting, for instance
vlc202-i686
vlc202-core2
vlc202-x86_64
Ref:
http://en.wikipedia.org/wiki/SSE2
http://en.wikipedia.org/wiki/Streaming_SIMD_Extensions
http://en.wikipedia.org/wiki/64-bit
http://en.wikipedia.org/wiki/AES_instruction_set
|
Back to top
|
|
 |
|
|
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 You cannot attach files in this forum You can download files in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|
[ Time: 0.0545s ][ Queries: 11 (0.0297s) ][ GZIP on ] |