BlackSun 4 253 Опубликовано: 1 октября 2015 (изменено) Теперь нет, ибо нечего. Если на Ваш взгляд их не хватает - пишите в предложениях. Предложение простое - добавить в лаунчер опцию, позволяющую запустить игру с расширенным набором JVM-флагов, для серверой версии явы. Обозвать можно, к примеру, "Экспериментальный запуск игры". Для запуска потребуется установленный JDK. Мой набор флагов, после двух лет экспериментов: -server -Xverify:none -Xincgc -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -Dfml.ignoreInvalidMinecraftCertificates=true -Dfml.ignorePatchDiscrepancies=true -XX:+UnlockExperimentalVMOptions -XX:InitialCodeCacheSize=100m -XX:ReservedCodeCacheSize=100m -XX:+ReduceSignalUsage -XX:+UseStringCache -XX:+OptimizeFill -XX:+EliminateLocks -XX:UseSSE=2 -XX:+UseFastAccessorMethods -XX:+DoEscapeAnalysis -XX:+UseBiasedLocking -XX:+AggressiveOpts -XX:+UseFastEmptyMethods -XX:+UseAdaptiveGCBoundary -XX:+UseAdaptiveSizePolicy -XX:+DisableExplicitGC -XX:+AlwaysCompileLoopMethods -XX:-DontCompileHugeMethods -XX:+OptimizeStringConcat -XX:MaxGCPauseMillis=5 -XX:MaxGCMinorPauseMillis=5 -XX:+AggressiveOpts В чем профит? Прирост фпса на слабых машинах (где игра упирается в выч. мощности процессора). Из минусов: - Игра станет запускаться гораздо дольше. - Будут наблюдаться некоторые фризы в первые минуты игры. - Гарантированны краши во время запуска, если игре выделено слишком мало оперативки. PS: Я знаю, что в списке есть как дефолтные (для определенных версий явы) флаги и, возможно, даже конфликтующие (отключающие другие) jvm-флаги. Но это дело работает даже на 1.6 яве и OpenJDK. Изменено 1 октября 2015 пользователем BlackSun 8 Поделиться сообщением Ссылка на сообщение
Haruhi 1 Опубликовано: 2 октября 2015 для серверой версии явы. Для какой? -XX:+DisableExplicitGC Ну да, лагать будет меньше. Только потом опера кончится) Поделиться сообщением Ссылка на сообщение
BlackSun 4 253 Опубликовано: 2 октября 2015 Ну да, лагать будет меньше. Только потом опера кончится) Опыт показывает, что на средних-минимальных настройках даже с грегом оперативка не успевает забиться на фулл, сборщик мусора успевает сделать своё грязное дело и с таким набором флагов, так что всё в порядке) Поделиться сообщением Ссылка на сообщение
blank 159 Опубликовано: 13 декабря 2015 Опыт показывает, что на средних-минимальных настройках даже с грегом оперативка не успевает забиться на фулл, сборщик мусора успевает сделать своё грязное дело и с таким набором флагов, так что всё в порядке) А меня всегда бесил этот java сборщиком мусора, ну почему нет что-то типа ID.delete или МУСОРОСОБИРАЛКАПРОЙДИСЬ() Кстати,а возможно уменьшить интервал сборки мусора? https://vk.com/qooke Поделиться сообщением Ссылка на сообщение
Nuclear 834 Опубликовано: 13 декабря 2015 Сборная солянка JVM флагов. Большая часть ни на что не влияет, только портит в большинстве случаев. А меня всегда бесил этот java сборщиком мусора, ну почему нет что-то типа ID.delete или МУСОРОСОБИРАЛКАПРОЙДИСЬ()Кстати,а возможно уменьшить интервал сборки мусора? System.gc(); // Принудительная сборка мусора danbka33 Поделиться сообщением Ссылка на сообщение
SirEdvin 2 037 Опубликовано: 14 декабря 2015 А меня всегда бесил этот java сборщиком мусора, ну почему нет что-то типа ID.delete или МУСОРОСОБИРАЛКАПРОЙДИСЬ() Потому что разработчики бы этим адски злоупотребляли. System.gc(); // Принудительная сборка мусора Немного не так. Оно советует запустить сборщик. Приватные сборки рулят! Давайте вместе сделаем что-то интересное!, все тлен Поделиться сообщением Ссылка на сообщение
Nuclear 834 Опубликовано: 14 декабря 2015 Потому что разработчики бы этим адски злоупотребляли. Немного не так. Оно советует запустить сборщик. И всё же, смысла его использовать нет. Сборщик мусора сам справляется без помощи кого либо. 5 danbka33 Поделиться сообщением Ссылка на сообщение