ה-Paging File שלי יותר גדול

קיימות שאלות וסוגיות רבות סביב נושא ה- Paging file וכיצד להגדיר ולעבוד איתו. נתנאל בן-שושן בדק וחזר עם כמה המלצות שיכולות לעזור לכם להוציא את המקסימום מה-Paging File שלכם.

computer-memory-chipהערה: ה- Paging file מוכר גם בשמות Pagefile, Swap file. הכוונה לאותו קובץ אשר כולם מכוונים אליו בשמותיהם השונים, קובץ ה- pagefile.sys.

למי יש יותר גדול?

גודלו של ה- Paging file אינו דבר שרירותי; במידה והמחשב שלך מכיל מתחת ל- 2GB של RAM אזי קובץ ה- Paging file שברשותך יהיה גדול פי 1.5 מהזיכרון הפיזי. במקרה בו המחשב שברשותך מגיע עם יותר מ- 2GB של RAM קובץ ה- Paging file כברירת מחדל היא בסדר גודל שבין 2046-4092MB. זוהי שיטת העבודה הנהוגה כברירת מחדל אך לעיתים איננה אופטימלית ו\או מתאימה כנדרש. דרך אחת מיני רבות, אך מועדפת עליי, לקביעת גודל ה- Paging file של המערכות הנוכחיות (64 ביט) היא להשתמש ב- Perfmon ולנטר אחר ה- Counters הבאים, כאשר יש להתייחס גם לערכים שלהם:

  • Memory\\Available Bytes – לא פחות מ- 4MB
  • Memory\\Pages Input/sec – לא יותר מ- 10 pages
  • Paging file\\%Usage – לא יותר מ- 70%
  • Paging file\\%Usage Peak – לא יותר מ- 70%
  • Process\\Page File Bytes Peak – בעל הערך Not applicable
  • כאשר Paging file\\%Usage שווה או גדול יותר מ- 70% ייתכן וניאלץ להגדיל את ה- Paging file או לצור Paging file נוסף על דיסק נפרד.

לא על ה- Counters לבדו חי האדם…

בנוסף, לאלו מכם שמעוניינים בחוות דעת שנייה, הינכם מוזמנים לעיין ב- Process Explorer ב- System Information (ניתן ללחוץ על Ctrl+I בכדי להגיע לחלון הנ"ל, או פשוט לאתרו תחת תפריט View).

Process Explorer

Process Explorer

באם תשימו לב תוכלו לראות את ה- Commit Charge Limit שזהו למעשה ה- Virtual Memory ללא הגדלת ה- Paging file (כלומר כלל הזיכרון הפיזי במחשב, ה- RAM + גודלם של כל קבצי ה- Paging במחשב). ה- Commit Charge Peak, כשמו כן הוא, מהווה את נקודות השיא של השימוש ב- Paging file מאז שהמחשב אותחל (Booted) לאחרונה. מטרת בדיקת ה- Commit Charges הללו היא לוודא שה- Limit גדול יותר מן ה- Peak; מלבד זאת, חשוב לוודא כי ההפרש בין ה- Limit ל- Peak עולה או שווה ל- 70%, כלומר שתמיד יהיה קיים מצב בו ה- Peak אינו מגיע ל- 70% ו\או גדול מן ה- Limit. מידע נוסף אודות המידע הכלול ב- System Information כולל נושא ה- Commit Charges ניתן למצוא בספר Windows Internals בעמודים 446-447.

נקודה נוספת שמומלץ לשקול היא לוודא שהערכים Initial Size ו- Maximum Size זהים. מצב שכזה ימנע מן ה- Paging file לגדול, פעולה אשר עלולה לגרוע מביצועי המערכת ולגרום לבסוף לפרגמנטציה של ה- Paging file. מבחינת ביצועים שווה לשקול גם חלוקה של ה- Paging file בין דיסקים שונים.

מערכות עם הרבה זכרון

במערכות עם כמות גדולה של RAM (דוגמת שרתים) דוגמת 32GB של RAM שרצות על מערכת הפעלה x64 מומלץ להגדיר את ה- Paging file שבמחיצת מערכת ההפעלה ל- 8GB הן בערך Initial והן בערך Maximum. פעולה זו תגרום לכך שלמערכת תהיה יד חופשית בכל הקשור ל- Paging ומלבד זאת, במקרה של Crash (מסך כחול, טפו טפו… חמסה חמסה…) יכתבו אך ורק Kernel memory dumps (די מפחיד ולא יעיל לכתוב Full memory dump של מכונה עם 32GB RAM. חשבו מה היה קורה במערכות Windows Server 2008 R2 Enterprise/Datacenter עם מקסימום זיכרון, ורק תזכורת קלה: התמיכה המקסימאלית במערכות אלו היא ב- 2TB RAM…).

למה דווקא 8GB Paging file במערכות עם 32GB של RAM? חשוב לציין תחילה שמלבד נוכח העובדה שיצירה של Paging file של 32GB x 1.5 איננה מעשית עקב היותו קובץ עצום, חשבו על הנקודות הבאות:

  • כיצד תעביר קבצים גדולים לצורכי ניתוח?
  • משך הזמן אשר נדרש ליצירת קובץ Paging גדול
  • איזה שימוש פרקטי ייעשה בו
  • כתיבת Full memory crash dump אינה ריאלית ובזבזנית
  • כמות שטח הדיסק שתוקצה ל- Paging file תהא גדולה

לכן, באופן מעשי הדבר ניתן לביצוע. אך מבחינה ריאלית הוא לא ישים. מארק רוסינוביץ', האיש מאחורי Sysinternals וספרי Windows Internals, מציין בפוסט נהדר בנושא Virtual Memory המהווה חלק מסדרת פוסטים רחבה (ששווה קריאה בלי שום קשר, אלא אם כן קראתם את Windows Internals 5th Edition…) את סוגיית גודל ה- Paging file (תחת How Big Should I Make the Paging File?), שווה קריאה. חשוב לציין את המשפט הבא בפוסט שלו: “The maximum is either three times the size of RAM or 4GB, whichever is larger.” המשפט הנ"ל נכתב עבור מערכות ויסטה ו- 2008, אך נכון גם ל- 2003. ד"ר מארק רוסוניביץ', מספק בפוסט שלו בנושא Virtual Memory, הסבר די יעיל ששווה לשקול עבודה לפיו גם והוא פתיחת כלל האפליקציות שאמורות לרוץ על המחשב במקביל כולל עבודה שוטפת עם המחשב והזנת נתונים ולפי הנתון המוצג ב- Commit Charge Peak.

אז מה הגודל שעליי להקצות ל- Paging file שלי?

השאלה הזו, שהיא אחת מהמתבקשות בסופו של פוסט שכזה היא שאין גודל קבוע עבור כלל המחשבים. כפי שפתחתי את הפוסט כל מקרה לגופו – יש להתחשב בכל מחשב באופן נפרד עקב כמות הזיכרון שמותקנת בו וה- Virtual Memory שדרוש לעבודה. במידה ואין מידע נוסף זמין עבורינו עבור אותו מחשב, ההגדרה של גודל הזיכרון הפנימי (RAM) x 1.5 היא נקודת התחלה טובה.

במערכות מאסיביות ושרתים יש להקצות מספיק זיכרון פנימי לאפליקציות (דוגמת Exchange Server) ולמערכת ההפעלה שרצה על-גבו כך שלא יווצר מצב בו קיים מחסור ב- RAM ולמעשה לא ייעשה שימוש ב- Paging file. במערכות שמכילות כמות עצומה של RAM (כמו דוגמת ה- 32GB לדוגמה של 32GB x 1.5) שימוש ב- Paging file עצום אינו ריאלי וחסר תועלת.

מצד שני, דיסקים היום הם מצרך זול, והקצאה של Paging file גדול לפי הנוסחא של RAM x 1.5 אפשרית עבור מערכות מסוימות (לא להשתולל ולהקצות למערכות עם 32GB קובץ עצום).כמו כן, חשוב לציין כי שימוש רצוף ב- Paging file על-ידי מערכת ההפעלה מעיד על חוסר ב- RAM, ולכן, מומלץ להתקין זיכרון נוסף במחשב על-מנת לשפר את ביצועי המערכת.חשוב לציין שוב, בשורה לתחתונה לסיכום שגודל של Paging file במכונה מסוימת אינו שרירותי לכלל המכונות בארגון. כלומר, הגודל של Paging file במכונה מסוימת לא קובע (את גודל ה- Paging file של כלל המכונות בארגון).

.

הערה:כל הכתוב לעיל הינו בגדר דעה אישית שלי אשר מתבססת על דוקומנטציה רשמית של מיקרוסופט. הוא אינו בגדר תפיסה רשמית או שיטת עבודה מומלצת וכל מקרה לגופו. אתם מוזמנים להגיב ולתת חוות דעת אודות תפיסתכם ואשמח להחכים בעצמי. אך שוב כאמור, זוהי רק דעה אישית.

הפוסט פורסם במקור בבלוג האישי של נתנאל בן-שושן

נתנאל בן-שושן

נתנאל בן-שושן (CSA, JNCIA-SSL, MCSA/E, MCTS, MCITP) הוא יועץ טכנולוגיות ומרצה אשר עוסק בעיקר בתשתיות מיקרוסופט, תקשורת ואבטחת מערכות מידע. נתנאל מפעיל את האתר www.ben-shushan.net אשר מכיל שלל מאמרים, טיפים וטריקים בנושאי ה- IT השונים ומפעיל בנוסף לכך בלוג אישי בקהילת הבלוגים של מיקרוסופט ישראל. בזמנו הפנוי נתנאל אוהב לצייר, לבשל ולדוג.

הגב

3 Comments on "ה-Paging File שלי יותר גדול"

avatar
Photo and Image Files
 
 
 
Audio and Video Files
 
 
 
Other File Types
 
 
 
Sort by:   newest | oldest | most voted
עמרי
Guest

אתה יודע שיש עוד מערכות הפעלה, וגם הן – הפלא ופלא משתמשות בקובץ SWAP בצורה זו או אחרת.
זה אולי ברור לך מאליו שאתה מדבר על חלונות, אבל כדאי להזכיר את זה בשלב מוקדם של הפוסט.

עירא
Guest

עמרי, מרגע שהוא אמר פייג'ינג ולא סוופ זה ברור שזה לא יוניקס או דמוי… :)

בכל מקרה, במערכות הפעלה שונות וכעת הרצת הרכב תוכנות שונה, הגדלים המומלצים שונים. אין כללי אצבע נכונים להכל. למשל מערכת LAMP בסיסית שרב הזמן פנויה או עמוסה, הSWAP יתמלא לאורך זמן בגלל צורך שהקרנל מחליט עליו כיותר חשוב (למשל פייל קאש), בהתאם לעומס ואופי עבודת המערכת לאורך זמן.

נתנאל בן-שושן
Guest

עמרי: ציינתי למלכחתחילה שמדובר ב- pagefile.sys (תסתכל בהערה הכי ראשונה בפוסט)

עירא: בנוגע ל- LAMP ושאר חיות, ציינתי כבר כי כל מקרה לגופו ויש לדגום מספר ערכים ב- Process Explorer, Perfmon ובפוסט המקורי באתר שלי תוכל לראות גם המלצה נוספת של מארק רוסינוביץ' לקביעת גודל ה- PF.

wpDiscuz

תגיות לכתבה: