ConservativeSwapfileUsage=1- Misleading information...

Whitedog

Diamond Member
Dec 22, 1999
3,656
1
0
I've learned from this forum that using ConservativeSwapfileUsage=1 in your system.ini [386Enh] will tell windows to use the pysical memory up before it uses the swapfile which increases performance.

I've toyed with this idea at work and have noticed it actually isn't helping anything at all in most cases. So I did some searching and found out this is VERY MISLEADING INFORMATION!

All you people that have been telling people to do this need to go to Tech Net and READ THIS!

That is actually a default setting in Windows 95 and slows performance when enabled. The only reason you would want to use this setting is if your computer is hitting the hard drive while idle (which the article explains)

- Thanks
 

Lord Evermore

Diamond Member
Oct 10, 1999
9,558
0
76
It'd be nice if that was in some sort of readable form. It's completely not understandable by a normal user.
 

fkloster

Diamond Member
Dec 16, 1999
4,171
0
0
Ummm, hate to say it but, TOLD YOU SO!!!! :) Check this Technonut, Guilty, Noriaki, Badthad, Taz4178!!!!!! :) :)

INFO: The Windows 98 PageFile_Call_Async_Manager Service

--------------------------------------------------------------------------------
The information in this article applies to:

Microsoft Windows 98
Microsoft Windows 98 Driver Development Kit (DDK)

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


SUMMARY
Windows 98 added a new feature, PageFile_Call_Async_Manager, that allows the Memory Manager to asynchronously write out page file (swap file) buffers during periods of time when VFAT file system activity is not busy.

This feature can affect the behavior of VxDs that monitor and/or otherwise intercept PageFile VxD functions. This article is applicable to you if your VxD hooks PageFile_Read_Or_Write, and you discover that you are not seeing all the page file traffic when using Windows 98.



MORE INFORMATION
You can disable this feature, causing the system to behave as Windows 95 does, at some cost in overall system performance. Add the following entry to the System.ini file, in its [386Enh] section:

[386Enh]
ConservativeSwapfileUsage=1
When the above Boolean is set to TRUE as shown, PageFile_Call_Async_Manager is never called. If this entry is absent from System.ini, the default setting for ConservativeSwapfileUsage is 1 for Windows 95, and 0 (zero) for Windows 98.

When Windows 98 performs asynchronous writes to the swapfile, this activity is not captured by hooking PageFile_Read_Or_Write(). The PageFile_Set_Async_Manager service is called by VFAT to notify PageFile that VFAT is the manager of Async swap file activity; in fact, this makes the PageFile_Call_Async_Manager service become handled by a routine inside VFAT.

Memory Manager calls PageFile_Call_Async_Manager, supplying the service with a pointer to a Filesystem Idle routine mmFsIdle (in the Memory Manager). VFAT later calls this function when VFAT is completely idle (all pending VFAT writes have been written), so Memory Manager can execute asynchronous writes:
ULONG INTERNAL mmFsIdle(void);
In return, PageFile_Call_Async_Manager returns a pointer to a function that Memory Manager uses to perform the (async) writes to the pagefile:

extern int (CDECL *pfnAsyncPageOut)(PVOID pvBuffer, ULONG bFileOffset);
This function is actually inside VFAT (WriteAsyncSwapPage), which copies one page into its cache buffer and writes it. mmFsIdle uses an algorithm that generates pfnAsyncPageOut calls (that are actually calls to the internal VFAT routine).

Following is how the Memory Manager registers itself with VFAT:
mov eax, offset32 _mmFsIdle@0 ; Our idle callback.
VxDCall PageFile_Call_Async_Manager ; NOTE: the manager is VFAT.
jc DICDoneP ; Failed.
mov _pfnAsyncPageOut, eax
 

Whitedog

Diamond Member
Dec 22, 1999
3,656
1
0
Yea Evermore, that's what I hate about Tech Net... :| They always write it thinking the people who will be reading it knows everything they do. I usually have to discuss everything there with my co-workers before I halfway understand what the h3ll they are telling you.

That's why I added the last sentence at the bottom... Unless your computer is hitting the hard drive while idle (has to do with VxD's?? "virtual divice drivers"), you shouldn't use this setting. That's about all I can translate at this point.
 

CQuinn

Golden Member
May 31, 2000
1,656
0
0
YMMV...

Some of us have seen improvements in performance with this feature enabled Whitedog.
It all comes down to how you define "performance".

For me there is a noticable "skip" in switching between multiple windows and
running some background tasks if ConservativeSwapfileUsage=0 on my systems.
But I tend to run tasks that I don't want to swap out until it is absolutely
necessary. For me, using this feature makes my system response "smoother" without
a noticible drop in speed. Someone who has less memory in their system, or who
runs programs that tend to load a lot of redundant DLLs might get better performance
by leaving the default setting enabled.

I wouldn't say the advice is misleading, as some others who use it have pointed out,
it may or may not be of benefit depending on what you do with your computer.
Better advice would be to explain WHAT this feature is supposed to do, instead of
blindy saying "here's another tweak for Win98" as some have done.


 

fkloster

Diamond Member
Dec 16, 1999
4,171
0
0
I'm not trying to be a smart-arse, but I do remember reading somewhere that there was some contraversy over this topic.
 

Lord Evermore

Diamond Member
Oct 10, 1999
9,558
0
76
Links work just fine, no need to copy and paste the entire thing and make the thread horribly long.
 

office boy

Diamond Member
Oct 12, 1999
4,210
0
0
So no one has ever heard people bitch about 98 being a memory hog, and how much better win95 was?

Just because MS says it's better dosn't make it so.
 

Packet

Senior member
Apr 24, 2000
557
0
0
On a personal note

The sole command, ConservatieSwapfileUsage=1 dramaticly smoothed out diablo on my computer.
Before I had horrid lag spurts of pure harddrive lag playing diablo II, and lack of ram is not the cause, I have 196 (which should be plenty). After using it, the hd hits dramaticly decreased. Durring the time I played Diablo II it was very worthwhile to have on.
 

Noriaki

Lifer
Jun 3, 2000
13,640
1
71
lol why do I get bold fkloster? And learn to spell ;)

Honestly I found Win95 to be better at memory managament than Win98..the only reason I upgraded to Win98SE is becuase USB sucked in Win95...my Scanner wouldn't work at all...

But I've found this setting to help me, maybe it's becuase I have enough memory that I don't need Vmem at all so how effeciently it writes to Vmem is of no concern to my system...so just not using it at all is better. I've often wondered if a Win98SE system that needed some Vmem wouldn't be more effecient with this setting off so that Win98SE could time the Vmem accesses better...but that seemed to be putting alot of faith in Win9x's memory manager ;)
I guess I know now that if it does need Vmem that it's better to have this off. I keep my Vmem active but leave this setting on so that it won't use it unless it absolut ely needs it (which with 384MB of RAM isn't very often in Win98).

But I'll admit I was wrong, CSFU=1 isn't for all situations.

I'm curious though this seems sort of like the different between WriteBack and WriteThrough caches...and definately seems like a good idea but how well does it work? Win9x has a pretty crappy memory manager.
 

office boy

Diamond Member
Oct 12, 1999
4,210
0
0
See the thing is MS needs to get their crap working the best on all systems, and the sad fact is that most systems out there now only have 32-64Mb of memory, and if you don't have that swap space your in trouble. But for a lot of us taking advantage of good memory prices 384+ is not uncommon.
 

Technonut

Diamond Member
Mar 19, 2000
4,041
0
0
Well, here is what I came up with on a fresh reboot with my start up programs running. I set a fixed 300MB swapfile, and ran the system monitor with the CSFU=1, and then disabled it and rebooted. This is with 384MB of RAM in my system.


ConservativeSwapfileUsage=1


ConservativeSwapfileUsage=1 Disabled

I also ran Winstone Content Creation, followed by Q3A with CSFU=1, and had no swapfile usage.

There was no hard drive performance gain or loss with either CSFU=1 enabled or disabled using HD Tach. I am curious where this "performance loss" using CSFU=1 is??
 

Technonut

Diamond Member
Mar 19, 2000
4,041
0
0
BTW, I just reset "Let Windows Manage My Virtual Memory Settings" like I had it before, with CSFU=1 enabled, and guess what? The 300MB Win386.swp file vanished from my drive. Looks like I gained 300MB of hard drive space. I have been using this setting for a long while, and have never had Windows start a swapfile on my drive.
 

Whitedog

Diamond Member
Dec 22, 1999
3,656
1
0
I think the switch does work quite well "IF" you have a Lot of memory, as in 256-384+, otherwise, you don't seem to benefit from it much, in fact, I think MS was saying that "with a system with minimal memory (32-64), you would suffer a performance decrease"...?

They should have elaberated on that more by specifying that... AND by adding with "systems with Maximum memory would benifit from it"

I'll say myself it's a poorly informative article that doesn't give the average user much usable information.

I think there is a threshhold at about 128 megs ram. IF you have this much or less, you shouldn't use the setting, with more than that you will benifit. The more you have, the more you will benifit. How's that? :)
 

Whitedog

Diamond Member
Dec 22, 1999
3,656
1
0
Technonut, when I had my system at home running 9x with 384 megs memory, I never had a swapfile either with the switch turned on, in fact, I finally just disabled VM and windows ran fine.

However, that's 384 megs ram... It's a whole new ball game when you start reducing that memory.

This computer I'm working on now has 128 megs. At bootup, I have win386.swp OKB. after I load 4 or 5 apps, I have a swapfile of about 76 megs... so, it isn't giving me any benefit at all. And is even fragmenting I'm sure of.
 

Technonut

Diamond Member
Mar 19, 2000
4,041
0
0
I agree 100% that the setting is effective when using 256MB of RAM and up. I don't think that I ever stated otherwise. The thread that fkloster quoted me as being incorrect, "I told you so"
involved the member asking "How big should i set Windows Swap File for 256MB of RAM?" I stated that the setting of CSFU=1 worked well for me, and at the time of that post, I had 256MB of RAM in my system.

The fact is, if you can afford extra RAM as cheap as it is now, and use CSFU=1, it will increase performance, and save hard drive space that normally is taken by either a set swapfile or Windows managed one. RAM is much faster than the hard drive.

If you cannot afford extra RAM, the setting is not for you, if you have 32, 64, or 128MB of RAM.
 

subhuman

Senior member
Aug 24, 2000
956
0
0
I still load up easily 1 gig of audio files for mixdowns, and I would get "out of memory errors" if I did that...
 

Taz4158

Banned
Oct 16, 2000
4,501
0
0


<< I agree 100% that the setting is effective when using 256MB of RAM and up. I don't think that I ever stated otherwise. The thread that fkloster quoted me as being incorrect, &quot;I told you so&quot; >>



It definitely has been an improvement on my rig. I've used it ever sice i had 128 megs ram going back quite a while now. Have always had a 0 byte WIN386.SWP file, and I do a LOT of mem intensive work.
 

Guilty

Senior member
Nov 25, 2000
427
0
0
Could that information be interpreted more horribly? The only problem with conservative swap file is that if you use all you're RAM and hit swap, it isnt balancing between them. It's leaving the old and possibly useless data in RAM. Now, of course this isnt good, but you need to realize that windows also does a lot of pointless swapping without conservative swap file. So it all comes down to the inability of some programs to release all their resources before exiting, that would lead to build up of useless data in your RAM, with forced use of swap for new data. But back in reality, where most of us reboot every few days/week/etc anyway, it's of minimal concern to me. So to say this hurts preformance is ludicrous, go read the definition of a millesecond and a nanosecond and get back to me. Using RAM when possible is ALWAYS faster. Turning it off simply lets windows &quot;assume&quot; what data can be moved to swap and what should remain in RAM, obviously windows cant always know what data is more important to you, so you WILL end up with important data in the swap file, leading to decreased preformace.