Hard Light Productions Forums

Modding, Mission Design, and Coding => FS2 Open Coding - The Source Code Project (SCP) => Topic started by: NeoBasilisk on April 27, 2006, 03:41:55 pm

Title: Improving performance
Post by: NeoBasilisk on April 27, 2006, 03:41:55 pm
Here are my specs.
P4 2.8 GHz
512 MB RAM
Radeon 9700 128 MB

SCP stutters a lot and gets jerky after playing for a while.  If I upgraded to 2 GB RAM, would that probably fix these issues?  I'm going off of the assumption that the SCP is more memory-intensive than processor speed or video card quality.
Title: Re: Improving performance
Post by: taylor on April 27, 2006, 04:19:49 pm
If you aren't using it already then use the -img2dds cmdline option.  It will increase speed and help reduce overall memory usage.

What build you are running and which MediaVPs you are using also can help or hurt the problem.  Cmdline options in use can obviously make a big impact in performance as well.  Providing more info on those three things can help point out areas where you try to improve things.
Title: Re: Improving performance
Post by: NeoBasilisk on April 27, 2006, 04:43:37 pm
Let's see.....I'm actually running the 11/22 CVS build, and my VPs are dated October, so I guess that would be 3.6.7?
I'll try that command line option.
Title: Re: Improving performance
Post by: NeoBasilisk on April 27, 2006, 08:43:56 pm
Well, the game runs fine with that command line option, but.....some of the effects look horrible.  Is there no middle ground here?  Could this problem be solved simply by getting more RAM?
Title: Re: Improving performance
Post by: Mars on April 27, 2006, 09:11:55 pm
Mine runs five on 512MB, the command line shouldn't effect the graphics that much.
Title: Re: Improving performance
Post by: neoterran on April 27, 2006, 09:16:27 pm
get a card with double the local video card memory... using img2dds makes the explosions and the nebulas look really artifacted and terrible... it really damages suspension of disbelief... main system ram doesn't seem to be the main issue here..
Title: Re: Improving performance
Post by: Flaser on April 27, 2006, 09:59:41 pm
I hope you realize those effects in the MediaVP already ARE in a DDS format (as they should).
The fact, that img2dds causes artifacts only shows that you're using earlier inefficient  or overdetailed tga effects instead the optimized dds ones.
Title: Re: Improving performance
Post by: neoterran on April 27, 2006, 11:22:59 pm
i'm using whatever is in the mediavps 3.6.8delta plus many patches overriding it. img2dds definately affects the nebs and the explosions.
Title: Re: Improving performance
Post by: taylor on April 27, 2006, 11:34:50 pm
As Flaser said, most of the MediaVP images are already DDS.  The new nebula graphics in the upcoming MediaVPs should also be DDS (they aren't currently).  It's extremely difficult to tell the difference in quality, I converted them myself and compared them in detail before accepting the compressed versions as a replacement.  And compression quality of -img2dds is directly linked to your video card, since it's doing the compression, so the quality that people see can vary between different video cards and driver versions.  For you it may not look very good, for someone else, they may not be able to tell the difference.  That will have little or nothing to do with that persons artistic eye, just the quality of their hardware.  If performance is unexceptable then sacrifice some quality to get better control (use -img2dds, or use -img2dds and -mipmap and then lower the "3D Hardware Textures" detail slider down a notch).  If you aren't willing to do that then don't come to us and complain about it being slow, fork over the cash to upgrade your hardware instead.

The main point of -img2dds here is to convert all of the big ANI files into DDS as well.  And if you (NeoBasilisk) are using the 11/22 build then that's too old.  There were several bugs with the -img2dds code, which among other things, caused it to use the faster and lower quality compression techniques.  Now it will try to get as much quality as possible out of the compression, since it's done only during mission load and won't hurt performance when you are actually in a mission.  Not only that but -img2dds will replace the old memory used by the ANI frames with the new compressed versions, which is anywhere from 4 to 8 times less than the original images were using.

And main system memory is an issue.  By the time you have Windows going, any services and apps running in the background, the good chunk of memory that FS2_Open itself will take up (even without any textures loaded), the sound effects, the bitmaps loaded into memory, and the texture memory that OpenGL is using (which can be AGP memory, video card memory, and/or system memory), you are going to have big performance issues due to paging.  To make full use of the current MediaVPs you need at least 1gig of RAM to really perform well.  Avoiding as many memory intensive cmdline options as possible and using -img2dds can reduce that requirement to 512meg.
Title: Re: Improving performance
Post by: neoterran on April 27, 2006, 11:50:24 pm
I highly recommend to not have any on demand virus or spyware scanners going while you run the game either (ie, norton, symantec, nod32, or windows defender)
Title: Re: Improving performance
Post by: neoterran on April 30, 2006, 02:55:24 pm
Well, i've done some additional testing based on your recommendations in your post, Taylor. I managed to seriously increase the performance and reduce the first load hitching behavior by quite a bit, even on the most intensive missions. There were several improvements i made.  Remember, YMMV. The changes were :

1.) No Active AV/AS Scanners during gameplay
2.) Reduce overall number of services and background programs. This includes killing explorer.exe, which can use up to 80 MB of precious memory. I used a batch file to auto turn off all the services not needed during gameplay. By reducing the number of processes to roughly 16-18 and memory usage of windows to around 170 MB, I freed up enough memory for the game to run much better. This seemed to have the largest effect on the games performance, surprisingly. ( I have 900 MB of ram, around 650 was "available" for the game. I'm using all effects in the mediavps, except for high shockwaves instead of super high. Graphics cards settings : 4x AA and 4x AF. Unusually, these have less of an effect on performance than they do in newer games and they make it look alot better. This is probably related to the lower number of polygons in Freespace compared to contemporary games)
3.)  I reduced my AGP cards latency using PCI Latency Tool 3.1 from 248 to 64. Many sites and users claim there is a performance gain to be had from doing this, although I did not notice much of one, and I'm still testing this as I'm skeptical as to its' improvement. Implement this at your own risk. The idea behind this is that the AGP device takes too long with such a long latency value, and thus creates a queue for other PCI devices such as the soundcard etc, which drives up CPU usage and lowers performance of the system. I am aware that the AGP is on it's own bus, but these sources insisted that even so, it can effect other devices.
4.) I used refresh force to make sure the refresh rate was at maximum (100hz) this increased the frame rate from 60 frames/sec average to 100 frames/sec average. Vsync was left on so as to avoid tearing (it's really bad with Freespace)
5.) enabled img2dds (see below)

Following the above steps gave me a much smoother ride, and to my surprise, step #2 was the biggest factor. I still have some slight hitching on the first load of textures in a mission but it is nowhere near as bad as it was. It seems main system RAM usage is much more important in this game than I thought.

I also enabled img2dds, as I realized I was being overly nitpicky and critical about the nebula quality loss. It's not as bad as i had thought because you can only notice the difference if you really go looking directly for it. Even the explosions aren't as bad as I thought. I would however, prefer we have a hard set of DDS nebulas rather than leaving the conversion up to the graphics card. I think that they'd probably end up being higher quality that way as the conversion can be done with a dedicated converter that might be better at it than having different graphics cards do it.

To sum up, I recommend following steps 1, 2 and 5 for the majority of users. It is possible to improve performance of the game if you're willing to experiment with your system's configuration.
Title: Re: Improving performance
Post by: taylor on April 30, 2006, 03:21:01 pm
I would however, prefer we have a hard set of DDS nebulas rather than leaving the conversion up to the graphics card. I think that they'd probably end up being higher quality that way as the conversion can be done with a dedicated converter that might be better at it than having different graphics cards do it.
Yep, it does look a good bit better that way.  Using NVIDIA's cmdline tool to do the conversion, with it's highest quality setting, makes some really nice images.  It does still produce artifacts but they tend to at least blend in better and not be so noticable.  This is something that the next 3.6.8 MediaVP set should take care of.  I have already converted anything that wasn't ANI to DDS for my own MediaVP set and WMCoolmon has those changes.  About 95% of those are compressed DDS and the others are uncompressed due to too much quality loss, but still DDS so that it's already got full mipmaps.

-img2dds is for those ANI graphics which haven't been converted to EFF and so that you can use JPG/TGA graphics without having to use -jpgtga, in case the memory usage is too high.  And we are probably going to remove -jpgtga and have it always enabled anyway, since we now have -img2dds which can be used to reclaim that memory.

And also don't forget that -img2dds can create full mipmaps for you if you use the -mipmap option as well.  This can improve performance, especially on explosions and things like glowmaps.  Mipmaps do look much better when you use trilinear filtering (which is a registry option) but that will be enabled by default with my next OpenGL upgrade.  Enough people have complained that I think it being default is warranted, and the option will instead just allow you to use bilinear filtering which looks worse.
Title: Re: Improving performance
Post by: neoterran on May 02, 2006, 12:09:01 pm
taylor, what's up with the dds set of vps that Steel01 posted in the 3.6.8 Delta thread ? I tried to use these but they caused problems with some campaigns (like derelict) and so I reverted to my normal set. Can I try to convert these textures to dds myself ? Should i use DXT3 or DXT5 ? Auto-Generate mipmaps or no ? I'm just trying to squeeze all the performance I can out of my setup
Title: Re: Improving performance
Post by: taylor on May 02, 2006, 12:29:48 pm
taylor, what's up with the dds set of vps that Steel01 posted in the 3.6.8 Delta thread ? I tried to use these but they caused problems with some campaigns (like derelict) and so I reverted to my normal set. Can I try to convert these textures to dds myself ? Should i use DXT3 or DXT5 ? Auto-Generate mipmaps or no ? I'm just trying to squeeze all the performance I can out of my setup
I'd already converted everything to DDS before Steel01 started posting those so I never even gave them a look.

You can convert them yourself if you like.  If an image has an alpha channel you will want to use DXT5, but if it doesn't you need to use DXT1c (that's DXT1 without 1-bit alpha).  The DXT5 version of a TGA will use 4 times less memory, the DXT1 version will use between 6 and 8 times less memory.  You will want to make mipmaps for as many images as possible but know that mixing images which have mipmaps with ones that don't, on the same model, will tend to look bad.  The existing DDS images tend not to have mipmaps so you would basically have to reconvert some of those to avoid some minor graphical strangeness.

A few of the graphics don't look good compressed so you might want to make them uncompressed DDS instead (u8888/u888 or something like that) to keep the full quality but still get the mipmaps out of it.  What an uncompressed DDS is called depends on what you use to save the DDS, but generally, if it's not a DXT format then it's uncompressed.

And a quick note on converting PCX images, you will probably have to convert them to RGB color instead of index color before you will be able to save them as DDS.  Some DDS converters may tell you this, others will just refuse to save.
Title: Re: Improving performance
Post by: neoterran on May 02, 2006, 12:48:52 pm
Thanks that's very helpful, Taylor. I'm using nvDXT (latest version) to do the conversions. I think steel used all DXT 5 and there were some non-power of 2 issues / corruption so I'm going to experiment with some of my own dds conversions. it'll be interesting to see how these hold up to the next version of the mediavps (which I assume will incorporate all these revisions and more.

Title: Re: Improving performance
Post by: taylor on May 02, 2006, 03:03:26 pm
When using nvDXT just be sure to use the -quality_highest option so that you get the best visual results.  It makes a noticable difference in image quality, though it does make the conversion process slightly slower (but no difference to the game).  Also, you can use the -dxt1c option when making the DXT1 images so it won't use alpha.

As far as the non-power-of-2 issues go, compressed images have to be power-of-2 or the game won't load them.  Non-compressed DDS don't have to be power-of-2, as long as they don't include mipmaps.  I have an upcoming code update for OpenGL which will allow you to use non-power-of-2 DDS for the interface graphics and they won't have to be resized to power-of-2 to display (like they do now).  Since DDS images, compressed or not, will work even if you don't use the -jpgtga option you can convert any hi-color interface graphics (splash screens, loading screens, etc.) to uncompressed DDS and they will always be used.  This way you wouldn't need to make both PCX and TGA versions.  Those non-power-of-2 images will only work fully for the interface graphics though and not any ship textures or effects.  But that restriction does't hold true for users whos video cards support the "GL_ARB_texture_non_power_of_two" extension since they get to use non-power-of-2 images for pretty much anything.

Oh and -img2dds has no affect on uncompressed DDS so you can convert everything to DDS, choose the best quality you need whether it's compressed or not, and even if you use -img2dds it won't make changes to those images.  I made it this way so that the artist still has some control over quality and if they converted to uncompressed DDS then there is likely a reason that they did so.
Title: Re: Improving performance
Post by: Trivial Psychic on May 02, 2006, 08:36:11 pm
And a quick note on converting PCX images, you will probably have to convert them to RGB color instead of index color before you will be able to save them as DDS.  Some DDS converters may tell you this, others will just refuse to save.
Odd.  I've done numerous conversions for TBP, and Photoshop has never complained about that.  I've converted from pcx and bmp.  It will warn me about the power-of-2 issue, a mistake I've only done once.
Title: Re: Improving performance
Post by: taylor on May 02, 2006, 10:03:08 pm
And a quick note on converting PCX images, you will probably have to convert them to RGB color instead of index color before you will be able to save them as DDS.  Some DDS converters may tell you this, others will just refuse to save.
Odd.  I've done numerous conversions for TBP, and Photoshop has never complained about that.  I've converted from pcx and bmp.  It will warn me about the power-of-2 issue, a mistake I've only done once.
I should have added "Some will work fine."  ;)

I've had it all three ways, depending on what software I was using at the time.  Of course with some of the plug-ins for DDS support it can be version specific as to whether it's an issue or not, with the older versions having the issue which was then fixed.  GIMP for instance will complain about it needing to be converted to RGB, but also gives you the option to do so.
Title: Re: Improving performance
Post by: neoterran on May 02, 2006, 10:13:54 pm
Derelict SCP doesn't seem to like dds files in mv_adveffects for some reason....
Title: Re: Improving performance
Post by: karajorma on May 03, 2006, 06:21:51 am
Why? What happens?
Title: Re: Improving performance
Post by: neoterran on May 03, 2006, 09:35:11 am
I get a crash at the end of mission load but not a descriptive one. Just crash to desktop (and since I have visual studio, a debugger asks me if i'd like to debug) It's only with Derelict so far as well. It happens on at least 2 different missions. It doesn't crash if i have dds mv_effects, but it does crash with mv_adveffects in dds. (this doesn't make much sense, because there is hardly anything in mv_adveffects that should affect derelict, but it is the case)
 It happened both with Steel's converted set and with my converted set. Steel's set has some other issues (about 5 corrupted non power of 2 textures in mv_effects) that were easily fixed, But with Derelict crashing I decided to make my own effects. Plus I wasn't sure if Steel's set had mipmaps (i don't have a tool that will tell me) So I thought I can make my own for some fun (that shows how much of a geek I am)

I seemed to pinpoint it to mv_adveffects, because everything will work with just mv_effects in dds.  I haven't actually tested with a pure set of mediavps yet, I've got left over additional tables and the like in my data folder, maybe that's messing it up. I'll test it and post a bug on mantis if I find one.

Update : This is turning into an adventure. The debugging build can't even get that far, it dies with an Max String lenght aassertion failure in ManagePilots.cpp. This is with Kara's 4/29 build. honestly, all the other mods seem to work well with this vp set. If anyone out there has a working set of dds vps (taylor...) please check them against Derelict SCP and with adveffects and tell me if you get an issue.

In the meantime, I can simply revert to a set with the old mv_advanced effects and have no issues in Derelict, so I guess I'll do a little experimenting see if I can shed some light on my own. I know i probably should just wait until the official dds vp + fixes (3.6.8 Omega ? lol) comes out, but I'm a glutton for punishment.
Title: Re: Improving performance
Post by: taylor on May 03, 2006, 10:25:37 am
Derelict works perfectly for me.  But then I don't use the official MediaVPs anyway, I have my own set that I maintain (but don't distribute).

I'll grab the current mv_adveffects and Steel01's modifications and give the files a look over.  If I see anything I'll let you know.

EDIT:  Only looked at Steel01's so far, but other than the fact that some of the effect which need mipmaps most don't have them, there was nothing terribly wrong, other than the fact that pretty much everything was using DXT5 and taking up twice the memory that it should (as DXT1).  Though one of the effects is non-power-of-2, uncompressed DDS and it has mipmaps.  The having mipmaps part will crash on you so the code has to resize to power-of-2 before use and it can't do that will mipmaps.  This will either lead to memory issues (and crashes) when it tries to resize, or it will get to the video card and crash there.  NEVER create mipmaps for non-power-of-2 textures.  While technically not illegal by the specs, it does require driver/hardware and app support to use them without issue.  Just resize it to power-of-2, resave as DXT1 with mipmaps, and that one will be fixed.

The effect in question is explode1.eff:
explode1_0000.dds:       DirectDraw Surface (DDS), 112 x 102, 7 mipmap levels, RGB5A1
explode1_0001.dds:       DirectDraw Surface (DDS), 112 x 102, 7 mipmap levels, RGB5A1
explode1_0002.dds:       DirectDraw Surface (DDS), 112 x 102, 7 mipmap levels, RGB5A1
explode1_0003.dds:       DirectDraw Surface (DDS), 112 x 102, 7 mipmap levels, RGB5A1
explode1_0004.dds:       DirectDraw Surface (DDS), 112 x 102, 7 mipmap levels, RGB5A1
explode1_0005.dds:       DirectDraw Surface (DDS), 112 x 102, 7 mipmap levels, RGB5A1
explode1_0006.dds:       DirectDraw Surface (DDS), 112 x 102, 7 mipmap levels, RGB5A1
explode1_0007.dds:       DirectDraw Surface (DDS), 112 x 102, 7 mipmap levels, RGB5A1
explode1_0008.dds:       DirectDraw Surface (DDS), 112 x 102, 7 mipmap levels, RGB5A1
explode1_0009.dds:       DirectDraw Surface (DDS), 112 x 102, 7 mipmap levels, RGB5A1
explode1_0010.dds:       DirectDraw Surface (DDS), 112 x 102, 7 mipmap levels, RGB5A1
explode1_0011.dds:       DirectDraw Surface (DDS), 112 x 102, 7 mipmap levels, RGB5A1
explode1_0012.dds:       DirectDraw Surface (DDS), 112 x 102, 7 mipmap levels, RGB5A1
explode1_0013.dds:       DirectDraw Surface (DDS), 112 x 102, 7 mipmap levels, RGB5A1
explode1_0014.dds:       DirectDraw Surface (DDS), 112 x 102, 7 mipmap levels, RGB5A1
explode1_0015.dds:       DirectDraw Surface (DDS), 112 x 102, 7 mipmap levels, RGB5A1
explode1_0016.dds:       DirectDraw Surface (DDS), 112 x 102, 7 mipmap levels, RGB5A1
explode1.eff:            FS2_Open Effect Animation (EFF), DDS, 17 frames at 15 fps
Title: Re: Improving performance
Post by: neoterran on May 03, 2006, 11:51:50 am
Hmm, this is all interesting.... I'm not sure how to convert anis to effs. Is there a site with a good tutorial on this ? Another question I have is, why are there duplicate files with both TGA and PCX in the mediavps ? Is there a reason for this ? Which one should be converted to DDS if there are both TGA and PCX versions ? Are there rules about reconverting existing compressed DDS files ? For example, to gain mipmap levels ? Or should this not be done ? Thanks in advance.... 
Title: Re: Improving performance
Post by: taylor on May 03, 2006, 02:14:36 pm
Hmm, this is all interesting.... I'm not sure how to convert anis to effs. Is there a site with a good tutorial on this ?
No real tutorial, but the EFF feature was initially setup to allow this easily.  Basically all you should have to do is use the ANI veiwer in Windows, export all of the frames to BMP with a filename like "exp20_" which will then create all of the frames like this "exp20_0000.bmp", exp20_0001.bmp", etc.  Then you can use nvDXT like "nvdxt -quality_highest -dxt1c -file exp20*.bmp" and that should convert all of the frames to DXT1 with full mipmaps and on the highest quality setting.  Then just create the EFF file itself.  Open Wordpad (it's safer this way since Notepad tends to add a .txt extension automatically) and set the required fields (look at an existing EFF to see what you need) and then save it as exp20.eff.

Someone should probably add that to the Wiki at some point, filling in the gaps from my description of the process.

Another question I have is, why are there duplicate files with both TGA and PCX in the mediavps ? Is there a reason for this ? Which one should be converted to DDS if there are both TGA and PCX versions ?
The TGA versions would only be used if you were using the -jpgtga option.  Because of this there are also PCX versions for the people who didn't turn on -jpgtga since otherwise they would get invisible ships.  But going with DDS works whether you use -jpgtga or not so you if you make the DDS files then you can remove both the TGA and PCX versions of the same image.

When converting to DDS always try to use the TGA when possible.  It will already have a proper alpha channel if it's needed and those you'll convert to DXT5.  If it doesn't have an alpha channel, or doesn't appear to need alpha, then convert it to DXT1.

Are there rules about reconverting existing compressed DDS files ? For example, to gain mipmap levels ? Or should this not be done ? Thanks in advance.... 
It's always going to be better to come from a TGA or uncompressed DDS.  However, I have seen very little degrading when resaving an existing compressed DDS.  It would help to only ever do that once though so it would be safe to make a backup copy of the images you are going to convert just to make sure you have something a bit cleaner to go back to.
Title: Re: Improving performance
Post by: neoterran on May 03, 2006, 02:28:23 pm
Thanks for all this taylor. very informative.

I came across something interesting during my conversion.

I decided to start over from scratch and I noticed some of the dds files in the 3.6.8 mv_effects.vp exhibit some weird behavior (the format is listed as "format unknown", mip levels and size report ridiculously huge values, and there is no preview) These files also crash nvdxt on conversion. The files are : bomber-04-01a-shine.dds, bomber2T-01a.dds, cairo.dds. There may be a few more but those I double checked. Are these corrupt ?
Title: Re: Improving performance
Post by: taylor on May 03, 2006, 03:28:31 pm
I decided to start over from scratch and I noticed some of the dds files in the 3.6.8 mv_effects.vp exhibit some weird behavior (the format is listed as "format unknown", mip levels and size report ridiculously huge values, and there is no preview)
Not sure, which files are they?  All of them are identified correctly for me.  Some of them are uncompressed DDS though and not DXT compressed.  Some of them are DXT3, though I wouldn't think that should be a problem.

These files also crash nvdxt on conversion. The files are : bomber-04-01a-shine.dds, bomber2T-01a.dds, cairo.dds. There may be a few more but those I double checked. Are these corrupt ?
They look fine to me, assuming we are checking the same files (I looked that the 3.6.8 VPs and Steel01's version).


Oh and one other thing on the ANI->EFF conversion that I didn't add before... I don't do it.  I let -img2dds take care of that for me for the simple reason that ANI is a highly lossy format and conversion will tend to always suck.  It's not just that it's a 256 color palette, but it's a single palette shared among all of the frames and that greatly reduces the quality of the animation as a whole.  Using -img2dds I get the easy choice of using the compressed files for normal play, and using the uncompressed files for screenshots or things like that.  I'm just waiting for someone to remake those effects so that we can get better color resolution out of it for better compression quality.
Title: Re: Improving performance
Post by: neoterran on May 03, 2006, 05:07:58 pm
Something bad is occurring on my system when using vpmage to extract the files. I have seen some corruption to the dds occur (i can reproduce this as well) on my windows xp sp2 system, and it doesn't occur with quickvp. I'll let quickvp handle the creation of vp files from now on.

Thanks for all the hints taylor, appreciated.
Title: Re: Improving performance
Post by: neoterran on May 03, 2006, 10:19:27 pm
Well, i'm going to slog through this slowly and carefully one vp at a time.

This is kind of a *****, because you have to determine, should this be DXT1c, DXT5, or U888 format. and then you have the multiple PCX/TGA mix-n-match, although some PCX files only ! and vice versa. What have I gotten myself into...   

:headz:
Title: Re: Improving performance
Post by: taylor on May 03, 2006, 10:49:41 pm
Hehe. :) It's taken me quite a few months to get my VP set the way I want it.  I stopped using the official set last summer and have been slowly building and converting the files over to what I prefer (something optimized for 128meg video cards).  If you promise not to redistribute the VPs, I'll give you access to what I have.  They should be mostly rolled into the next VP set anyway so I don't feel as bad about letting them out.  BUT, as a VP set this will not be supported by ANYONE, and should NOT be redistributed.  Always use the official set if using the MediaVPs.

You can either use what I have the way I have it, or use it as a base for fixing your own files.  If you are interested then PM me and I'll get you the FTP address.  This isn't a free-for-all though so no one else bother asking for the files, I'll just ignore you.
Title: Re: Improving performance
Post by: Cobra on May 03, 2006, 11:30:29 pm
2.) Reduce overall number of services and background programs. This includes killing explorer.exe, which can use up to 80 MB of precious memory. I used a batch file to auto turn off all the services not needed during gameplay. By reducing the number of processes to roughly 16-18 and memory usage of windows to around 170 MB, I freed up enough memory for the game to run much better. This seemed to have the largest effect on the games performance, surprisingly. ( I have 900 MB of ram, around 650 was "available" for the game. I'm using all effects in the mediavps, except for high shockwaves instead of super high. Graphics cards settings : 4x AA and 4x AF. Unusually, these have less of an effect on performance than they do in newer games and they make it look alot better. This is probably related to the lower number of polygons in Freespace compared to contemporary games)

dude, do you even know what explorer.exe is? it's what enables you to freaking run your computer. without it, until you do a forced restart, you can just stare at everything on your desktop. tried stopping that .exe once, it wasn't pretty.
Title: Re: Improving performance
Post by: StratComm on May 03, 2006, 11:39:41 pm
Cobra, you can restart explorer.exe without rebooting.  Anyone who knows how to use the task manager knows that.
Title: Re: Improving performance
Post by: Shadow0000 on May 03, 2006, 11:44:48 pm
Quote
dude, do you even know what explorer.exe is? it's what enables you to freaking run your computer. without it, until you do a forced restart, you can just stare at everything on your desktop. tried stopping that .exe once, it wasn't pretty.

No, if you kill the explorer.exe, part of the Shell still remains, that's why you can still see your desktop, and mostly the mouse pointer, when the Explorer shutdown itself in XP it mostly tries to re-initializate itself, not like in other Windows where your PC would freeze, one of the causes why XP requires more RAM than other older OS.

If your explorer.exe crash and doesn't restart (you're left with no Shell, of course), to restart it just press Ctrl+Alt+Supr, that will bring the Task Manager, now go to File, then "New Task (execute...)", and write "explorer.exe" (without the quotes), and you will save a restart to yourself and your PC...

Quote
I used a batch file to auto turn off all the services not needed during gameplay.

Does that Batch File (a *.BAT, right?) includes the auto-execution of the SCP ?, I always wondered if that was possible, it was possible for DOS to just force it to run a game and just only that, nothing else, I never tried with Windows...(sounds interesting...)
Title: Re: Improving performance
Post by: neoterran on May 03, 2006, 11:52:10 pm
no thread is complete without a little trolling.  :o

Shadow, the batchfile will launch the launcher last, and all i have to do is hit run on the launcher and it runs. If the launcher accepts a command-line parameter (such as launcher.exe /run or launcher.exe -run) you could completely automate it but I don't think that it does. I didn't actually try, my purpose was really just to batch a bunch of net stop and net start commands to turn off services on my machine to free up memory, and provide an easy way to turn them all back on again. It might be interesting to see if Taylor's new launcher will accept command-line switches/parameters for automated running (it would be nice if it does)

I found that by seriously stripping down my system, including not running explorer.exe which isn't necessary while running Freespace SCP, really reduces paging activity which is problematic in game for me. I don't want to sacrifice any quality at all running the game, so I'd rather do this, I'm quite comfortable killing explorer.exe, as a lightstep user from time to time  :yes:

As usual, those with 2 GB RAM and Athlon64 FX Dual Cores won't need to do this, so please don't come and crap all over the thread if you don't have to do it. I do.

Title: Re: Improving performance
Post by: StratComm on May 04, 2006, 12:00:58 am
Quote
dude, do you even know what explorer.exe is? it's what enables you to freaking run your computer. without it, until you do a forced restart, you can just stare at everything on your desktop. tried stopping that .exe once, it wasn't pretty.

No, if you kill the explorer.exe, part of the Shell still remains, that's why you can still your desktop, and mostly the mouse pointer, when the Explorer shutdown itself in XP it mostly tries to re-initializate itself, not like in other Windows where your PC would freeze, one of the causes why XP requires more RAM than other older OS.

If your explorer.exe crash and doesn't restart (you're left with no Shell, of course), to restart it just press Ctrl+Alt+Supr, that will bring the Task Manager, now go to File, then "New Task (execute...)", and write "explorer.exe" (without the quotes), and you will save a restart to yourself and your PC...

Quote
I used a batch file to auto turn off all the services not needed during gameplay.

Does that Batch File (a *.BAT, right?) includes the auto-execution of the SCP ?, I always wondered if that was possible, it was possible for DOS to just force it to run a game and just only that, nothing else, I never tried with Windows...(sounds interesting...)

It could, in theory, at least pop up the launcher.  Whether you'd need to add in the command lines or not is a different question, of course, but the XP command line is certainly capable of launching a process in the same manner the linux prompt or DOS.
Title: Re: Improving performance
Post by: Cobra on May 04, 2006, 12:02:28 am
Cobra, you can restart explorer.exe without rebooting.  Anyone who knows how to use the task manager knows that.

here's the dude who doesn't. :nervous:

and Neoterran, since when was putting out misguided information  (at the time before Shadow0000 came into the thread) trolling?!
Title: Re: Improving performance
Post by: neoterran on May 04, 2006, 12:05:41 am
Cobra, you can restart explorer.exe without rebooting.  Anyone who knows how to use the task manager knows that.
Neoterran, since when was putting out misguided information  (at the time before Shadow0000 came into the thread) trolling?!

Quote
dude, do you even know what explorer.exe is?

The above quote is pretty much considered trolling by most messageboard's standards. Not that I particularily care, because that just seems to be your posting style. But I can still point it out. Especially when it was so ironic given the context of the post.
Title: Re: Improving performance
Post by: Shadow0000 on May 04, 2006, 12:21:41 am
Quote
no thread is complete without a little trolling. 

I personally prefer a fishing rod and a lure, it's way more effective when you need to do some trolling. :lol:

-------------------------------------

Quote
t could, in theory, at least pop up the launcher.  Whether you'd need to add in the command lines or not is a different question, of course, but the XP command line is certainly capable of launching a process in the same manner as double-clicking an icon.

Well, yes once one configure the Launcher, the Command Line is still used even if the user executes the FS2.exe directly, In any case I would set the Batch to the FS2.exe (or CVS Build) ignoring the supposedly already configured Launcher...
Title: Re: Improving performance
Post by: neoterran on May 04, 2006, 12:26:14 am
Speaking of command lines, XP has a new commandline now from Microsoft called PowerShell. You can run it on Windows XP SP2 / Server 2003 SP1 or higher if you have .net 2.0 installed. It allows full scripting, and supports pipelining of objects, not just text. It's something that Windows has needed for a long time.
Title: Re: Improving performance
Post by: Shadow0000 on May 04, 2006, 01:16:49 am
Supported Operating Systems: Windows Server 2003; Windows Server 2003 R2 (32-Bit x86); Windows Server 2003 Service Pack 1; Windows Vista; Windows XP; Windows XP Service Pack 1; Windows XP Service Pack 2
There is also a x64 version for 64-Bit Windows...

Seems a great tool, not surpresive that Microsoft take the idea from other OS like UNIX, but well...it was first called "Monad" which is the actual name of the scripting language...it's seems to be a fashion for companies to change products names in the last moments before the releases...

It seems that the link has dissapeared from Microsoft's WebSite...(only the Documentation is available), how they manage to make so many mistakes, they must be really brilliant or they put a lot effort on that...
Title: Re: Improving performance
Post by: neoterran on May 04, 2006, 11:18:55 am
From what I can see they have a very bureaucratic and monolithic structure with particularly bad management. But some very bright engineers working there.