Train-Sim.Com
Microsoft Train Simulator

Exciting discovery: a method for improving frame rates

Notice to all visitors and members of the Train-Sim.Com message forums:
If you plan on using a signature banner in your posts, we would like to remind you that there is a maximum size for banners. That maximum is 450 pixels wide by 120 pixels high, and not to exceed 25k. Your compliance is appreciated. FORUM RULES Problems? There are two common reasons for problems with logging in and posting messages. The first is that you are running a firewall that prevents your messages from being sent to the server. The other is that you have cookies disabled; the DCForum software requires cookies to work properly.

Previous Topic | Next Topic

Printer-friendly copy Email this topic to a friend

Reading Topic #24364

Member since Jul-18-03 · 738 posts

I discovered this little trick while I was improving the Cascades route. If you get a particularly jerky route, or just simply wish to improve your frame rates then all you have to do is run the route once when you have something else to do, then simply re-run it and the frame rates will improve. My only explanation is that on the first run it's loading data which ties up memory resources which on the second run is already loaded: bit like opening a large program like TS for example from cold boot up, then closing it (TS) again and re-opening it again--we all notice how much quicker TS reloads after having been opened before.I found a similar phenomenon when starting my Trains of Mass Destruction activity: on the first run trains did not keep to their split-second timing, but on the second, and third etc, everything kept to the time I specified.Donations of fast cars, yachts, luxury holidays, and beautiful women will not be turned down for the revelatory information given
Mike Exciting discovery: a method for improving frame rates – image 1

Alert | IP

Printer-friendly page | Edit | Reply | Reply With Quote | Top

RE: Exciting discovery: a method for improving frame r, wozzar, Aug-06-04, 07:21 AM, (1) RE: Exciting discovery: a method for improving frame r, OTTODAD, Aug-06-04, 07:24 AM, (2) RE: Exciting discovery: a method for improving frame r, derekmorton, Aug-06-04, 07:41 AM, (3) RE: Exciting discovery: a method for improving frame r, OTTODAD, Aug-06-04, 07:55 AM, (4) RE: Exciting discovery: a method for improving frame r, derekmorton, Aug-06-04, 09:42 PM, (13) RE: Exciting discovery: a method for improving frame r, OTTODAD, Aug-07-04, 08:31 AM, (17) RE: Exciting discovery: a method for improving frame r, wozzar, Aug-06-04, 08:00 AM, (5) RE: Exciting discovery: a method for improving frame r, wozzar, Aug-06-04, 08:02 AM, (6) RE: Exciting discovery: a method for improving frame r, OTTODAD, Aug-06-04, 10:40 AM, (7) RE: Exciting discovery: a method for improving frame r, sinclair97, Aug-06-04, 12:53 PM, (8) RE: Exciting discovery: a method for improving frame r, OTTODAD, Aug-06-04, 02:11 PM, (9) RE: Exciting discovery: a method for improving frame r, Swissie, Aug-06-04, 03:21 PM, (10) RE: Exciting discovery: a method for improving frame r, sinclair97, Aug-06-04, 04:48 PM, (11) RE: Exciting discovery: a method for improving frame r, duffys Tavern1, Aug-06-04, 04:52 PM, (12) RE: Exciting discovery: a method for improving frame r, Swissie, Aug-07-04, 01:35 AM, (14) RE: Exciting discovery: a method for improving frame r, MikeSimpson, Aug-07-04, 01:48 AM, (15) RE: Exciting discovery: a method for improving frame r, sinclair97, Aug-07-04, 06:15 AM, (16) RE: Exciting discovery: a method for improving frame r, OTTODAD, Aug-07-04, 08:37 AM, (18) RE: Exciting discovery: a method for improving frame r, Swissie, Aug-07-04, 09:36 AM, (19) RE: Exciting discovery: a method for improving frame r, Hack, Aug-07-04, 09:44 AM, (20) RE: Exciting discovery: a method for improving frame r, sinclair97, Aug-07-04, 09:52 AM, (21) RE: Exciting discovery: a method for improving frame r, decapod, Aug-08-04, 02:15 AM, (22)

Conferences | Topics | Previous Topic | Next Topic

Charter Member · 61 posts

RE: Exciting discovery: a method for improving frame r

Donations of fast cars, yachts, luxury holidays, and beautiful women will not be turned down for the revelatory information given
LOL sorry i have known this for a long time. And i have mention about this on the forum how ever no one had picked up on it.

Alert | IP

Printer-friendly page | Edit | Reply | Reply With Quote | Top

Charter Member · 5648 posts

RE: Exciting discovery: a method for improving frame r

Yes Mike, I too noticed that consecutive faster loading of MSTS, proving that MSTS keep bits of what it did last in RAM, causing problems with repeated or too long sessions in the RE unless frequent Cold Starts of the machine are performed to clear all of RAM.Was not aware of significant improvements running the same Route a second time though, my nVIDIA TI-4600 / 30.82 with 1.5 Gb RAM on the MOBO producing good Frame Rates in most Routes.Did a test in the N.&.J.C. just now, a densely populated with objects scenery route. Coming out of JERSEY CITY CENTRAL at an average of 25 FpS there is some severe stuttering in places, starting when going under the Railway bridge in the first left-hand curve, which I think is caused by MSTS having to get large chunks of data from the hard drive. But Frame Rates were marginally better !I just re-started the Route while still in MSTS. Is that what you do ? I think that some guys also reported that SAVING a Route and then playing it again while still in MSTS also improves Frame Rates ?I once tested a "RAM DRIVE" large enough to store the N.&.J.C. in and run it from RAM instead of the hard drive, but the data fetching stuttering did not improve noticeably. It must have something to do with the way MSTS processes Graphics code using the Northbridge, which being replaced with HYPERTHREADING soon and faster data processing SATA drives will improve the stuttering ?Take Care, O t t o.

Alert | IP

Printer-friendly page | Edit | Reply | Reply With Quote | Top

Charter Member · 2838 posts

RE: Exciting discovery: a method for improving frame r

Otto,>I once tested a "RAM DRIVE" large enough to store the N.&.J.C. in and run it from RAM instead of the hard
>drive, but the data fetching stuttering did not improve noticeably. It must have something to do with the way MSTS
>processes Graphics code using the Northbridge, which being replaced with HYPERTHREADING soon and faster data processing
>SATA drives will improve the stuttering ? Hyperthreading won't help as MSTS is single threaded.Faster disk drives are unlikely to help if the stuttering happened with a ram drive.

Derek
EngMod@sgrail.org
www.sgrail.org

Alert | IP

Printer-friendly page | Edit | Reply | Reply With Quote | Top

Charter Member · 5648 posts

RE: Exciting discovery: a method for improving frame r

Hi Derek !As you know more about some of the hardware aspects of computers than me perhaps you can confirm what I think I understood the new AMD 64-bit and Mobos to be capable of.The Northbridge handles Graphics instructions the Graphics card on-board memory can not handle and the Southbridge deals with processing data from peripherals such as Hard drives, CD and DVD drives.Doing away with both and letting the CPU itself do their work, with or without Hyperthreading, is that not likely to improve peripherals performance ?And you are right of course, if a RAM drive can not improve Stuttering then neither can a faster hard drive, unless it is capable of even faster data processing than a RAMDRIVE ! Take Care, O t t o.

Alert | IP

Printer-friendly page | Edit | Reply | Reply With Quote | Top

Charter Member · 2838 posts

RE: Exciting discovery: a method for improving frame r

>The Northbridge handles Graphics instructions the Graphics card on-board memory can not handle and the Southbridge
>deals with processing data from peripherals such as Hard drives, CD and DVD drives.
>
>Doing away with both and letting the CPU itself do their work, with or without Hyperthreading, is that not likely to
>improve peripherals performance ? The A64 (I have one here) does not need a Northbridge as the memory controller is on chip. Its only taken someone 10 years to catch up to motorola, they did it with the 6800 and later.The Northbridge does not handle instructions for the graphics card but will handle any overflow of memory needed to hold 3d objects, these will be put in mainstrean memory.With faster disk drives, the southbridge needs to get an upgrade as well. The pci bus can only handle 133Mb/s, that why the pci-express is comming at 266Mb/s.
The survey on disk speed showed someone with 80Mb/s which is getting too close to the speed of pci.

Derek
EngMod@sgrail.org
www.sgrail.org

Alert | IP

Printer-friendly page | Edit | Reply | Reply With Quote | Top

Charter Member · 5648 posts

RE: Exciting discovery: a method for improving frame r

Thanks, Derek !Looks like we will get some improvements in disk accesses one way or the other and of course a better Graphics engine for the next Train Sim, which may improve the "Stuttering" too ?Take care, O t t o.

Alert | IP

Printer-friendly page | Edit | Reply | Reply With Quote | Top

Charter Member · 61 posts

RE: Exciting discovery: a method for improving frame r

Hi Derek.I got a faster drive but as you mention it wont help and it didnt. Lets hope Raildriver get this right.

Alert | IP

Printer-friendly page | Edit | Reply | Reply With Quote | Top

Charter Member · 61 posts

RE: Exciting discovery: a method for improving frame r

Was not aware of significant improvements running the same Route a second time though.With the NEC i notice a lot of improvement running it the second time.

Alert | IP

Printer-friendly page | Edit | Reply | Reply With Quote | Top

Charter Member · 5648 posts

RE: Exciting discovery: a method for improving frame r

My Frame Rates in the N.&.J.C. went from 29 to 31 in the same location the second time, marginal as I said, but a great deal depends on the Hardware and WIN O/S used as well. Have not tried it on other routes yet, most of them running at acceptable FpS anyway. O t t o

Alert | IP

Printer-friendly page | Edit | Reply | Reply With Quote | Top

Member since Jul-18-03 · 738 posts

RE: Exciting discovery: a method for improving frame r

Hi Otto,I have a Dell Inspiron 8200 laptop, which (the salesman assured me two-and-a-half years ago)was the very best computer with a dazzling 64 megabyte video card that was powerful enough for e-e-e-every-t-t-t-thing. B-b-b-but I can get framerates as low as 5 or 6 FPS on the first run but at least double that on the second.Now for my selection of a sports car: a top-of-the-line Jaguar, and oh, and although I'm fifty I like my women to be substantially younger. I'll skip the yacht--mustn't be greedy.Mike Exciting discovery: a method for improving frame rates – image 2

Alert | IP

Printer-friendly page | Edit | Reply | Reply With Quote | Top

Charter Member · 5648 posts

RE: Exciting discovery: a method for improving frame r

You will have to wait until I have checked my EURO Lottery ticket for tonight's draw, Mike ! O t t o

Alert | IP

Printer-friendly page | Edit | Reply | Reply With Quote | Top

Member since Sep-27-02 · 1117 posts

RE: Exciting discovery: a method for improving frame r

LAST EDITED ON Aug-06-04 AT 03:28 PM (EST)

Hello Mike,thanks for posting the information - may I add a few cents of observations however?First and foremost statement: There are two different kinds of drops in fps that need to be looked at differently, imho.1) Stuttering due to loading tilesMSTS always loads the tile you are on, and all the neighbouring tiles into memory, which boils down to a maximum of 1+8 tiles if your tile has neighbours on all sides and corners. Or to be more accurate: When you cross the imaginary centerlines reaching from the four corners of your tile to the center point of it, then it releases the tiles behind you from memory and loads the ones ahead. Loading means: It reads the .w file, then loads all the .s files the tile (.w file) calls for, then loads all the .ace files the .s files call for, then loads all the .sms files the .ws file calls for, loads all the .wav files the .sms files call for etc.If your next tiles are cramped - say 1000 .s each - this can cause moderate stuttering due to the large size of the .w file to read alone. However, if 950 of these objects is the same kind of isolated tree - lets call it tree_x.s, and the rest is track sections, then loading the .s file and the three (!) .ace files required for the next tile (tree_x.ace, ACleanTrack1.ace, ACleanTrack2.ace) is no issue, and your fps will only stutter briefly and mildly at the centerline.If your next tiles are cramped, but this time with 500 different objects (.s files), the number of shape files to load (decompress, read) and the number of associated .ace files the sim has to look for will virtually stop your run for 5-30 secs depending on the specs of your computer.However, it seems once MSTS has loaded an .s and an .ace for a specific scenery item into memory for the first time, it will load the same item faster the next time it needs it (next tile, next run in the same MSTS session). Just my wild guess, but looks like MSTS keeps these files in a temporary buffer for the duration of the session. That would also mean that the file is already decompressed and thus loads fast than before?2) Low frame rates due to a scenery item's propertiesNot all objects affect the fps the same. It is not only a matter of how complex the shape is (number of polys to display), but also how large the .ace file(s) for an object is (are). The factors that matter in combination are number of polys of an object (use shape viewer to display the polys!) and size of the graphics files to apply to them. Buildings that are at a certain distance from the track should ideally use textures no larger than 256x256, while railroad depots, and other buildings you see from close-by, should not exceed 512x512 textures. Btw: It is better to use a number of small textures than one large texture!Enocell's New Jersey route is a good example: He has done a lot of beautiful old industry buildings that have very few polygones (the shapes are simple "boxes" in many case). Still, the fps are slow in many places. Each one of the buildings has an individual 512x512 texture - and with ca. 50-60 different buildings on some tiles, that means 50-60 relatively large textures need to be displayed simultaneously. As it can't be the polys driving the fps down in those circumstances, I tested downscaling almost all texture files for the industry buildings from 512 pixels to 256 pixels - and the effect on the old laptop was tremendous. Where I got 3-6 fps before, I can suddenly tug along with 13-20 fps - just because of the smaller textures that make virtually no difference to the observer's eye... So the bottomline: - When approaching a cramped tile, some stuttering will always occur due to the sheer number of entries for scenery objects the sim has to read when approaching the tile. That is an inherent factor of the way MSTS is programmed.- When building a cramped tile as a route author, rather try to use the same shape for buildings, vegetation items etc. repeatedly, instead of inflating the number of .s and .ace files the sim has to read and display.- The smaller the size of the texture(s) a scenery object uses, and the fewer polygones it has, the faster your fps gets, as the graphics card's ressources will be freed up. When using an old graphics card, resampling scenery items to 256x256 textures frees up a lot of potential (takes its time to do, but many textures are shared by various routes and can be copied over once they are resampled). Lukas a.k.a Swissie

Alert | IP

Printer-friendly page | Edit | Reply | Reply With Quote | Top

Member since Jul-18-03 · 738 posts

RE: Exciting discovery: a method for improving frame r

Hi Lukas,Thanks for responding. We don't get enough posts from you, and have to rely on Otto and Sniper to hold the fort: one mad about signals, and the other mad about track switches.You put the case very clearly, and I can now understand even more about this subject other than signals and switch points.Now I understand why that when I replaced the spindly pine ("Vegetation" class) with rudimentary texture with that of the "Colorado Blue Spruce" and its more detailed photo realistic texture(both from the Cascades route), the frame rates dropped like a stone. I always find it is better to use forest objects (Track objects) as opposed to Shape objects ("Vegetation). It is interesting to know that one forest object (a whole forest of 10,000 trees) is equal to one "Vegetation" tree.Thank you again LukasMike

Alert | IP

Printer-friendly page | Edit | Reply | Reply With Quote | Top

Member since Sep-27-02 · 1117 posts

RE: Exciting discovery: a method for improving frame r

Hi Duffys Tavern,of course I suggest to always back-up the originals before starting to work on those textures, as you may find out that you don't occasionally like the results and would love to return to the starting point...1) First you need to get TGAtool2, a add-on utility that lets you convert .ace files to tga or bmp files. I suggest to always use the .tga format, because you loose any alpha channels (transparencies, i.e. look-through windows, foliage effects on the trees) when you convert to bmp - simply because this image format does not support alpha channels. TGAtool2 is available at http://www.mnwright.btinternet.co.uk/train/tgatool2.htm2) Then, load the .tga file into your preferred graphics/photo editing software (PaintShop Pro, Photoshop, Photoshop light, whatever you have at hand), open it, resample to 256x256, sharpen the result a bit ("unsharpen" tool in PSP and photoshop seems to give best effects to me). Don't forget that the alpha channel might also need sharpening which has to be done separately, then save the edited .tga3) Using TGAtool2 a second time, load the edited .tga file and re-export it to .ace format (with or without alpha channel, whatever you need). 4) If necessary, re-mip the new .ace file to get rid of moirée-effects, for example on files that depict wooden structures with fine horizontal or vertical lines. ReMipIt is available at 3dtrains.com -> downloads -> utilitites.Basically, it is the same steps you take when "repainting" your own rolling stock. Thus, you can also refer to the tutorials on repainting, as a starters in the FAQ section of this forum (link at bottom of page).Lukas a.k.a Swissie

Alert | IP

Printer-friendly page | Edit | Reply | Reply With Quote | Top

Charter Member · 904 posts

RE: Exciting discovery: a method for improving frame r

You can also use the latest version of Route-Riter to convert all the .ace files in your route to DXT1 format. DirectX uses DXT1 as it's native format and the files are in any case much smaller than those used by other formats.Thus the files load faster and take less processing time than the other formats and so should, at least in theory, give you better FPS rates.Mike

Alert | IP

Printer-friendly page | Edit | Reply | Reply With Quote | Top

Member since Jul-18-03 · 738 posts

RE: Exciting discovery: a method for improving frame r

Elucidation please!Hi mike,Are you actually saying that if we convert .ace files to DXT1 format that good ol MSTS will run on the new DXT1 files instead of using .ace files. From a layman's point of view, this can be compared to putting raspberry juice into your car instead of petrol.Am I to infer that when you said and I quote "...and so should, at least in theory, give you you better FPS rates." that this "theory" is still a theory?
Mike

Alert | IP

Printer-friendly page | Edit | Reply | Reply With Quote | Top

Charter Member · 5648 posts

RE: Exciting discovery: a method for improving frame r

Hi Mike !Just did a test letting the Route Riter compress all the .ace in the N.&.J.C. to DXT1 format, this being one route to suffer most from stuttering, but can not say that it made any improvements as far as I can see.Other routes may benefit more from doing that, but I am not too much concerned with the occasional stuttering.Take Care, O t t o.

Alert | IP

Printer-friendly page | Edit | Reply | Reply With Quote | Top

Member since Sep-27-02 · 1117 posts

RE: Exciting discovery: a method for improving frame r

Hi Mike,correct, the DXT1 compression gives you the smallest file size for the same .ace file. Which is certainly a benefit for downloaders. On the other hand, I assume any .ace file is de-compressed in order to be displayed in the sim, so the size of the compressed file does probably not have an impact on fps (nor on RAM, as the de-compressed files will always be the same size).However an other caveat: the graphics card on the elderly WIN98 laptop (I actually have to look up the model on my next session there, sorry) I use for testing fps impact is not up to the task. It definitely seems to suffer more when reading dxt1 compressed .ace files than when handling the compression format MakeAce uses when run from TGAtool2. DXT1 compressed files in 512x512 do sometimes not even display correctly on said card, they just display a gibberish of spectral colors instead...Lukas a.k.a Swissie

Alert | IP

Printer-friendly page | Edit | Reply | Reply With Quote | Top

Charter Member · 3680 posts

RE: Exciting discovery: a method for improving frame r

While DXT1 can save tons of disk space, I don't think it'll do much to improve fps. The textures still need to be decompressed into memory, and I believe DXT1 and Zlib compressed images are processed the same within MSTS.Cheers!
Marc - 3DTrains
http://www.3dtrains.comExciting discovery: a method for improving frame rates – image 3Pro Series SuperPacks

Alert | IP

Printer-friendly page | Edit | Reply | Reply With Quote | Top

Member since Jul-18-03 · 738 posts

RE: Exciting discovery: a method for improving frame r

Figured out a solutionOk, I got it: I drink the raspberry juice, and put the petrol back in the car.Mike

Alert | IP

Printer-friendly page | Edit | Reply | Reply With Quote | Top

Charter Member · 294 posts

RE: Exciting discovery: a method for improving frame r

I've done a few tests and DXT does improve frame rates a little.A lot of video cards support it as a native format, so it does not need to be uncompressed, in fact DXT ace files can also be zlib compressed.DXT1 is also a 16bit format which is what MSTS is using so there is no conversion needed, whereas all other ACE file formats are 32bit.

Paul
UK GWR Highworth Branch - http://www.highworth.freeuk.com
Other Projects - http://www31.brinkster.com/decapod

Alert | IP


[ Home | MSTS Forum | MSTS FAQ | How To... | File Library ] Copyright © 2004 by Nels Anderson. All Rights Reserved.

Restored from the Train-Sim.Com archive, captured August 17, 2004. About this archive.