Michael, Page faults occur when the memory manager is asked for a register that is not in PHYSICAL memory (meaning it has been swapped to the disk. The word "fault" was an unfortunate choice by some original assembly programmer because it makes folks think something is wrong when it may or may not be wrong. When a chunk of memory is called for the memory manage figures out if it exists physically (in RAM) or virtually (pretending it is in RAM but really swapped to the disk). If the memory chunk is actually on the disk, the memory manager says "wait just a sec" and then goes to the disk to retrieve the info into physical memory before sending it back to the calling process. This "wait a sec" operation is a page fault. On a very busy server the memory manager might also have to figure out how to swap something else to disk to make room for the memory required by the fault.
In general very high page fault rates mean that a good deal of what the system needs is in the pagefile instead of in physical memory. Note, I said "page fault rates". The actual number of page faults might be irrelevant, since a 1 time operation calling something from the pagefile can result in a very high number. What is more key is how often the number of page faults increments. If you see constant and steady activity it's possible you are swapping in and out in a steady stream and your disk is thrashing (leading to disk errors and things like corrupt master mdb files :) Typically if you see a high rate you need more memory or you need to fine tune the memory and processes that are running. In the case of JRUN and MSSQL on the same machine (not a great idea but common) - as well as SWOC (the sequelink access driver - you mentioned MS Access), you need to specify what amount of memory is going to jrun, what amount to mssql and then have a reserve for kernel, swoc, and other operations. So for example, on a 2 gig machine, you might set jrun to 756 megs heap (effectively about 900 megs) set mssql to run 512 megs and leave the rest for everything else. Of course, depending on the type of setup you would need to adjust those values - every system is different. Finally, if you run MSSQL on it's own box the best choice is usually to give it its head and let it tune it's own memory usage. But if you run it on a box with JRUN you need to specify a top limit - otherwise it will sometimes overrun the box. It's just a smarty pants and thinks it is always the most important software on the box (and really it should be - on it's own box). Hope this helps. Mark A. Kruger, CFG, MCSE (402) 408-3733 ext 105 www.cfwebtools.com www.coldfusionmuse.com www.necfug.com -----Original Message----- From: Michael Muller [mailto:[email protected]] Sent: Wednesday, May 20, 2009 8:41 AM To: cf-talk Subject: (ot) Page Faults I'm dealing w/ a corrupt SQL Server master DB right now, so all my SQL Server sites are offline at the moment (ugh) -- but that's not why I'm here. While trying to figure out what in heck was going on on my server I looked at Task Manager processes and sorted by various columns until I saw the Page Faults column... jqs.exe was at 1.5 billion and jrun.exe was at 715 million. sqlservr.exe was at 218 million. So, after rebooting and restarting these processes (and getting all my smaller Access sites back up -- since CF was hung on all the SQL Server requests) they were all set back to 0, and then immediately started climbing back up. jqs.exe is already over 300,000 and jrun is at 150,000. So... wth? Is this a hardware issue? >From Wiki Answers: "In computer storage technology, a page is a fixed length block of memory that is used as a unit of transfer between physical memory and external storage like a disk, and a page fault is an interrupt (or exception) to the software raised by the hardware, when a program accesses a page that is mapped in address space, but not loaded in physical memory." ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| Want to reach the ColdFusion community with something they want? Let them know on the House of Fusion mailing lists Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:322667 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4

