NOTICE: Registration may require manual admin activation. After registering visit https://bitsum.com/contact/ to request account activation.
Started by bertie97, June 07, 2013, 03:27:00 AM
Quote from: bertie97 on June 07, 2013, 03:27:00 AMThis feels like a dumb question but ... The default memory priority setting - which is highest 0 or 7?The ratings of 1 as 1st priority vs 0 having the lowest weight of importance have me conflicted.
Quote from: bertie97 on June 07, 2013, 08:55:07 AMThanks edkeifer that's a useful article.I am/was leaning to 0 = lowest, but still ... would be nice to have confirmation.Where's the resident expert BenYeeHua when I need him?!
QuoteEach thread has its own memory priority5: normal1: lowThis determines which standby list is used for the page (when/if it arrives on the standby list)Thread priority comes from process memory priorityCan be changed for process or individual threadSetPriorityClass or SetThreadPriority â€œbackground modeâ€
QuoteMEMORY_PRIORITY_VERY_LOW 1Very low memory priority.MEMORY_PRIORITY_LOW 2Low memory priority.MEMORY_PRIORITY_MEDIUM 3Medium memory priority.MEMORY_PRIORITY_BELOW_NORMAL 4Below normal memory priority.MEMORY_PRIORITY_NORMAL 5Normal memory priority. This is the default priority for all threads and processes on the system.
QuoteThe memory priority of a thread or process serves as a hint to the memory manager when it trims pages from the working set. Other factors being equal, pages with lower memory priority are trimmed before pages with higher memory priority.
Quote"Standby ListThe Standby list contains unmodified pages that have been removed from process working sets, which effectively makes the Standby list a cache. If a process needs a page that is on the Standby list, the memory manager immediately returns the page to its working set.All pages on the Standby list are available for memory allocation requests. If a process requests memory, the memory manager can take a page from the Standby list, initialize it, and allocate it to the calling process. This is called repurposing a page.Pages on the Standby list are often from recently used files. By keeping these pages on the Standby list, the memory manager reduces the need to read information from the disk. Disk reads can decrease system responsiveness."
QuoteIn Vista & later, there are 8 prioritized standby listsPages are removed from lowest priority list firstLow memory priority process will keep re-using low priority pagesHigher priority information remains cached
QuoteStandby List PopulationPriority 7 come from a static set (pre-trained at Microsoft)Pre-populated at each bootIncludes pages related to user input that requires fast responsiveness (right-click, desktop properties, control panel, start menu, etc.)Priority 6 are pages that SuperFetch considers important, or useful (will rarely get repurposed)Priority 5 are standard user pages (memory priority 5)Priority 1 are low priority user pages (memory priority 1)Priority 0-4 may be Superfetch decayed, cache manager read-ahead and pagefault clustering
Quote from: edkiefer on June 07, 2013, 07:23:46 PMSo, long story, don't mess with it, it gets complicated
Quote from: edkiefer on June 08, 2013, 07:01:00 AMThe thing is once you get out of normal priority with memory, do you also set i/o or cpu priorities the similar values (lower or higher ) .
Quote from: bertie97 on June 08, 2013, 07:34:21 AMLooks like I inadvertently gave you a lot of work BYH!! I guess this will make you an English language expert also, so not all bad. Not sure about the TZ, I had figured you were enjoying yourself away from computer madness. BUT Thanks for the detailed feedback. I think that the superfetch handling may be a key issue for me, I will have to start examining that.I have been juggling I/O & CPU priorities for key tasks & I think there is a need to test RAM handling in that context, but 0-7 as a scale is inefficient.This is because, as you show, the scale isn't rigid - like growing importance [number weight]; but more a grid - like a map, with priority pathing. [this does fit the paradigm, so it's logical if not quite obvious.]I was messing with DVD burning speeds & found dropping the memory priority from 5 to 3 has improved the speeds. I'm not exactly clear on why unless this is a superfetch/cache variable that is helping stream data.Your details seem to support that hypothesis, so I guess I will have to make a few more coasters & see what happens.
Quote from: bertie97 on June 09, 2013, 12:48:30 PMYeah this is where the grid vs weight interpretation is coming in. I wasn't thinking of forcing superfetch handling (if I even could in this context?) but rather, as you say whether superfetch will be called or not by the burning SW by default. In this case setting my priority to 3 has made burns smoother & quicker with less buffer ramping. I'm wondering whether the DVDRW buffer activity has altered now because it isn't waiting for the RAM to catch up.... If that is the case, the question is why has that interaction become more obvious recently? Has PL shown a hole in the RAM-DVDRW pipeline?Not that I need a definitive answer, just that it is an interesting turn of events that using PL has brought to my attention.I don't have much deep knowledge of superfetch, not a bad intro: -http://www.osnews.com/story/21471/SuperFetch_How_it_Works_MythsIn theory Win or the burning SW should be using superfetch for burns anyway, but as I say the feel of all this has changed in v6 of PL.
QuoteYep TZ - timezone.I will add I am surprised you have not added any red herrings yet BYH!
Quote from: Hotrod on June 12, 2013, 03:24:12 PMRed herring is an English-language idiom, a logical fallacy that misleads or detracts from the issue. It is also a literary device that leads readers or characters towards a false conclusion, often used in mystery or detective fiction.In literature, a red herring is a false clue that leads readers or characters towards a false conclusion.see also: wild goose chase - An impossible pursuit of something unattainable.