דלג לתוכן הראשי

Java וזיכרון

GPCL בוחר את גרסת ה-Java לפי גרסת המשחק, ומקצה זיכרון לפי זיכרון המחשב. ברוב המקרים אין צורך לשנות ידנית.

התאמת גרסאות Java​

גרסת MinecraftJava נדרש
1.16.5 ומטהJava 8
1.17 – 1.20.4Java 17
1.20.5 והלאהJava 21

אם בהפעלה חסרה גרסת ה-Java המתאימה, GPCL מוריד ומתקין אותה אוטומטית. אם ההורדה נכשלת, עברו להגדרות → הורדות → הורדת Java ובחרו מקור מירור אחר.

Java מותקנת בתיקייה של GPCL עצמו: היא לא משפיעה על Java אחרת במערכת ולא משנה את JAVA_HOME.

זיכרון: אוטומטי​

ברירת המחדל היא "אוטומטי". ההיגיון בשני שלבים:

  1. קודם אומדן של 30% מהזיכרון הפיזי, מעוגל כלפי מטה ל-GB, ומוגבל ל-2 – 8 GB;
  2. אחר כך לפי הזיכרון הפנוי כרגע: משאירים למערכת לפחות 1 GB, מחשבים מינימום 2 GB, מעגלים כלפי מטה ל-512 MB, ולוקחים את הקטן מבין השניים.

בפועל:

זיכרון פיזיפנוי כרגעהקצאה אוטומטית
16 GB8 GB4 GB
16 GB3.9 GB2.5 GB
8 GB4 GB2 GB

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

-Xmx הוא גבול עליון, לא משהו שמתפס מלא בהפעלה. לכן הקצאה לפי הזיכרון הפנוי באותו רגע יציבה יותר מאשר לתת ידנית ערך גדול מאוד.

זיכרון: ידני​

כשחבילת מודים גדולה לא מסתדרת, עברו ל"ידני" וגררו את המחוון. השאירו מקום למערכת ולשאר התוכניות, ואל תיתנו למשחק את כל הזיכרון הפיזי.

OutOfMemoryError פירושו שאין מספיק זיכרון:

  1. הגדילו את ההקצאה בדרגה אחת ונסו שוב;
  2. אם זה לא עוזר, הקטינו את מספר המודים;
  3. סגרו במקביל תוכניות שצורכות זיכרון, כמו הדפדפן.

כוונון G1GC​

בהגדרות → מתקדם → ניהול זיכרון יש כוונון G1GC, כבוי כברירת מחדל. מומלץ להפעיל רק כשיש תנודות ב-FPS או תקיעות GC מורגשות; ההפעלה מוסיפה סט פרמטרים נפוצים של G1GC.

פרמטרי JVM מותאמים אישית נמצאים באותו אזור. פרמטר שגוי ימנע מהמשחק לעלות, ואם לא בטוחים — עדיף לא לגעת.

אופטימיזציית זיכרון לפני הפעלה​

כשהאפשרות דלוקה, GPCL משחרר לפני הפעלת המשחק חלק מהזיכרון שהמשגר עצמו תופס. הוא מנקה רק את התהליך של המשגר, לא נוגע ב-Minecraft שרץ ולא מוחק את מצב ההתחברות.

בדיסק קשיח (HDD) ייתכן עיכוב קצר בשלב הזה — זו התנהגות תקינה.