views:

135

answers:

3

Having a Macbook Pro with windows installed thanks to bootcamp, I have several questions:

  • Under windows, I see that processes only use 50% maximum of the CPU charge, is that because the processor is a dual core and because the process is not multi-threaded ? Should I install windows xp version 64 bits instead, to have better performance ?

  • Are all dual core processors 64 bits ? How can I check it with C or C++ to be sure that the native is 64 bits and not 32 bits ? I tried to print:

    sizeof(void*);

it says 8, so it would mean 64 bits, but I'm not sure...

  • Does dual core explicitey means that if it has 2 32 bits cores, the processor itself supports 64bits instructions ? Is this the x86_64 architecture ?

  • Is is delicate to emulate PS2 games because the original game has 128 bits instructions ?

  • Why are long double 128 bits while

    sizeof(long long); sizeof(long);

both output the same thing ?

+3  A: 
  • Yes 50% is maximum use for a single thread. No 64 bits won't change anything to that.
  • All Core 2 and Core i* processors are 64 bits. All Atoms are 32 bits. Your sizeof is correct, though it won't help if you compile as 32 bits app on a 64 bits system.
  • 2x 32 bits doesn't equal 64 bits. A 64 bits processor has 64 bits cores, a 32 bits processor has 32 bits cores.
  • It makes the emulation slow, but the difficulty comes from the complexity of the PS2 architecture, and from the differences with a PC. Plus, it might not be very well publicly documented, so finding specifics can be hard.
  • Ask the specs. Some types have sizes that are platform-dependent, which means an int might be 64 bits or 32 bits or even 16 bits.
jv42
How can I know if I'm compiling in either 32 or 64 bits ? for example with g++, is it 32 or 64 by default ? Except multi-threading, what is the point of having 2 cores by the way ? Does it give better perfs like dual channel does it ?
gokoon
Muoltithreading is the point of having 2 cores. Afterall when multithreading is used one can get up to (theoretically) a doubled performance compared to a singlecore (with the same architecture and frequency). considering the amount of threads working on your typical system even software which is not explicitly multithreaded might see some improvements (although not as much).
Grizzly
A: 

With Mac OS Snow Leopard with run application in 64-bit if the universal binary has 64-bit code, otherwise it loads the 32-bit code. Also you can decided if you want Snow Leopard to load OS full with fill "64-bit Kernel & Extensions" at boot up. I have my MBP set to boot 64-bit.
Which MacBookPro can boot into 64-bit

Now, for the Windows on Boot Camp. Whatever version you have of Windows installed will dicate if it 32-bit or 64-bit. So unless you install the 64-bit version of Windows you won;t get 64-bit. Whereas, Snow Leopard has it built-in for both 32-bit & 64-bit. And you cannot upgrade for example Windows XP 32-bit to Windows XP 64-bit. You will have to install from scratch.

Black Frog
Yes I know I would have to install it from scratch, but does that mean using windows xp "classic" will get "less performances" while playing games for example ? I don't really know -_-
gokoon