Posts Tagged ‘AMD’

h1

64-bit Ready or Not

September 25, 2007

Vista busy cursor The processors in most modern computers can run 64-bit operating systems but very few PC users actually install something like say Vista 64-bit.

It’s not surprising really. There is no real benefit over 32-bit for the vast majority of purposes and, as things stand today, 64-bit computing is plagued with compatibility problems. Currently, you are only really obliged to go to 64-bit if you are doing something that needs vast amounts of RAM (maybe some graphics or video applications), and would be constrained by the fact that the maximum RAM addressable under 32-bit computing is less than 4Gb.

The 64-bit versions of Vista are reckoned to be more secure than their bit-challenged stablemates. This is true. Microsoft have continued their policy of keeping their bread and butter versions of Windows reasonably backwards compatible (although many Vista users might disagree) and that means 32-bit Vista has inherited many security compromises from its long line of predecessors. Not so 64-bit. Microsoft feel less behoven to worry about backwards compatibility with an OS which remains the province of that small minority who can’t run their over the top video applications without mountains of RAM. 64-bit Vista is far more stringent in its certificate checking than 32-bit Vista, and that is enough to break a lot of applications.

At some point, though, sticking with 32-bit will no longer be an option. Remember how Windows XP was happy as a pig in a poke with 128Mb of RAM? But now even 32-bit Vista Home Premium needs at the very least 1Gb of RAM, and for best results you would do better with 2Gb or 3Gb. What about the next incarnation of Windows, codenamed Vienna, due out in only around two years from now? Might not the RAM requirements have gone up again substantially? It would typical of Microsoft to pile on the features with new software, with corresponding resource demands beyond the capabilities of the typical PC of the day, then wait for the hardware to catch up. That’s what has happened with Vista (apart from the features). But next time around the cycle, when you need more than 4Gb even for everyday applications, you really will no longer be able to put off going to 64-bit.

If the divide in application compatibility between 32-bit and 64-bit versions of Windows is still present at that time, well the transition could be a very painful one.

There is a need to think and plan ahead, and I shall be exploring this broad topic in more detail in coming posts.

AddThis Social Bookmark Button

Advertisements
h1

Do Microsoft Game Studios not trust the Windows API?

August 22, 2007

Vista busy cursor Microsoft Game StudiosCombat Flight Simulator 3 (CFS3) does not in general run properly on dual core computers running XP or Vista. The reason appears to be that the code by-passes the functionality in the Windows Application Programming Interface (API) for sharing out processing tasks between CPUs. In my case it was a little known AMD utility that saved the day.

microsoft combat flight simulator de havilland mosquito

I came across the problem because I have just installed a new graphics card on my AMD based system. It’s an MSI 8600GTS (for PCI-E) and replaces the on-board GeForce 6150 chip. The latter was enough to run Vista Aero but nothing to shout about, and it commandeered part of the RAM for video duty. I now have a mid-range factory-overclocked DirectX 10 capable card and my usable RAM is up to a full 1Gb.

I have little time for gaming, but my son Jonny had recently bought CFS3 so I thought I’d give the new card a whirl up in the skies over 1940’s Europe. I’d have asked Jonny to give it a try but he is away in London for a few days.

He had warned me that he’d encountered a problem with a jittery display caused by a conflict between the two processors in our dual-core system, but found a work-around. He hadn’t gone into detail but I knew it had something to do with ensuring the application ran in just one of the processors.

Sure enough, I ran the game on XP with the new MSI card installed and the graphics were intolerably jerky. Googling turned up an answer. This looked like the solution Jonny had mentioned. I followed the instructions and set the CPU affinity so that CFS3 was running on just one of the 2 CPUs. As promised this cured the problem, except that I found you had to keep doing this every time you ran the program. Not acceptable; there had to be a better answer.

Further down the same thread I saw mention of the AMD Dual-Core Optimizer. I installed it and the jitters vanished.

But if you look at what AMD’s utility does …

“The AMD Dual-Core Optimizer can help improve some PC gaming video performance by compensating for those applications that bypass the Windows API for timing by directly using the RDTSC (Read Time Stamp Counter) instruction. Applications that rely on RDTSC do not benefit from the logic in the operating system to properly account for the affect (sic) of power management mechanisms on the rate at which a processor core’s Time Stamp Counter (TSC) is incremented. The AMD Dual-Core Optimizer helps to correct the resulting video performance effects or other incorrect timing effects that these applications may experience on dual-core processor systems, by periodically adjusting the core time-stamp-counters, so that they are synchronized.”

I can only conclude that CFS3 was getting into a tangle because it eschews the facility built into Windows to synchronise the CPUs, tries to go it alone and messes it up because it fails to allow for power-management related effects (presumably this refers to Windows’ own power management).

So what’s going on here? Two divisions of Microsoft that don’t talk to each other? Don’t understand each other’s code? Don’t trust each other’s code?

I can understand that Microsoft Game Studios might believe that direct reading of the CPU time-stamps might avoid some kind of performance overhead. OK, that could be important in a computer game. But did they not test this properly? Why no liaison with the OS division?

Incidentally I found CFS3 equally unreliable in Vista. No jitters this time, it just plain crashed (no pun intended). Again, the AMD Dual-Core Optimizer came to the rescue.

Share this post :
%d bloggers like this: