I agree with the furry trader, simply recompiling for 64bit rarely ever improves performance.
In fact, more often than not, the initial performance will be worse.
The codebase has to be refactored and optimized for 64bit in order to gain anything.
I do this sort of stuff for a living, i'm currently working on a 64bit implementation of an enterprise level app that uses 75+ GB of ram at runtime.
Whilhelmina wrote: »Rest assured, it isn't working any more on 32 bit clients.
Whilhelmina wrote: »Rest assured, it isn't working any more on 32 bit clients.
I agree with the furry trader, simply recompiling for 64bit rarely ever improves performance.
In fact, more often than not, the initial performance will be worse.
The codebase has to be refactored and optimized for 64bit in order to gain anything.
I do this sort of stuff for a living, i'm currently working on a 64bit implementation of an enterprise level app that uses 75+ GB of ram at runtime.
There are many kinds of performance. The 32-bit client fails when performance is needed most in ESO, in Cyrodiil. ESO runs out of resources in crowded battles in Cyrodiil. It is obvious that 1.5GB is not enough to run ESO in Cyrodiil. Lets compare 2 pc games developed at about the same time. Both are focused on massive or large scale pvp. First the platform is
Windows 7 x64
16 GB DDR3 2400 RAM
i7 4790k 4.8 GHz turbo-boost
Corsair H80i Liquid Cooler
Corsair AX 860i power supply
Asus Maximus VII Hero Motherboard
2x MSI GTX 970 Gaming 4G SLI
Samsung 1TB 840 Evo SSD
Asus 27" 1080p monitor
Games compared:
PlanetSide 2
Planetside2_x64.exe
Hundreds if not thousands of players on both sides
High Graphics Settings
40-110 fps
100 Threads
3-4+ GB memory used by the game
Game always remains playable no matter how big the battle, little or no perceptible lag.
Load times when zoning or respawning are about 2-5 seconds
Eso
Eso.exe*32
Hundreds of players on both sides
High Graphics settings
15-100 fps
40 threads
1.5 GB - 2GB memory used by the game
Load times when zoning or respawning are 15 - 60 seconds
Game is playable part of the time until the game client just runs out of resources at which point, the game becomes unplayable. Abilities stop working, the screen stops updating. Players often die without knowing what hit them.
Similar games in terms of resource and processing requirements. PS2 stays playable at all times, no matter how big the battle or how many characters are on screen or what they are doing. ESO frequently becomes unplayable. To make matters worse in ESO, players use tactics designed to cause opposing players clients to run out of resources and stop responding. PS2 uses twice as much memory, creates over twice as many threads and has much higher minimum frame rates than ESO.
This proves this statement:
"On a 64-bit OS, the 64-bit client of WoW rarely uses more than 2.5 GB of memory, while running on a machine w/ 32 GB of physical RAM and usually more than 17 GB of it free, i.e. not even including the disk cache."
false.
This statement is true:
"simply recompiling for 64bit rarely ever improves performance."
Ya think? Of course ESO should be optimized for x64. Now make it happen Zenimax. End client freeze up in Cyrodiil. Give us an optimized x64 client ASAP.
1: planetside2 is a fps. I didn't know the game, but looked it up, appearance between players is not a lot different and it looks like everyone looks the same. For a FPS that is no problem. for a role playing game it is.
> This statement is false. PS2 has a LOT of character customization.
3: you haven't given any solid facts bout why it would be better.
Yep my game freezes up at 1.784 gigs 1 time per day.
Wish it wouldn't.
Win 8.1, 64bit.
Your assumptions about the processing demands of PS2 are false. PS2 is an MMO-FPS with many MMO features such as character and vehicle customization. If anything, PS2 is a more demanding MMO than ESO.
You don't seem to understand what happens when a 32-bit app runs out of memory. It usually pages to disk, often a very slow disk. this results in something called thrashing. Thrashing wastes CPU cycles.
Lets not over-complicate or over-think this. System resources are limited for x86 apps, period. As one poster said:
We have all seen this happen. On an x64 OS with 8 GB + of RAM, this will not happen unless there is a memory leak. Lets stop the b.s.. We all know that x64 with 8 GB+ RAM is better for a game like ESO with large-scale PvP and PvE. Stop crippling our gaming PCs by limiting ESO to 2GB RAM ZoS. The next update should include an x64 client. You have already built at least one x64 client for the console.
Why is the PC version of ESO still an x86 client?
I just going to refer to my initial post and ask you to read it. Just saying that I'm wrong, without putting anything against it, is wrong. You clearly don't have any clue what you are talking bout. You have proven that when you started to claim that 32 bits programs out of memory switched to disk cache. that one is hilarious ridicilious.making a 64 bits client is a total waste of resources, please stop your witch hunt and stop making a fool of yourself! It is not going to happen and if it will I'll stop paying any money to ZOS cause of the way they waste it!
The amount of data storage reserved for a process is only limited by the amount of space that the operating system can get on the disk. (*)
This is the key point: the data storage that we call “process memory” is in my opinion best visualized as a massive file on disk.
So, suppose the 32 bit process requires huge amounts of storage, and it asks for storage many times. Perhaps it requires a total of 5 GB of storage. The operating system finds enough disk space for 5GB in files and tells the process that sure, the storage is available. How does the process then write to that storage? The process only has 32 bit pointers, but uniquely identifying every byte in 5GB worth of storage would require at least 33 bits.
The process can deal with this situation by attempting to identify portions of the virtual address space that no longer need to be mapped, “unmap” them, and then map them to some other pages in the storage file. If the 32 bit process is designed to handle massive multi-GB data storages, obviously that’s what its got to do. Typically such programs are doing video processing or some such thing, and can safely and easily re-map big chunks of the address space to some other part of the “memory file”.
I haven’t yet mentioned RAM. RAM can be seen as merely a performance optimization. Accessing data in RAM, where the information is stored in electric fields that propagate at close to the speed of light is much faster than accessing data on disk, where information is stored in enormous, heavy ferrous metal molecules that move at close to the speed of my Miata. (**)
And of course, many of these problems effectively go away on 64 bit Windows, where the address space is billions of times larger and therefore much harder to fragment. (The problem of thrashing of course still occurs if physical memory is smaller than total working set, no matter how big the address space gets.)
Eric Lippert is a principal developer on the C# compiler team.
Well, as a Windows developer your're surely aware that extended support for Windows 7 ends on 14/1/2020, and for Windows 8.1 it'll end on 1/10/2023. So that's 8 years until the last 32-bit OS is faded out. So there's no need for a sence of urgency whatsoever, because ESO as a 32-bit process will run just as fine on 64-bit Windows 8.2 10 as it did on its 64-bit predecessors. And given the recent track record of adaption rates of newer Windows versions, we'll see a significant installed base of Windows 7 right up to 2020.I think that it is safe to say that ZoS is working on an x64 ESO client for windows especially considering that Windows 10 which will be released in 19 days on July 29 will be 64-bit only.
http://techera.co.in/tag/windows-10-64-bit-only/
I hope this gives the Zos devs a sense of urgency about releasing an x64 client.
KhajitFurTrader wrote: »Well, as a Windows developer your're surely aware that extended support for Windows 7 ends on 14/1/2020, and for Windows 8.1 it'll end on 1/10/2023. So that's 8 years until the last 32-bit OS is faded out. So there's no need for a sence of urgency whatsoever, because ESO as a 32-bit process will run just as fine on 64-bit Windows 8.2 10 as it did on its 64-bit predecessors. And given the recent track record of adaption rates of newer Windows versions, we'll see a significant installed base of Windows 7 right up to 2020.
And frankly, I don't buy into the FUD you're trying to spread here, and that blog post you've quoted has some issues. Files on a disk are addressed as clusters, not as singular bytes, and any process, be it 32 or 64 bit, can read, write, and seek any file of any size that NTFS allows (16 ExaBytes - 1 KB on Windows 7, even more on W8). Because it disregards such a simple truth in order to make a point, the whole point is moot.
Leave the number of threads out of the discussion, please. It has no relevance to memory use or performance. At any given point in time, most of these threads are asleep (your CPU can run 1-2 on each core). Moreover, thread context switches are expensive, so using fewer threads may be advantageous.Its simple math really, 1.5 GB of memory and 40 threads just is not a sufficient amount of memory
Historically it's been VRAM, as in Video-RAM. Nowadays I'd rather stick to GPU memory, as it's tied to the GPU, so it's clear what you mean.This is not a RAM-limitation, but a GRAM limitation (not sure if GRAM is an official term, I made it up, but it is the graphical RAM, also known as the RAM that comes with the GPU).
That's not what he was saying. I believe he was trying to convey to you that if a 32-bit program on a 64-bit system with plenty of available RAM says it ran out of memory, it means it ran out of address space. No amount of swapping can increase the amount of memory you're able to address. You clearly understand that, but most of your extensive explanatory post seems out of place in context of ESO. Or any game actually.Ok so what you are saying is that when an x86 app runs out of memory, it doesn't page to virtual memory or disk and that I have no idea what I am talking about?
This describes the scenario that ESO is running under.
ESO doesn't need larger address space. It needs to stop leaking memory.
FYI, ESO uses the Hero engine. Anyone remember world pvp on the Hero engine in SWTOR?
KhajitFurTrader wrote: »
This particular rumor has been debunked a long time ago: http://www.gameinformer.com/b/features/archive/2012/05/25/why-the-elder-scrolls-online-isn-39-t-using-heroengine.aspx
The gist of it: the Hero engine has been used for prototyping until the internally developed engine had been advanced enough to take over.
Its not a rumor. Its a fact. I just reinstalled ESO from the download client from the eso website and there was a Hero Engine splash screen with bright blue, bold letters the first time I started the game. If you have a problem with that, take it up with the ZoS devs.
TL;DR Saying ESO should be compiled in 64-bit because it's faster then is like saying that Windows 10 should be named Windows 12 because then it's more advanced.
I just want to summarize it.
TL;DR Saying ESO should be compiled in 64-bit because it's faster then is like saying that Windows 10 should be named Windows 12 because then it's more advanced.