Win32PrioritySeparation: השהיה ו-FPS בעומס CPU מלא
בדף זה
תשובה קצרה:
Win32PrioritySeparationאכן שולט ב-foreground boost ובחלק ממדיניות הקוונטים של CPU. הבדיקה ההיסטורית שלנו לא מצאה ערך טוב יותר באופן אוניברסלי. ברירת המחדל של Windows הראתה השהיית click-to-photon ממוצעת מעט נמוכה יותר, ו-0x1Aתאם את ה-FPS והפלט P1 הטובים ביותר בבדיקה אחת בעומס CPU של 100%. בגלל היעדר חזרות FPS בלתי תלויות ודגימות click גולמיות, אנו ממליצים על ברירת המחדל, ו-0x1Aנחשב רק להשערה ניתנת לבדיקה עבור תרחיש CPU.
סטטוס: הקשר של הפרמטר ל-foreground boost מתועד על ידי Microsoft. קריאת הפרמטר נצפתה בטרייסים של מערכת Windows 11 24H2 ו-25H2 שנאספו בעבר. ההשפעה על המשתמש נמדדה בסדרה היסטורית של Windows 10 22H2, אך לא שוחזרה במערכת אחרת או בהרצה בלתי תלויה.
טענה ניתנת לבדיקה
Section titled “ טענה ניתנת לבדיקה”בדקנו שלוש טענות שונות שאין לאחד ביניהן:
- הפרמטר קיים וקשור למדיניות מתזמן Windows.
- הערכים
0x02ו-0x1Aמייצגים מדיניויות קוונטים שונות עם אותו foreground boost מקסימלי. 0x1Aמשפר FPS או השהיית משחק בעומס CPU מלא.
שתי הטענות הראשונות מאושרות על ידי תיעוד ציבורי ותצפית על הבילדים שנחקרו. השלישית דורשת מדידות ואינה הופכת לנכונה רק בגלל מבנה הפרמטר.
תחום המחקר
Section titled “ תחום המחקר”| שכבה | סביבה | תוצאה |
|---|---|---|
| תיעוד ציבורי | Microsoft WMI, CPU Analysis ו-Windows Internals | מתוארים foreground boost, quantum ומבנה הביטים ההיסטורי |
| תצפית מערכת | Windows 11 24H2 ו-25H2 | קריאת הפרמטר נצפתה בטרייסים שנאספו בעבר |
| Click-to-photon | Windows 10 22H2, Valorant, CPU 100% | 300 מדידות לכל ערך, נשמרו אגרגטים |
| FPS | אותה סדרה היסטורית | capture אחד של CapFrameX לכל תצורה; חלק מהשורות אינן שמישות בגלל תקיעת capture |
טרייס דינמי של Windows 10 22H2 עבור פרסום זה אינו קיים. גם עבור Windows 11 26H1 אין טרייס שמיש. מדידות Windows 10 אינן ניתנות להעברה ל-Windows 11 ללא חזרה.
היכן נמצא הפרמטר
Section titled “ היכן נמצא הפרמטר”| שדה | ערך |
|---|---|
| Hive ונתיב | HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\PriorityControl |
| שם הערך | Win32PrioritySeparation |
| סוג | REG_DWORD |
| ערך התחלתי מתועד של client Windows | 0x02 (2) |
Windows Internals מכנה את 2 הערך ההתחלתי ב-client Windows ובשרת שאינו מוגדר כ-application server. בטרייס שלנו של Windows 11 25H2 ה-DWORD היה נוכח גם כן במפורש עם הערך 2.
לכן איננו רואים בהיעדר הערך ברירת מחדל אוניברסלית של Windows. הוא יכול להופיע לאחר שינוי image, מחיקה ידנית או פעולות של כלי צד שלישי, אך במחקר הנוכחי תרחיש clean-install עם DWORD חסר לא שוחזר דינמית. אין לפרש היעדר שורה אוטומטית כ-0.
כיצד בנוי הפרמטר
Section titled “ כיצד בנוי הפרמטר”Microsoft ממפה את המאפיין Win32_OperatingSystem.ForegroundApplicationBoost ל-Win32PrioritySeparation ומתעדת את הערכים 0, 1 ו-2: ללא boost, boost מינימלי ו-boost מקסימלי של foreground application.
הדוגמה הרשמית Windows Internals Sixth Edition מתארת את הפרמטר כקבוצת שדות:
| ביטים | ייעוד |
|---|---|
| 0-1 | דרגת foreground boost |
| 2-3 | קוונטים משתנים או קבועים |
| 4-5 | קוונטים קצרים או ארוכים |
0x02 הוא הערך ההתחלתי המתועד של client Windows: הוא קובע foreground boost מקסימלי, ואת שאר השדות משאיר למדיניות המערכת. עבור client Windows זה מתאים היסטורית לקוונטים משתנים קצרים, שניתן לבטא במפורש כ-0x26. 0x1A קובע קוונטים קבועים ארוכים עם אותו foreground boost מקסימלי.
הפרויקט הפתוח Win32PSCalculator מציג את השקילות הזו ישירות. הוא עושה מסכה לקלט דרך 0x3F, מפרק שלושה שדות של שני ביטים ומצמצם רשומות שונות לאחת מ-12 צירופים קנוניים. זה עוזר לזהות ערכי placebo שנראים אחרת אך אינם יוצרים scheduler mode חדש.
המסמך Windows Internals הוא היסטורי. אנו משתמשים בו כדי לפרש את השדות, אך איננו טוענים שכל טבלאות ה-quantum הפנימיות אינן משתנות בכל הבילדים המודרניים.
מחשבון ערכים
Section titled “ מחשבון ערכים”מפענח 6 סיביות
בדיקת מצב בפועל
הזן את הערך שמצאת ברשימת ה-Tweak. המחשבון יציג רק את שש הסיביות שבשימוש ואת השילוב הקנוני עם אותו מצב. הוא אינו משנה דבר במחשב.
המחשבון פועל רק בדפדפן ואינו קורא ואינו משנה את ה-Registry. התוצאה שלו מציגה שקילות של צירופי ביטים, ולא FPS או השהיה צפויים. אותה גרסה זמינה בעמוד ההגדרה של BoosterX.
מדוע התוצאה עשויה להיות תלויה בעומס
Section titled “ מדוע התוצאה עשויה להיות תלויה בעומס”המתזמן בוחר thread מוכן בהתחשב ב-priority, affinity, מצב ו-quantum שנותר. לאחר מיצוי ה-quantum ה-thread עשוי לוותר על המעבד ל-thread מוכן אחר באותו priority. להחלפת הקשר יש עלות, ולכן קוונטים ארוכים יותר יכולים להפחית scheduler turnover ולתמוך ב-throughput בתחרות חזקה על CPU.
זה מסביר כיוון אפשרי של ההשפעה, אך אינו מבטיח שיפור למשחק. quantum קבוע ארוך יותר יכול בו-זמנית להרע את ההיענות של threads אחרים. אם CPU אינו מהווה צוואר בקבוק, ייתכן שלא יהיה רווח מדיד.
מתודולוגיית הבדיקה ההיסטורית
Section titled “ מתודולוגיית הבדיקה ההיסטורית”הבדיקה בוצעה ב-Valorant על Windows 10 22H2 בעומס CPU מתועד של 100%. עבור כל ערך Registry בוצעו 300 מדידות click-to-photon בעמדה חומרתית של BoosterX. האות החשמלי של כפתור Logitech G PRO X SUPERLIGHT מפעיל טיימר, וחיישן אופטי עוצר אותו לאחר שינוי בהירות על המסך. המסלול המלא מתואר במתודולוגיית המחקרים.
בטבלה נשמרו AVG, STDDEV, MIN ו-MAX של ההשהיה. עבור FPS שימש CapFrameX, אך בבלוק הזמין יש רק capture אחד לכל תצורה. עבור חלק מהערכים ה-capture נתקע, ולכן שורות FPS אלו מסומנות כלא זמינות ואינן משוחזרות בהנחות.
300 דגימות ה-click המקוריות, P90, ההתפלגויות, מניפסט החומרה/דרייבר המדויק וחזרות FPS בלתי תלויות אינם מקושרים לסדרה הישנה הזו. זה מגביל את המסקנה הסטטיסטית.
תוצאות
Section titled “ תוצאות”| ערך | מדיניות | AVG, ms | SD, ms | MIN, ms | MAX, ms | FPS AVG | P1 | P0.1 |
|---|---|---|---|---|---|---|---|---|
0x2A |
קצרה, קבועה, boost גבוה | 16.61 | 2.69 | 10.53 | 21.96 | 351.3 | 226.2 | 43.9 |
0x29 |
קצרה, קבועה, boost בינוני | 17.08 | 3.02 | 10.31 | 25.09 | 336.8 | 254.9 | 14.3 |
0x28 |
קצרה, קבועה, ללא boost | 17.62 | 4.94 | 10.19 | 47.04 | נ/א | נ/א | נ/א |
0x26 |
שקילות מפורשת של ברירת מחדל 0x02 |
15.28 | 3.12 | 9.30 | 23.08 | 334.4 | 111.6 | 36.9 |
0x25 |
קצרה, משתנה, boost בינוני | 16.90 | 2.73 | 11.42 | 23.97 | 334.7 | 102.6 | 27.6 |
0x24 |
קצרה, משתנה, ללא boost | 18.71 | 4.66 | 11.88 | 32.48 | נ/א | נ/א | נ/א |
0x1A |
ארוכה, קבועה, boost גבוה | 15.68 | 3.31 | 9.97 | 23.30 | 355.1 | 256.0 | 41.0 |
0x19 |
ארוכה, קבועה, boost בינוני | 16.80 | 2.61 | 10.08 | 21.95 | 352.0 | 272.9 | 21.5 |
0x18 |
ארוכה, קבועה, ללא boost | 22.74 | 8.81 | 11.65 | 55.10 | נ/א | נ/א | נ/א |
0x16 |
ארוכה, משתנה, boost גבוה | 16.77 | 2.88 | 11.32 | 23.97 | 346.4 | 200.1 | 34.0 |
0x15 |
ארוכה, משתנה, boost בינוני | 16.13 | 2.34 | 10.08 | 20.95 | 332.1 | 144.4 | 17.8 |
0x14 |
ארוכה, משתנה, ללא boost | 19.87 | 5.55 | 12.43 | 52.31 | נ/א | נ/א | נ/א |
н/д משמעו capture FPS לא שמיש או חסר, ולא תוצאה אפס.
השוואה בין ברירת מחדל ל-0x1A
Section titled “השוואה בין ברירת מחדל ל-0x1A”| מדד | Default / שקילות 0x26 |
0x1A |
הבדל נצפה |
|---|---|---|---|
| Click-to-photon AVG | 15.28 ms | 15.68 ms | 0x1A גבוה ב-0.40 ms, כ-2.6% |
| Click-to-photon SD | 3.12 ms | 3.31 ms | 0x1A גבוה ב-0.19 ms |
| FPS AVG | 334.4 | 355.1 | 0x1A גבוה ב-20.7, כ-6.2% |
| P1 | 111.6 | 256.0 | 0x1A גבוה ב-144.4 |
| P0.1 | 36.9 | 41.0 | 0x1A גבוה ב-4.1 |
ההבדל בהשהיה הממוצעת של 0.40 ms קטן באופן ניכר מהפיזור הנשמר של כ-3 ms. ללא דגימות גולמיות אין אפשרות לבנות רווח סמך תקין או לבדוק את צורת ההתפלגות. הבדל ה-FPS גדול לפי המספרים התיאוריים, אך capture אחד לכל מצב אינו מוכיח שחזוריות ואינו שולל השפעה של סדר ההרצות או עומס רקע.
מה אושר
Section titled “ מה אושר”- הפרמטר קשור ל-foreground boost ולמדיניות הקוונטים של מתזמן Windows.
- קריאתו נצפתה ב-Windows 11 24H2 ו-25H2 שנחקרו.
- בסדרה ההיסטורית של Windows 10 22H2 בוצעו 300 מדידות click-to-photon לכל ערך.
- מבין המצבים עם foreground boost גבוה, שקילות ברירת המחדל
0x26הראתה את ההשהיה הממוצעת הנמוכה ביותר. - באותו capture היסטורי
0x1Aהראה את FPS AVG ו-P1 הגבוהים ביותר מבין המצבים עם boost גבוה.
מה לא אושר
Section titled “ מה לא אושר”- ש-
0x1Aתמיד מעלה FPS, P1 או חלקות פריימים. - ש-
0x1Aמפחית click-to-photon או input latency. - שהתוצאה חוזרת על עצמה ב-Windows 11, ב-CPU אחר, במשחק אחר או ללא עומס CPU מלא.
- שערכים שרירותיים מרשימות tweak של אחרים מועילים או בטוחים.
- שההבדלים מובהקים סטטיסטית: עבור הסדרה הישנה אין דגימות גולמיות וחזרות FPS בלתי תלויות.
מגבלות
Section titled “ מגבלות”הטבלה ההיסטורית אינה מכילה מניפסט מלא ומקושר של חומרה, גרסאות דרייבר ומשחק, טמפרטורה, power state וסדר ההרצות. חלונות של capture אחד אינם נחשבים לחזרות בלתי תלויות. שגיאות CapFrameX פגעו בעיקר במצבים ללא foreground boost, ולכן אין להשוות את מטריצת ה-FPS המלאה.
המחקר והכלים שבהם נעשה שימוש שייכים למפתח BoosterX, שמספק את ההגדרה הזו, ולכן למפתח יש אינטרס ישיר בתוצאות. המתודולוגיה וגבולות התחולה מתוארים לעיל, ואת המסקנות ניתן לבדוק לפי הנתונים הפתוחים והמקורות הציבוריים המפורטים. לכן ברירת המחדל נשארת ההמלצה, וה-FPS ההיסטורי הגבוה יותר 0x1A מתפרסם יחד עם התוצאה השלילית בהשהיה הממוצעת וכל המגבלות.
מסקנה מעשית
Section titled “ מסקנה מעשית”השאירו Windows default (0x02) ברוב מערכות client Windows 10 ו-11. אל תחילו 0x1A כ“אופטימיזציית מתזמן” אוניברסלית. ל-Windows Server יש scheduler policy אחרת, הוא לא נמדד ואינו נכלל בהמלצה זו.
בדיקת 0x1A מוצדקת רק בעומס CPU saturation ניתן לשחזור. השתמשו במספר הרצות מזווגות, ערבבו את הסדר, תעדו FPS ממוצע, P1, P0.1, frametime spikes ו-click-to-photon. השאירו את השינוי רק אם יש שיפור חוזר במדד היעד ללא הרעה חדשה.
עמוד ההגדרה החינמית והדרך המדויקת לחזרה: Win32PrioritySeparation ב-BoosterX.
שחזור המצב
Section titled “ שחזור המצב”לאחר ההשוואה החזירו את הפרמטר ל-Windows default (0x02) דרך BoosterX ובצעו את ההפעלה מחדש שהממשק מציע. בסט ההיסטורי לא נשמרה רשומה נפרדת על בדיקת החזרה, ולכן מחקר זה אינו רואה ב-recovery חלק מאושר של הניסוי הישן.
מקורות ראשוניים ציבוריים
Section titled “ מקורות ראשוניים ציבוריים”- Win32_OperatingSystem.ForegroundApplicationBoost, Microsoft Learn - מיפוי Registry וערכי foreground boost.
- CPU Analysis, Microsoft Learn - quantum, priority, processor selection ועלות context switches.
- Scheduling Priorities, Microsoft Learn - round-robin, preemption ו-dynamic priority.
- Context Switches, Microsoft Learn - מה קורה בעת החלפת thread.
- Windows Internals Sixth Edition sample chapters, Microsoft Press - תיאור היסטורי של שדות הפרמטר והקוונטים של client.
- טבלת מדידות click-to-photon הציבורית של BoosterX - האגרגטים המקוריים שפורסמו של הסדרה ההיסטורית הזו.
- Win32PSCalculator - מימוש פתוח של פענוח ששת הביטים הנמוכים ומציאת מצב שקול.
המקורות הציבוריים והניסוחים נבדקו: 2026-08-24.
היסטוריית שינויים
Section titled “היסטוריית שינויים”- 2026-09-20: כתב הוויתור על ניגוד עניינים חוזק לניסוח מלא עם שייכות המחקר והכלים.
- 2026-08-24: נוספו מיקום מדויק של Registry value, הערך ההתחלתי המתועד
0x02, Win32PSCalculator וגבולות הפרשנות של DWORD חסר. - 2026-08-24: פרסום ראשון; נוספו המטריצה ההיסטורית המלאה, ההפרדה בין המנגנון להשפעה על המשתמש, וכן המלצת ברירת המחדל.
