🛠 чому твій майн фрізить, навіть якщо ваша мікроловновка «тягне»? (справа не в ОЗУ)
буває так: ви виділили грі чи серверу омріяні 8–12 ГБ оперативки, поставив топові оптимізатори, а гра все одно час від часу мікрофрізить або «заїкається» на рівному місці?
Найчастіше винуватець — Garbage Collector (сміттєзбірник Java). коли гра працює, вона забиває пам'ять тимчасовими даними (текстури, чаньки, сутності). коли ліміт добігає кінця, Java різко зупиняє процес на мілісекунди, щобь усе це «прибрати». ось вам й gмікрофріз.
Як це виправити? Потрібно налаштувати правильні аргументи запуску (JVM Arguments) у лаунчері.
замість стандартного рядка, спробуй використати оптимізовані аргументи (наприклад, прапорці G1GC, які працюють значно плавніше):
> -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=20 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1ReservePercent=20 -XX:G1HeapRegionSize=32m -XX:G1ReservePercent=20
Що це дає?
1. -XX:MaxGCPauseMillis=20 — каже java, що пауза на очищення сміття не повинна перевищувати 20 мілісекунд (око навіть не помітить).
2. -XX:+AlwaysPreTouch — виділяє всю задану оперативку відразу при старті, а не шматками під час гри, що прибирає лаги під час провантаження нових зон.
👉 протестуйте у себе в лаунчері та напишіть у коментарях, чи став фпс стабільнішим gі чи зникли ці бісячі мікросмикання😌
Post #561
21
- 👍 1