32 bit VS 64 bit

Post Reply
SoNic67

Posts: 97
Joined: Sat Jul 26, 2014 1:31 am
Location:

HTPC Specs: Show details

32 bit VS 64 bit

#1

Post by SoNic67 » Mon Aug 04, 2014 12:46 am

I have an ultra small form PC (Lenovo ThinkCentre M57, Type 6071) used for Windows 7 MC. It has 4GB of RAM (maximum), integrated video (Intel GMA 3100, part of Q35 chipset, video driver disabled) and a GeForce GT610 (1GB memory, in use for my TV).
Under 32 bit, my system has "4GB installed, 2.99GB available". With WMC running in background, Resource Monitor (Memory Tab) shows:
Reserved 1036MB (not available), In Use 1024MB, Modified 82MB, Standby 1129MB, Free 834MB.
Available: 1963MB, Cached 1211MB, Total: 3060MB, Installed: 4096MB


I want to know if changing over to Windows 7 will improve anything. Memory will be used to 4GB, but programs will take more space in memory (being 64 bit), so I am not sure if that's a win.

My question for people that have a 64 bit Windows 7 is: What are your memory usage numbers?

PS: I did try the PAE mod, and it raises the usable memory up to 3.65GB. Unfortunately, because a well known bug in Intel video drivers, it will crash randomly, even if the GMA3100 is disabled in Windows. Since my GT610 is in a x1 slot, it does not deactivate the GMA 3100 at BIOS level.

barnabas1969

Posts: 5738
Joined: Tue Jun 21, 2011 7:23 pm
Location: Titusville, Florida, USA

HTPC Specs: Show details

#2

Post by barnabas1969 » Mon Aug 04, 2014 12:55 am

Your 2.99GB available is because you have integrated video. The integrated video is using part of the RAM. The amount it uses can vary if you have BIOS set to dynamically allocate the memory usage for the integrated video. You probably got a different number after you setup PAE because the integrated video adapter was using a different amount of RAM.

32 bit Windows can use a maximum of 4GB (actually, just a little less than 4).

Anyway, 64 bit programs won't use more RAM. I don't know where you got that idea. There was once a poll here, and about two thirds of the users here are running 64 bits. I recommend it.

My HTPC's current memory usage is 1.85GB with two sessions logged in, Media Center running and one recording in progress (plus EventGhost and several other background apps running).

Ed 

Posts: 808
Joined: Sat May 24, 2014 3:14 pm
Location:

HTPC Specs: Show details

#3

Post by Ed  » Mon Aug 04, 2014 1:15 am

Plus, it's not just about RAM. With a 64 bit OS, a 64 bit CPU can take advantage of the 64 bit instruction sets - basically your CPU will perform better/faster under x64. You might not be able to notice it outside of benchmarks though; and even then it might be a negligible difference - but still. Like stated above, no reason not to.

barnabas1969

Posts: 5738
Joined: Tue Jun 21, 2011 7:23 pm
Location: Titusville, Florida, USA

HTPC Specs: Show details

#4

Post by barnabas1969 » Mon Aug 04, 2014 2:09 am

Recent PC CPU's do not have different instruction sets for 64 vs. 32 bit code. In fact, all current PC CPU's which are capable of running 64 bit Windows can also run 32 bit Windows natively. Ed may be talking about other (non-PC, non-Windows) 64 bit hardware which must run older 32 bit code in an emulated mode, which would certainly be less efficient. But when we are talking about 32 bit vs 64 bit Windows PC's, there is absolutely no difference (currently) in performance other than the ability to address more RAM, more disk, and the ability to store registers (variables), which are 64 bits, during code execution.

SoNic67

Posts: 97
Joined: Sat Jul 26, 2014 1:31 am
Location:

HTPC Specs: Show details

#5

Post by SoNic67 » Mon Aug 04, 2014 3:23 am

Thanks for the replies.
1. I know why I have 3GB of ram available, the whole story with address space limit. And I know that my integrated video will eat up some RAM memory no matter what. That was not the issue, I have to live with that.
2.The 32 bit instructions are different from the 64 bit, they take 1/2 space in the memory. The 32 bit software uses the shorter instructions and shorter data space, so the 32 bit software footprint in memory (and on the hard disc) is smaller that the same software running in 64 bit.
3. Speed is hardly an issue, I have installed a Q6600 and is barely working a sweat with three shows recording and one playing (that's the GT610 for). I cannot address more RAM than 4GB because that's the max installed. I have WEI scores of 7.1 for CPU and memory now.
4. @barnabas1969 - thanks for the number (1.85GB), even if is a rough one - you could click on Resource Monitor to find out more.

Based on that number, you are using 1,85GB versus my 1GB. That's an extra 0.85GB used by x64.
If I switch to x64, I would still miss the 256MB "reserved" because of my integrated video (at least that's what happed with PAE). That leaves available at most 4GB-0.25GB=3.75GB. If I deduct the extra 1.85GB used by x64 software, I am left with 1.9 GB versus 1.9GB now... Space that will be used up faster by x64 apps and services, including cache.

I guess I will keep my 32 bit Windows. IMO an upgrade to 64bit with my 4GB will not add any benefit. Only if the system has over 4GB I can see memory-related advantages.

barnabas1969

Posts: 5738
Joined: Tue Jun 21, 2011 7:23 pm
Location: Titusville, Florida, USA

HTPC Specs: Show details

#6

Post by barnabas1969 » Mon Aug 04, 2014 4:59 am

I'm using 1.85GB with two sessions logged in, and probably more software running in the background than you have running. The difference between 32bit and 64bit software utilization of memory isn't as simple as saying that it uses 2 times as much RAM. It's true that the address space pointers used by 64 bit programs will use a LITTLE BIT more RAM, but nowhere near two times as much. It might be as much as 5% or 10% more, but not significant by any measure. If someone told you that a 64 bit program will use two times as much RAM as a 32 bit program, they don't know what they are talking about.

User avatar
CyberSimian

Posts: 516
Joined: Mon Jun 20, 2011 5:52 pm
Location: Southampton, UK

HTPC Specs: Show details

#7

Post by CyberSimian » Mon Aug 04, 2014 10:16 am

SoNic67 wrote:I guess I will keep my 32 bit Windows. IMO an upgrade to 64bit with my 4GB will not add any benefit. Only if the system has over 4GB I can see memory-related advantages.
I also have a Q6600 CPU (in a Dell XPS420 HTPC), and a GT610 graphics card, but I have only 3GB of RAM. However, I also have 8 DVB-T tuners, and have (very occasionally) made 8 simultaneous recordings to a (mostly empty) 750GB 7200rpm drive, which I use as the "capture" drive (recordings are moved elsewhere for longer-term storage).

I have no performance problems with this system. I run 32-bit Vista, but I do not use extenders.

-- from CyberSimian in the UK

SoNic67

Posts: 97
Joined: Sat Jul 26, 2014 1:31 am
Location:

HTPC Specs: Show details

#8

Post by SoNic67 » Mon Aug 04, 2014 1:02 pm

barnabas1969 wrote:The difference between 32bit and 64bit software utilization of memory isn't as simple as saying that it uses 2 times as much RAM.
I agree is not double, but I don't think is 5% either. IMO all the instructions, not just the pointers, are 64 bit wide, as opposed to 32 bit wide. Now, how much of the code is instructions and how much data is of course what makes the difference.
For curiosity, what size has in memory your ehshell.exe process?
CyberSimian wrote: I also have a Q6600 CPU (in a Dell XPS420 HTPC), and a GT610 graphics card, but I have only 3GB of RAM.
Basically that's where I am too, just my memory is working in dual channel because of identical memory sticks. I have WEI scores 7.1 for both CPU and memory, what do you have? Actually, I am not sure if Vista scores are comparable with Win 7...

SoNic67

Posts: 97
Joined: Sat Jul 26, 2014 1:31 am
Location:

HTPC Specs: Show details

#9

Post by SoNic67 » Mon Aug 04, 2014 9:51 pm

With no show playing: ehshell.exe (32 bit) takes 110MB (51MB shareable).
With one TV channel on: ehshell.exe 207MB (87MB shareable). ehrcvr.exe 64MB (22 shareable).
With two channels (one playing, one recording): ehshell.exe 232MB (93 shareable). ehrcvr.exe 73MB (30 shareable).
Three channels (one playing, two recording): ehshell.exe 230MB (90 shareable). Don't know why, but is lower. ehrcvr.exe 76MB (39 shareable).

User avatar
CyberSimian

Posts: 516
Joined: Mon Jun 20, 2011 5:52 pm
Location: Southampton, UK

HTPC Specs: Show details

#10

Post by CyberSimian » Tue Aug 05, 2014 8:26 am

SoNic67 wrote:Basically that's where I am too, just my memory is working in dual channel because of identical memory sticks. I have WEI scores 7.1 for both CPU and memory, what do you have? Actually, I am not sure if Vista scores are comparable with Win 7...
I have included below the WEI figures for four different configurations -- two for Vista and two for Win7.

My current graphics card is an Nvidia GT610 which I purchased on impulse believing that it was a re-packaged GT430 (I thought that the evolution was GT430->GT520->GT610). But when I later looked at some performance figures, I saw that it was in fact a cut-down GT430 -- some figures were the same, but others were inferior (sigh).

My previous graphics card was an Nvidia 8400GS. I purchased this in its PCI version (not PCI-E) in order to free up the 16x PCI-E slot to use for a tuner card. Sadly, the tuner card exhibits the same problem in the 16x slot as it does in the 1x slot; the card works correctly only in the 4x slot. The WEI panel initially showed the values with the 8400GS installed, so I have included those below.

My "production" system is Vista, but I have Win7 installed on another partition in the same HTPC. I have not yet moved to Win7 because I don't like some of the panel changes that they made in Win7. However, Vista cannot receive high definition TV, so I will migrate eventually. I have included the values for Win7 for comparison.

Code: Select all

      WEI                  VISTA               WIN7
   COMPONENT           8400GS   GT610      8400GS   GT610
----------------      -------  -----      ------  ------
Processor               5.9     5.9         7.1     7.1 
Memory                  5.4     5.4         7.1     7.1
Graphics                3.8     4.6         4.2     4.6
Gaming graphics         4.5     5.3         4.5     6.4
Primary hard disk       4.9     4.9         4.9     4.9

Overall                 3.8     4.6         4.2     4.6
-- from CyberSimian in the UK
Last edited by CyberSimian on Tue Aug 05, 2014 8:54 am, edited 1 time in total.

User avatar
CyberSimian

Posts: 516
Joined: Mon Jun 20, 2011 5:52 pm
Location: Southampton, UK

HTPC Specs: Show details

#11

Post by CyberSimian » Tue Aug 05, 2014 8:46 am

SoNic67 wrote:IMO all the instructions, not just the pointers, are 64 bit wide, as opposed to 32 bit wide.
Is this true?

It is not true for the 32-bit instruction set, which is a superset the 16-bit instruction set. 32-bit programs consist of instructions with a variety of lengths, ranging from 1-byte instructions up to 5-bytes or more (I am not familiar with the complete instruction set).

I would expect the 64-bit instruction set to be an evolution of the 32-bit instruction set, and hence also consist of instructions with a variety of lengths. But I have never used the 64-bit instruction set, so I do not know for sure. The compiler that I use (Open Watcom) does not support the 64-bit instruction set.

-- from CyberSimian in the UK

SoNic67

Posts: 97
Joined: Sat Jul 26, 2014 1:31 am
Location:

HTPC Specs: Show details

#12

Post by SoNic67 » Tue Aug 05, 2014 9:32 pm

I should be more precise.... On x64 pushes and pops on the stack default to 8-byte strides, and pointers are 8 bytes wide.
Now, my WEI numbers are similar:
CPU 7.1
Memory 7.1
2D perf 4.2
3D perf 5.8
HDD 5.8

My GT610 was a PCIe x16. My Ultra Small Factor PC had only a x1 slot, so... I cut out the GT610 connector to fit :)
It has the graphics clock 850MHz, processor clock 1620MHz, memory clock 533Mhz (DDR3, 64bit).

User avatar
CyberSimian

Posts: 516
Joined: Mon Jun 20, 2011 5:52 pm
Location: Southampton, UK

HTPC Specs: Show details

#13

Post by CyberSimian » Tue Aug 05, 2014 10:48 pm

SoNic67 wrote:My GT610 was a PCIe x16. My Ultra Small Factor PC had only a x1 slot, so... I cut out the GT610 connector to fit :) It has the graphics clock 850MHz, processor clock 1620MHz, memory clock 533Mhz (DDR3, 64bit).
My GT610 has graphics clock 810Mhz, processor clock 1620MHz, and memory clock 600MHz (2GB DDR3 memory). I guess that different manufacturers tailor the chipset slightly differently to fit in with their product ranges.
SoNic67 wrote:Now, my WEI numbers are similar:
CPU 7.1
Memory 7.1
2D perf 4.2
3D perf 5.8
HDD 5.8
My 2D and 3D graphics performance figures are slightly better than yours. This could be due to the slightly different chipset settings, or the fact that you are using a 1x slot instead of 16x. Your HDD figure is better than mine because my C: drive is on a 160GB disk that I removed from a laptop, so it is probably a 5400rpm disk.

-- from CyberSimian in the UK

erkotz

Posts: 1378
Joined: Mon Aug 22, 2011 9:23 pm
Location:

HTPC Specs: Show details

#14

Post by erkotz » Wed Aug 06, 2014 5:03 pm

barnabas1969 wrote:Your 2.99GB available is because you have integrated video. The integrated video is using part of the RAM. The amount it uses can vary if you have BIOS set to dynamically allocate the memory usage for the integrated video. You probably got a different number after you setup PAE because the integrated video adapter was using a different amount of RAM.

32 bit Windows can use a maximum of 4GB (actually, just a little less than 4).

Anyway, 64 bit programs won't use more RAM. I don't know where you got that idea. There was once a poll here, and about two thirds of the users here are running 64 bits. I recommend it.

My HTPC's current memory usage is 1.85GB with two sessions logged in, Media Center running and one recording in progress (plus EventGhost and several other background apps running).
That's not entirely accurate. as of Vista SP1, 32-bit client SKUs can only access 4GB of Address Space (not RAM). Address space includes RAM, but also includes various I/O cards, in particular video cards. Yes, integrated video does take some of the RAM, but I've seen (non-integrated) video cards eat hundreds of MB of address space before.
barnabas1969 wrote:Recent PC CPU's do not have different instruction sets for 64 vs. 32 bit code. In fact, all current PC CPU's which are capable of running 64 bit Windows can also run 32 bit Windows natively. Ed may be talking about other (non-PC, non-Windows) 64 bit hardware which must run older 32 bit code in an emulated mode, which would certainly be less efficient. But when we are talking about 32 bit vs 64 bit Windows PC's, there is absolutely no difference (currently) in performance other than the ability to address more RAM, more disk, and the ability to store registers (variables), which are 64 bits, during code execution.
The EMT64 instruction set is just an extension of the existing x86 instruction set, but it's more than just making some registers wider - see http://en.wikipedia.org/wiki/X86-64#Arc ... l_features
Quality Assurance Manager, Ceton Corporation

SoNic67

Posts: 97
Joined: Sat Jul 26, 2014 1:31 am
Location:

HTPC Specs: Show details

#15

Post by SoNic67 » Wed Aug 06, 2014 9:51 pm

CyberSimian wrote:My 2D and 3D graphics performance figures are slightly better than yours. This could be due to the slightly different chipset settings, or the fact that you are using a 1x slot instead of 16x. Your HDD figure is better than mine because my C: drive is on a 160GB disk that I removed from a laptop, so it is probably a 5400rpm disk.
-- from CyberSimian in the UK
I miss typed, my GPU clock is still 810MHz. Definitely the x1 versus x16 makes the difference. Not that it would matter too much, the GT cards use anyway a dedicated HD video playback path, not related to GPU cores, for H.264, WMV/VC-1, and MPEG-4 formats. Not sure if that applies to MPEG2 that is mainly the HDTV on US cable (just few exceptions are H.264), I am not sure if WMC uses CUDA or OpenCL for that... I'll just run some tests now, that I become curious (GPU-Z).
LE: I was wrong. GPUZ shows Video Engine load is 25%, GPU load is 52%, memory usage 25% with 270 MB... so it looks like WMC uses hardware accelerated playback after all.

mercalia

Posts: 168
Joined: Tue Aug 19, 2014 5:39 pm
Location:

HTPC Specs: Show details

#16

Post by mercalia » Tue Aug 19, 2014 8:45 pm

I seem to remember reading some where that WMC is still 32 bit even under Windows 7 64 bit? It gets thunked? I did try 64 bit and if anything when I tested latency etc was worse than 32 bit. I did gain a few hundred mb of memory but reverted to 32 bit. The only advantage of 64 bit is if u have lots and lots of memory to use some as a ram disc and use it as the the live tv buffer rather than disc?

User avatar
holidayboy

Posts: 2840
Joined: Sun Jun 05, 2011 1:44 pm
Location: Northants, UK

HTPC Specs: Show details

#17

Post by holidayboy » Wed Aug 20, 2014 5:07 pm

X64 Media Center will only use X64 codecs.



It also has X64 bit dll files - back in the TVPack2008 days there was a hacked .dll that enabled h.264 TV playback.



It was only available in 32bit and wouldn't work on X64 (or the other way around, I forget now).
Rob.

TGB.tv - the one stop shop for the more discerning Media Center user.

SoNic67

Posts: 97
Joined: Sat Jul 26, 2014 1:31 am
Location:

HTPC Specs: Show details

#18

Post by SoNic67 » Wed Aug 20, 2014 11:02 pm

ehshell.exe is a 64 bit application. However, my point is that, if Windows have ONLY 4GB installed, 32 bit might have MORE free memory than the 64 bit version.
64 bit OS makes sense only if the installed RAM is more (not equal) than 4GB (like 6, 8...).

User avatar
holidayboy

Posts: 2840
Joined: Sun Jun 05, 2011 1:44 pm
Location: Northants, UK

HTPC Specs: Show details

#19

Post by holidayboy » Thu Aug 21, 2014 12:58 pm

:thumbup:
Rob.

TGB.tv - the one stop shop for the more discerning Media Center user.

Post Reply