These forums have been archived and are now read-only.

The new forums are live and can be found at https://forums.eveonline.com/

Player Features and Ideas Discussion

 
  • Topic is locked indefinitely.
 

Make multiple clients share the same memory used for static resources

Author
Pharago
Nughat Corp
#1 - 2011-10-08 05:17:43 UTC
The title implies something that is not easy to do in windows by design, memory is protected from external access and while it is not really imposible, this is NOT what this post is about.

The idea is to make the EVE clients single instanced and to make changes to the code that would allow for multiple client windows/connections all spawned from the same and only EVE client process.

This way all client connections/characters will share the same memory space, resources will be loaded only once, and it will allow to have many more EVE accounts logged on at the same time on the same computer.

What do you think?


Regards.
leviticus ander
The Scope
Gallente Federation
#2 - 2011-10-08 09:11:29 UTC
Pharago wrote:
The title implies something that is not easy to do in windows by design, memory is protected from external access and while it is not really imposible, this is NOT what this post is about.

The idea is to make the EVE clients single instanced and to make changes to the code that would allow for multiple client windows/connections all spawned from the same and only EVE client process.

This way all client connections/characters will share the same memory space, resources will be loaded only once, and it will allow to have many more EVE accounts logged on at the same time on the same computer.

What do you think?


Regards.


would be cool, and would help the low power players (computer wise) to continue playing their 2+ characters. but the UAC would have a heart attack when you tried to do that. or at least I think it's UAC that covers memory access control. either way, this would be quite possibly impossible or at least beyond what is sane to do just to support underpowered computers.
Pharago
Nughat Corp
#3 - 2011-10-08 15:11:58 UTC
leviticus ander wrote:

would be cool, and would help the low power players (computer wise) to continue playing their 2+ characters. but the UAC would have a heart attack when you tried to do that. or at least I think it's UAC that covers memory access control. either way, this would be quite possibly impossible or at least beyond what is sane to do just to support underpowered computers.


It would be easy, there is a way to know if another instance of a program is already running when trying to start a new one.

When that happens, the EVE client starts a new thread that acts as if the program was started again, i think that as long as you don't write to memory you dont need to even consider using semafores or mutexes.

A new starting thread would create a new client window, initialize directx, present the login screen, connect to the server etc, the difference would be that every thing is already loaded in memory.
Goose99
#4 - 2011-10-08 15:14:25 UTC
Instead of implementing possibly game breaking fundamental changes, you can just buy more memory. $15 per gb.
Pharago
Nughat Corp
#5 - 2011-10-08 15:18:53 UTC
Goose99 wrote:
Instead of implementing possibly game breaking fundamental changes, you can just buy more memory. $15 per gb.


what's wrong with your face?
Goose99
#6 - 2011-10-08 15:23:40 UTC
Pharago wrote:
Goose99 wrote:
Instead of implementing possibly game breaking fundamental changes, you can just buy more memory. $15 per gb.


what's wrong with your face?


U mad bro?Cool
Raw Matters
KRAUTZ IN SPACE
Parallaxis Alliance
#7 - 2011-10-10 09:52:35 UTC
- Reworking the entire client and implement a very complex feature: 837.423$ for CCP
- Telling you to buy more RAM: 15$ for you

Guess what's going to happen. ;)
Sir Substance
Sebiestor Tribe
Minmatar Republic
#8 - 2011-10-10 10:30:35 UTC
Don't forget that the client also needs to write to memory. By having two clients share the same memory, you are just begging for deadlocks.

I understand where you are coming from bro, but the development of such a system would be expensive for CCP, and since ram today is almost free, I see little point. If you are trying to run eve on a tiny netbook with 512mb of ram, I sympathise, but you know its an unreasonable ask.

The beatings will continue until posting improves. -Magnus Cortex

Official Eve Online changelist: Togglable PvP. - Jordanna Bauer

Pharago
Nughat Corp
#9 - 2011-10-10 11:18:33 UTC
Sir Substance wrote:
Don't forget that the client also needs to write to memory. By having two clients share the same memory, you are just begging for deadlocks.

I understand where you are coming from bro, but the development of such a system would be expensive for CCP, and since ram today is almost free, I see little point. If you are trying to run eve on a tiny netbook with 512mb of ram, I sympathise, but you know its an unreasonable ask.


memory structures that are not static as in the actual logged character's memory dont need to be shared bettween different connections, so NO deadlock possible

second, this is NOT a big change, any CCP dev with the knowledge of the client's starting sequence would be able to tell wich functions should be feed to the starting threads and wich should be made reentrant or thread safe

I know ram is cheap nowadays, but there would be gains in performance on the clients because resource loading would be done once for all active clients, the more active clients the bigger the gain

and then there is the question of the video card, most people have only one, so resources have to be uploaded to it each time they have to be rendered

this would be a minimal structural change, not the stuff you and the other posters try to imply