Multithreading done right
-
I have been working on this or at least trying to. I have not got anything useful going but I intend to keep hacking away. I see this as being a more robust solution (maybe - if it works)
I was thinking about placing the other FLserver process on a completely seperate computer (or virtual computer) to avoid any possibility of resource contention. The char databases are synchronised as players move between systems. I’ve traced some of the directplay functions and started to hack out the message passing but not to the point that anything works…
-
I have been working on this or at least trying to. I have not got anything useful going but I intend to keep hacking away. I see this as being a more robust solution (maybe - if it works)
I was thinking about placing the other FLserver process on a completely seperate computer (or virtual computer) to avoid any possibility of resource contention. The char databases are synchronised as players move between systems. I’ve traced some of the directplay functions and started to hack out the message passing but not to the point that anything works…
hehe
Nice to see Im not the only one being crazy
-
sounds really crazy… and are you sure you will get this working? You need a kind of InterProcessCommunication to seperate the directplay messages from the others to share the load… Without having any information of the messages this sounds pretty hard…
hence would be nice if it turns out to work - much luck with it.
-
sounds really crazy… and are you sure you will get this working? You need a kind of InterProcessCommunication to seperate the directplay messages from the others to share the load… Without having any information of the messages this sounds pretty hard…
hence would be nice if it turns out to work - much luck with it.
The interprocess communication is actually indeed my biggest problem right now…
I think Im settling for Remote Procedure Calls… all the other techniques are somewhat lame
-
You can still run FLHook just fine on multicore CPUs, you just won’t take advantage of the multiple cores as much.
-
Just a heads up: I thought a lot about this and I came to the conclusion that its not really worth the effort, since this really is a pretty large undertaking, especially when taking into account FLHook features (like the socket interface) and so on.
So, consider this dead on my end
-
Well, the idea of syncing two FLserver processes to allow multithreading will surely help hosting big servers but how about pushing it further.
Syncing player databases and linking the server processes could allow for inter server flights, that would be a great thing in my opinion.
-
Whether if sense for start FLServer in ESXi or Hyper-V with creation of one virtual machine with one vCPU and one core to use all physical CPU cores of virtual hosting platform?
I saw this idea somewhere on the Internet.
-
: )
-
What about now?
Or do you require the use of hubble =P
-
gibby, just do it. your browser will display it in original resolution, this is quite readable. here it is
-
So, I’m at a little loss as I don’t know what this image means. Can someone explain it to me?
-
Sushi wrote:
So, I’m at a little loss as I don’t know what this image means. Can someone explain it to me?Join the club…
Maybe it should have a comparison to single core and Dual core =]
-
Thx CheeseOnToast!
OK.
As we all know, there is many Virtualization Techniques.
None of them is better or worse - it all depends on the specific problem.
So our problem is Multithreading under MS Windows for legacy application at x86 platform.
From my own experience I know that Linux/Windows Guest oses works fine in ESXi or vSphere with perfomance near native - RAM and Storage are bottlenecks.
Fixes - more RAM, Hardware Raid with more Cach Memory, storage with RAID 10, ect : ) )I did choosed ESXi 3.5 because my servers spec somewhere at http://www.vm-help.com/esx/esx3.5/Whiteboxes_SATA_Controllers_for_ESX_3.5_3i.htm:
- CPU with VT technology, Intel Pro/100 Ethernet card and Silicon Image 3512 based Storage Controller.
For example guest machine has 2 vCpu, but sitting on 4 cores:
Btw there is availability for expiriensed admins to make 1 vCPU but with two vCores