The MASM Forum Archive 2004 to 2012

General Forums => The Workshop => Topic started by: Damos on August 05, 2009, 02:26:02 PM

Title: Any advantages to 64 bit?
Post by: Damos on August 05, 2009, 02:26:02 PM
I've been toying wih the idea on starting on 64 bit code, for which I will need to upgrade my OS. So, i've been reading up on 64 bit assembly.
The only advantage I can see for 64 bit is the extra registers.
Even the larger addressing space isn't that much of an advantage I doubt that any program needs anymore memory than 4.3 gig.
The encoding for each instruction is double the length.
Strange calling convention that takes arguments on registers but requires the stack space to be allocated anyway.
If I need to do integer calculations in 64 bit I can use MMX/SSE.
So really what are the advantages to moving on "up" to 64 bit?
Title: Re: Any advantages to 64 bit?
Post by: dedndave on August 05, 2009, 03:00:27 PM
good question
it looks somewhat cumbersome to me
personally, i think intel, amd, and ms are trying to push something on us we don't really need
Title: Re: Any advantages to 64 bit?
Post by: mitchi on August 05, 2009, 05:09:55 PM
Right now if you have a 32 bit system with 4 gigs of ram and you bought a video card with 1 gig of VRAM to play the latest video games.
You will only have roughly <3 gigs of ram available for your Windows because the video card's memory space is inserted into your memory space and replaces your RAM.

Not to mention that on 32 bit Windows, by default, all of your user-mode apps can only use 2 gigs of ram. I think you can see that we are already limited by this, this is why we have 64 bits.
Title: Re: Any advantages to 64 bit?
Post by: Damos on August 05, 2009, 05:36:22 PM
The amount of apps that would need more than 2 gig of ram must be limited though.
Afterall we sent a man to the moon on a 8 bit computer with less than 64k.
Does the whole computer market need to have even more bloated code just for the sake of the few rare apps that need huge amounts of ram.
I would argue that 2 systems identicle in all respects exept that one used 64 bit code and one 32 bit, running conventional apps, the one with 32 bit code should run quicker, if only because more code was in the L1 cache.
I do however yearn to have another 8 registers.
Title: Re: Any advantages to 64 bit?
Post by: jj2007 on August 05, 2009, 05:55:05 PM
Quote from: mitchi on August 05, 2009, 05:09:55 PM
Not to mention that on 32 bit Windows, by default, all of your user-mode apps can only use 2 gigs of ram. I think you can see that we are already limited by this, this is why we have 64 bits.

I just checked my system, and I got only 1 (one!) gig of ram. Now I feel so terribly limited, and I am crying bitterly. I like this notebook a lot, I never had any problems, but I feel so ashamed that I will send it to some poor African school tomorrow.
Title: Re: Any advantages to 64 bit?
Post by: dedndave on August 05, 2009, 06:06:57 PM
shoooooooooooooooot
i remember when 64 Kb was "amazing"
Title: Re: Any advantages to 64 bit?
Post by: bruce1948 on August 05, 2009, 06:10:30 PM
I can remeber when a certain Bill Gates was reported to have said 64K is enough for anybody!
Title: Re: Any advantages to 64 bit?
Post by: mitchi on August 05, 2009, 06:56:45 PM
Quote from: Damos on August 05, 2009, 05:36:22 PM
The amount of apps that would need more than 2 gig of ram must be limited though.
Afterall we sent a man to the moon on a 8 bit computer with less than 64k.
Does the whole computer market need to have even more bloated code just for the sake of the few rare apps that need huge amounts of ram.
I would argue that 2 systems identicle in all respects exept that one used 64 bit code and one 32 bit, running conventional apps, the one with 32 bit code should run quicker, if only because more code was in the L1 cache.
I do however yearn to have another 8 registers.

You never have enough ram.
If you have a server app that serves videos, having lots of ram for caching is great, it saves disk I/O.
Even Windows Vista, by default, will use all free ram to cache frequently used files and applications.

Computers are not just about making calculations anymore.

Title: Re: Any advantages to 64 bit?
Post by: donkey on August 05, 2009, 06:57:23 PM
Quote from: bruce1948 on August 05, 2009, 06:10:30 PM
I can remeber when a certain Bill Gates was reported to have said 64K is enough for anybody!

It was 640K and he denies ever saying that, I tend to believe him as I have seen the quote hundreds of times but not once have I ever seen where it was made or in what context.

For myself I am making the switch to 64 bit only to be able to test some of my updates and headers, besides that I don't have any real need for it. Right now it's driving me nuts as I am starting to write a profiler for GoAsm code and have to prepare for 2 systems at once.
Title: Re: Any advantages to 64 bit?
Post by: bruce1948 on August 05, 2009, 08:44:31 PM
mea culpa should have said 640k


Try this link

http://digg.com/microsoft/1989_Bill_Gates_Talk_on_Microsoft

QuoteBill Gates discusses various topics including VGA graphics, OS/2, and software piracy. Most notably, Bill states that in 1981 he thought that 640k would last for 10 years. He then reveals that 640k was only good enough for 6 years. Is this evidence that Gates' 1981 "640k ought to be enough for anybody" quote could be true?

If he didin't actually say it would appear he said something pretty close

Bruce
Title: Re: Any advantages to 64 bit?
Post by: donkey on August 05, 2009, 09:01:05 PM
Well, I completely disbelieve that or its wildly out of context. In 1989 Windows NT351 was in development and OS/2 was out both of which need more than 640K to operate. Most PCs at the time were using LIM EMS expanded memory to be able to use spreadsheets and DB software effectively. All of the talk at the time was about convergence and multimedia both of which needed more memory than could be practically supplied at the time. Hell, the number of schemes just to manage the memory above 640K by 1989 boggles the mind. In my opinion the source is bulls**t, digg is all user supplied information so it is suspect from the start:

Quote from: DIGG overviewDigg is a place for people to discover and share content from anywhere on the web. From the biggest online destinations to the most obscure blog, Digg surfaces the best stuff as voted on by our users. You won't find editors at Digg — we're here to provide a place where people can collectively determine the value of content and we're changing the way people consume information online.
Title: Re: Any advantages to 64 bit?
Post by: hutch-- on August 06, 2009, 06:36:51 AM
64 bit is coming but its like the second coming, it will happen one day but don't hold your breath. The server end of the market both needed it and has it as does a few apps like very large databases and some graphic manipulation programs where the effective 2 gig of usable memory is not enough for very high resolution images but for ordinary hacking around the internet, typing letters, running spreadsheets and the like Win95 easily did all of that and win3.1 did most of it.

64 bit will eventually be imposed on the computer market as the vendors of both software and hardware will make it that way.

The downside is the hardware is not really there yet, to put in enough memory to make up for the 64 bit versus 32 bit usage, most boards will not take enough and the memory is expensive. The development tools are in their infancy and the hardware is changing fast. Multicore processors are making a bigger impact on the market than 64 bit processing.

Another problem is mechanical hard disk drives are not getting much faster at the moment even though they are getting bigger and this impacts on performance when you have to load much bigger files. 64 bit means often doing twice the work of 32 bit so unless you need the extra address space you will keep getting more bang for your buck in 32 bit for some time to come.
Title: Re: Any advantages to 64 bit?
Post by: ecube on August 06, 2009, 07:06:25 AM
They have SSD(solid state drives) which has no moving parts, and who's speed is absolutely incredible, they're quiet, are suppose to have a very long, longevity. Problem is they're still very expensive, and don't come in large sizes yet, when that changes watch out! I've seen a lot of improvement in some games thanks to 64bit, the frame rates looks crisper. Also compression and encryption handle alot better under 64bit,especially with time/memory tradeoff techniques, so thats exciting. If you were thinking about upgrading anything, you should consider it now as the economy hasn't fully bounced back yet and there's ALOT of deals, my favorite is newegg.com, built my entire pc from there, best shipping/return policy is the world.
Title: Re: Any advantages to 64 bit?
Post by: hutch-- on August 06, 2009, 07:34:35 AM
Yes, the new SSDs are very fast but they do not have the life of a machanical hard disk yet. When the technology is mature mechanical hard disks will be museum pieces. Less heat, much smaller and much faster, no real distinction between dynamic memory and storage once its fully developed.
Title: Re: Any advantages to 64 bit?
Post by: Slugsnack on August 06, 2009, 07:41:40 AM
it seems to me that 32 bit will become a dying race sooner rather than later. maybe not because of necessity but because of software companies forcing it this way

the most obvious sign to me is the release of server 2008 R2 which comes only in 64 bit. whether you like it or not it seems 64 bit is coming and here to stay. since i do intend a career in this field in the future, rather than avoid it and become comparable to those now still doing 16 bit coding, i'd rather embrace it early(ish) so by the time i graduate and get a job it won't be a new thing to me

so IMO it's not even about choice anymore.. if you want to keep up with the technology and industry you're going to have to be switching from 32 >> 64 AT SOME POINT, may as well make it sooner
Title: Re: Any advantages to 64 bit?
Post by: Astro on August 06, 2009, 01:39:10 PM
Hi,

Interesting discussion.

Anyone run MS FSX?

On XP 32-bit, it runs OK. Vista 64-bit, it's a bit quicker, but on Windows 7 32-bit, it runs faster than either XP or Vista!

I haven't downloaded Win 7 64-bit yet to compare, but this is with it running on the same hardware. Windows 7 is currently using my XP graphics drivers as there is a problem with the newer nVidia drivers.

I can't see how you can avoid a certain amount of memory usage, especially where graphics or video are concerned. The only real advantage I can see to 64-bit is the addressable memory.

Say NO to BLOAT.  :U :cheekygreen:  I think it's the only real way to improve things.

Best regards,
Astro.
Title: Re: Any advantages to 64 bit?
Post by: dedndave on August 06, 2009, 03:14:57 PM
64-bit architecture, by nature, propagates "bloat"
when you double the width of the archtecture, it seems you quadruple the requirement for file and memory space
that translates to needing a faster cpu to handle the enlarged data
which, in turn, translates to ms, intel, and computer mfg companies selling higher volumes of their products
i think that is what it boils down to - it has nothing to do with what the marketplace desires or requires

the problem is, they have the power to force you to upgrade
if ms stops supporting 32-bit OS's, you won't have a choice in the matter
just look how many people are still using Windows 2000 and XP
that is because they never needed vista or above, to begin with
Title: Re: Any advantages to 64 bit?
Post by: donkey on August 06, 2009, 03:59:54 PM
I agree with Dave here, we seem to be at a plateau of sorts. Back when multimedia and desktop publishing were just gleams in Steve Job's eye we needed ever faster processors with more and more memory to meet the demands of having our computers become a complete media and entertainment center. When the Internet took off we needed ever faster communications to meet the demands of ever more complex web pages. Well, my laptop is A LOT more powerful than my first Win95 PC and not even comparable to my first IBM PC (old school with 2 full height floppies), it can do everything that I want, has more than enough storage space for what I need and through my home network I can access almost 2 TB of storage. I can surf the net and download at MBs per sec, I can play full motion HD videos, the demands on my system for word processing and spreadsheets hasn't changed much in the last ten years so that's not an issue. So, what do I need upgrades for ? There is no killer "must have" application out there that pushes me towards upgrading. I do it anyway as one thing or another goes in my PCs or I want a personal laptop, forcing me to Windows Vista which I must say isn't bad but seriously, there is little in it that I use that was unavailable in Win2K and certainly nothing I would miss.

My question is what killer application do you think will make the upgrade a must have and put a bump in this plateau ?
Title: Re: Any advantages to 64 bit?
Post by: dedndave on August 06, 2009, 06:30:53 PM
that's just it - unless you are doing some high-powered CAD, animation (disney employees ?) or something, you don't need it
what is likely to happen is ms will stop supporting all 32-bit OS's in order to force the issue
at that point, they may find out whether the market will sway, or go another way
we all may be using linux or some other alternative in 10 years - lol
it will be a great time for a new competitor to come along and possibly knock ms off it's stool
Title: Re: Any advantages to 64 bit?
Post by: bruce1948 on August 06, 2009, 07:45:44 PM
A comment I found on Donald Knuth's web pages:-


QuoteA Flame About 64-bit Pointers
It is absolutely idiotic to have 64-bit pointers when I compile a program that uses less than 4 gigabytes of RAM. When such pointer values appear inside a struct, they not only waste half the memory, they effectively throw away half of the cache.

The gcc manpage advertises an option "-mlong32" that sounds like what I want. Namely, I think it would compile code for my x86-64 architecture, taking advantage of the extra registers etc., but it would also know that my program is going to live inside a 32-bit virtual address space.

Unfortunately, the -mlong32 option was introduced only for MIPS computers, years ago. Nobody has yet adopted such conventions for today's most popular architecture. Probably that happens because programs compiled with this convention will need to be loaded with a special version of libc.

Please, somebody, make that possible.

Title: Re: Any advantages to 64 bit?
Post by: Rockoon on August 09, 2009, 01:43:55 PM

Modern high performance SSD's lifetimes are equivilent to that of mechanical HD's. Failure is gracefull (readable, but not writable) as well.

They have 10,000 or more write cycles, which means that even high throughput usages will take a very long time to kill the drive.

Lets take one of the raved-about high performance drives, the 120GB OCZ Vertex, with a sustained write of 100MB/sec.

120GB * 10,000 write cycles = max 1,200,000GB of writes. Thats 1,200 terabytes.

1,200,000GB / 100MB/sec = 12,000,000 seconds of 100% write activite to kill the drive (thats over 138 days of constant writing)

Now, one might argue that its then possible to kill the drive in 138 days.. and thats true.. but would a mechanical HD survive as long under those same conditions? The answer is almost certainly that no, it wouldn't.

For the average user, these new SSD's will last a decade or more.


The main arguing point against the modern SSD's is that of write verification, making them unsuitable for some enterprise scenarios. On an enterprise-class mechanical raid array if the drive reports that something was written, then it was. Power can be lost after the write confirmation, knowing full well that the data is stored. On an SSD raid array that is not the case. The modern high performance SSD's require write caches to achieve that performance, and if power is lost soon after write confirmation then the fate of that data is unknown. The solution to this problem (read after write) tanks their write performance back down to below that of machanical drives.

SSD's are greate for home/desktop/laptop users, and are well suited to enterprise environments with UPS's on their data arrays, as well as WORM (Write Once, Read Many) scenarios, but are not well suited to enterprise environments without UPS's.

The general gist of what I am saying is that if you arent managing a raid array for redundancy purposes, and are also not performing constant 100% writing, then there is no reason not to consider SSD's. They will last a very long time, probably a lot longer than most of your current machanical drives. If you need more capacity than SSD's offer, thats another thing entirely.
Title: Re: Any advantages to 64 bit?
Post by: ecube on August 09, 2009, 02:11:52 PM
rockoon but ssd are still very expensive and don't come in very large sizes, when prices comes down atleast they'll be lot better id imagine.
Title: Re: Any advantages to 64 bit?
Post by: Astro on August 09, 2009, 10:36:43 PM
I haven't found one app that required a 64-bit OS for anything. In the case of FSX, it is bloat-ware of another kind, but its very own 32-bit limitation makes running it on a 64-bit OS useless.

I'm not convinced about SSDs yet, although interesting comment on writes failing but maintaining read capability.

Best regards,
Astro.
Title: Re: Any advantages to 64 bit?
Post by: dedndave on August 09, 2009, 11:31:22 PM
the price will drop
i think ssd's are up and coming and have a definite place in the industry
actually, it wouldn't be too difficult to replace the flash chip and renew a "worn out" ssd
you may be able to turn used ones in for credit - lol - like pop bottles   :bg
better yet, if the flash chip was on a replacable "cartridge", just toss it out like a bic lighter and replace it
oddly, i have heard that it is critical to partition them on sector boundries (for some strange reason)
it makes a huge difference in speed - i can only guess this has more to do with the driver than the flash memory
Title: Re: Any advantages to 64 bit?
Post by: Astro on August 10, 2009, 03:21:07 PM
Quoteoddly, i have heard that it is critical to partition them on sector boundries (for some strange reason)
it makes a huge difference in speed - i can only guess this has more to do with the driver than the flash memory
I heard this too but never looked into it.

Best regards,
Astro.
Title: Re: Any advantages to 64 bit?
Post by: Alloy on August 11, 2009, 03:29:41 AM
One advantage I found of 64 bit is an old fashioned ramdisk. On older computers they keep commonly used executables safe from reboots and speed up their loading. I tried running virtual machines off ramdisks and think the windows caching stole most of the benefit of them. Too bad they aren't bookable. Maybe one of those multibooters like http://www.expresshd.com/p135/EFi-X-USB-V1/product_info.html can solve that.

   Superspeed claims that 32 bit vista can access more than 4GB with its ramdisk. http://www.superspeed.com/desktop/ramdisk.php

Title: Re: Any advantages to 64 bit?
Post by: Rockoon on August 11, 2009, 02:13:53 PM
I do not think that Knuth was talking specifically about any particular 64-bit architecture. I think that x86-64 has a lot to offer, but Knuths arguement is only towards some fractional increases in cache contention. x86-64 has about 4 times as much general purpose register space. Seriously.

I admire and respect Knuth greatly, but structures with pointers in them imply frequent cache misses by their very nature. I think that worrying about data density in this case is unreasonable, since in practice you miss the cache nearly every time you follow an arbitrary pointer (whats it doing in the cache when you didnt even have a pointer to it?)

Title: Re: Any advantages to 64 bit?
Post by: GregL on August 11, 2009, 08:33:31 PM
Advantages or not, everything (hardware, operating systems and software) is in the process of moving to it.

Title: Re: Any advantages to 64 bit?
Post by: dedndave on August 11, 2009, 10:04:56 PM
it is Greg, but only because we are being forced to move
they have hit a plateu in terms of making newer, better, faster machines
current technology won't allow much more reduction in size, thus, they are stuck around 3.3 GHz
they have used up all the tricks such as bus compression, out of order execution, caching, etc
even the number of cores in a machine - i bet if you get more than, say 4 to 16 cores (somewhere in that range),
the advantage levels off due to the overhead of managing threads and cores
so, what's left to play with ? - width - and that is why we are messing with 64-bit machines (that are also beyond a plateu)
i would say if you have 4 good cores (not P4's - lol) running at 3.2 GHz, 32-bits wide,
you are running at what i would consider an optimal level of performance
that level may change in the future, but not rapidly
ms, intel, amd make their bread and butter from growth - they are trying to keep the momentum rolling, is all
Title: Re: Any advantages to 64 bit?
Post by: MichaelW on August 12, 2009, 12:40:12 AM
I suspect that Intel and AMD could actually make much higher clock speeds work, but they are more or less cooperating now, releasing advances at a slower, and more profitable, pace.
Title: Re: Any advantages to 64 bit?
Post by: dedndave on August 12, 2009, 01:01:42 AM
i dunno Michael
honestly, i am surprised to see 3.2 GHz
having done some work with microwave circuits, i know how hard that must be
but, you never know - i am pretty sure that obtainable frequency is limited by feature spacing on a die
according to wikipedia, 11 nm technology should be here by 2022
http://en.wikipedia.org/wiki/11_nanometer
if i am still young enough to become surprised, i will be surprised to see cpu's over 10 GHz - lol
the highest frequency radio circuits i have worked with was ~100 GHz
we can't really make stable oscillators much above that (120 GHz maybe)
i think visible light is about 30,000 GHz (30 terahertz)
Title: Re: Any advantages to 64 bit?
Post by: Strobe Raver on August 12, 2009, 01:07:29 AM
A pointer would be not 4 bytes but 8. :eek
Title: Re: Any advantages to 64 bit?
Post by: NPNW on August 12, 2009, 03:43:57 AM
Dave,

I'm sure that they will come up with some need for something. That is what marketing is for. I think right now we don't see the next great app, or need for faster processors. Yet, there is always room for improvement. It may just require a tweaking of a concept that will make the next great application a necessity.  I personally don't see the need for the new phones, with video, text, MP3, etc. Yet a lot of people are lost if they are not connected. This is also probably because we are getting old. I would say the opportunity is out there, it just hasn't been found or implemented yet.


I mean look at google? TEXT? Who would have thought. GUI, GUI, GUI!
Yet, Text has dominated the internet search market.

It may be something old made useful into something new.
Assembly Language?

NPNW
Title: Re: Any advantages to 64 bit?
Post by: dedndave on August 12, 2009, 03:49:30 AM
you are probably right
i am just too old - lol
i have xp and xp mce
i have collected all the KB's, SP's, and installable programs i need
as long as the internet still works more or less the same way, i am good with my 32-bit stuff
on the bright side, you will be able to get 32-bit machines for $10 at a garage sale - lol
Title: Re: Any advantages to 64 bit?
Post by: NPNW on August 12, 2009, 04:12:01 AM
Someone made the point that the SSD worked better on a boundary. This could be the driver synchronizing with the Hard Drive, Memory access , Cache, and Address lines on the motherboard, or processor. There could be a number of different factors that would go into optimization of the hardware to increase throughput of the drive's.
If They don't it may require twice as many fetches to retrieve the data, or get it out of synch and that would slow down the performance.

Just my thoughts on the subject.
Would have to look at the hardware specs to determine things.

NPNW
Title: Re: Any advantages to 64 bit?
Post by: NPNW on August 12, 2009, 04:21:33 AM
Dave,

I can see the need for scientific, business, government to always need more powerful processors, but the average user?
I think your right, the 32 bit machine is enough to do what we want. I mean what what would we do if you have your gps, phone, internet, voice recognition, all on your glasses with holographic technology? That would be a legitimate need of more power, but at what cost?
Right now, can Intel and them build a processor with those capabilities at the price point to fill that application.

The IPOD? Not a killer app, but a killer hardware product. At least for Apple so far. The XBOX, PS3, PS2, Game Cube, Wii. All good hardware designs.
Software usually lags behind hardware, we have to have a fundamental shift in hardware before we will see a change in software. Right now there have been relatively no changes in hardware from the Intel 4004 machine. Other than speed, memory requirements. The fundamental pinnings have been the same.

Now HP invented an analog computer chip, that may open up possibilities. However, we are still stuck with Integrated Circuits. There has not been a quantum leap in technology for the computer in 60 years? Transistors? Instead of Vacum tubes?  That was the last great leap. We have improved the design, but not really changed it.
Faster, Faster, more Memory, more Cache, more storage.

No, till we see a basic fundamental change, we will be stuck with what we have, just tweaked differently.

NPNW
Title: Re: Any advantages to 64 bit?
Post by: jj2007 on August 12, 2009, 06:49:20 AM
For 99.9% of the market's needs, 32-bit is sufficient. And yet, marketing driven by a coalition of M$ and PC manufacturers will force 64-bit down our throat. The weak point are ignorant consumers, in particular gamers - they will believe what they are told, and buy the hardware.

On the other hand, I don't believe that 32-bit will be obsolete soon. Remember Win 3.1? That was a century ago, looked awkward, was horribly slow and insufficient. And yet, XP, Vista and I guess also Win7 still flawlessly run Win 3.1 16-bit applications. They might be a little bit slower, but the look and feel is almost the same. And as long as nobody trashes BlOutlook in spite of the fact that a simple message box takes up to three seconds (!) to be shown, I can't believe that speed is really that important.

What does count, though, is the fact that numerous small, medium and big businesses have legacy apps. And don't forget public administration - they cry foul very quickly if a pet app ceases to work. This is the true reason why 16-bit still works, a century after its official disappearance.

Add to that the observation that the introduction of 32-bit was a quantum leap, compared to 16-bit. Win32 is so much faster and easier. Win64 is not: It bloats code without any significant benefit.

In short: Win64 will come, for marketing reasons only, but Win32 will not disappear. I expect a long peaceful coexistence...
Title: Re: Any advantages to 64 bit?
Post by: sinsi on August 12, 2009, 07:01:07 AM
Games, games, games. They gobble up our puny 2GB address space. Sheesh, there are video card setups with 8GB of RAM.

>quantum leap
When you think about it, a quantum is the smallest -> quantum leap -> tiny step  :lol
Title: Re: Any advantages to 64 bit?
Post by: jj2007 on August 12, 2009, 07:10:48 AM
Quote from: sinsi on August 12, 2009, 07:01:07 AM
When you think about it, a quantum is the smallest -> quantum leap -> tiny step  :lol

That does not correspond to the normal usage of the word, but you hit the nail on the head :U