פורסם 2011 בדצמבר 2313 שנים איך לקבוע סוואפ עבור תוכנה ספציפיתיש לי בעיה שתוכנות מסויימוץ הולכות לסוואפ וזה עושה לי צרות.יש דרך לגרום לתוכנה ספציפית לא ללכת לסוואפ לעולם, ולתוכנות אחרות ללכת לשם תמיד?ענבר.
פורסם 2011 בדצמבר 2413 שנים תני לי לנחש, disk thrashing בשרת DB ? קודם כל, יש אפשרות להגדיר עד כמה הקרנל ישתדל לדחוף דברים ל swap,זה נקרא swappiness: [vitali]:~/Work/tmp >> sysctl vm.swappinessvm.swappiness = 40[vitali]:~/Work/tmp >> sudo sysctl -w vm.swappiness=0vm.swappiness = 0 הערכים הם מ 0 - 100. 0 אומר תעשה swap רק כשאתה חייב. יש syscall בשם mlockall שמונע swapping עבור כל הדפים של אותו תהליך. אבל זה overkill אם את שואלת אותי. תזכרי שאין גישה ישירה לדפים ב swap, כלומר אם אני ניגש לכתובת (ווירטואלית) מתוך דף שכרגע נמצא ב swap (כלומר page fault) הקרנל צריך להביא את הדף לתוך הזיכרון הראשי קודם. במילים אחרות דפים שהם כרגע פעילים לא יכולים להיות ב swap. בגלל זה אני מציע שתעשי nice לתהליך + ערך swappiness מתאים. ב 99% מהמקרים זה אמור לעבוד.
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.