Possible 2GB limit workaround?

About Truespace Archives

These pages are a copy of the official truespace forums prior to their removal somewhere around 2011.

They are retained here for archive purposes only.

Possible 2GB limit workaround? // Feature suggestions

1  |  

Post by Alien // Aug 10, 2006, 10:45am

Alien
Total Posts: 1231
pic
I've been giving some thought to the whole 2GB memory limit thing. I know with some types of software/code, if you want to use it on a different platform/OS all you have to do is recompile it, but I suspect porting tS to 64bit wouldn't be so easy. In which case, I have an idea for a workaround. I'm not sure of its feasibility, but thought I'd post it anyway incase it gives the Devs any ideas.


When running in 32bit mode in XP64, each process is limited to 2GB, right? So what if the render engine was launched as a seperate process [by tS - would still look & function same way as it does now, from the user's perspective], that way the renderer would get the whole 2GB to itself [assuming system has sufficient RAM installed], instead of only getting 2GB minus whatever the rest of tS is using.


Like I said, I don't know how feasible this - there's probably a whole bunch of reasons why it wouldn't work, but I thought I'd mention it just in case. :)

Post by tomasb // Aug 10, 2006, 1:05pm

tomasb
Total Posts: 261
I've been giving some thought to the whole 2GB memory limit thing. I know with some types of software/code, if you want to use it on a different platform/OS all you have to do is recompile it, but I suspect porting tS to 64bit wouldn't be so easy. In which case, I have an idea for a workaround. I'm not sure of its feasibility, but thought I'd post it anyway incase it gives the Devs any ideas.


When running in 32bit mode in XP64, each process is limited to 2GB, right? So what if the render engine was launched as a seperate process [by tS - would still look & function same way as it does now, from the user's perspective], that way the renderer would get the whole 2GB to itself [assuming system has sufficient RAM installed], instead of only getting 2GB minus whatever the rest of tS is using.


Like I said, I don't know how feasible this - there's probably a whole bunch of reasons why it wouldn't work, but I thought I'd mention it just in case. :)


New code is 64bit ready; but unfortunately you cannot mix 32bit and 64bit. so once old modeler is away, no problems with 2gb barrier.

Post by frootee // Aug 10, 2006, 4:13pm

frootee
Total Posts: 2667
pic
question tomas:

is the Player code in ts 7 64 bit? The reason I am asking is,
if the modeler and player are separate programs/processes,
and the player is 64 bit, but the modeler is 32 bit,
would we be free of the 2 GB limit if the bridge is turned off?

So does this imply that the ts 7 player code is 32 bit? I am just curious (I am a software programmer/developer/systems/etc.)

Thanks,

Frootee

Post by Shike // Aug 10, 2006, 10:57pm

Shike
Total Posts: 511
pic
New code is 64bit ready; but unfortunately you cannot mix 32bit and 64bit. so once old modeler is away, no problems with 2gb barrier.


YES! Finally a reason to start saving for a 64bit system :D

Post by tomasb // Aug 10, 2006, 11:31pm

tomasb
Total Posts: 261
question tomas:


is the Player code in ts 7 64 bit? The reason I am asking is,

if the modeler and player are separate programs/processes,

and the player is 64 bit, but the modeler is 32 bit,

would we be free of the 2 GB limit if the bridge is turned off?


So does this imply that the ts 7 player code is 32 bit? I am just curious (I am a software programmer/developer/systems/etc.)


Thanks,


Frootee


modeler&player are not separate programs; they run as one app within separate threads, with common address space.

problem here is similar as it was with 16bit/32bit apps. You could ran 16bit/32bit apps on one system; but you was not able to mix 16/32bit threads within one app due to address space. (the same way you was not able to use 16bit dlls from 32bit app and vv).

Post by frootee // Aug 11, 2006, 2:22am

frootee
Total Posts: 2667
pic
ah now I see. separate threads, shared memory space; not separate applications/processes. Cool!


Thank You Tomas. Now I understand.


Frootee

Post by Alien // Aug 11, 2006, 3:05am

Alien
Total Posts: 1231
pic
modeler&player are not separate programs; they run as one app within separate threads, with common address space.

problem here is similar as it was with 16bit/32bit apps. You could ran 16bit/32bit apps on one system; but you was not able to mix 16/32bit threads within one app due to address space. (the same way you was not able to use 16bit dlls from 32bit app and vv).

Thanks for the info. I was just about to ask if it would be possible to save the scene, then shutdown tS, & restart it in 64bit mode without the 32bit stuff, but I realised that would mean we wouldn't be able to use any of the pre-tS7 shaders.
Awportals.com is a privately held community resource website dedicated to Active Worlds.
Copyright (c) Mark Randall 2006 - 2024. All Rights Reserved.
Awportals.com   ·   ProLibraries Live   ·   Twitter   ·   LinkedIn