Перейти к публикации
BlackSun

отклонено Добавить опцию с доп-ным набором JVM-флагов

Рекомендованные сообщения

Теперь нет, ибо нечего. Если на Ваш взгляд их не хватает - пишите в предложениях.

 

Предложение простое - добавить в лаунчер опцию, позволяющую запустить игру с расширенным набором 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.

Изменено пользователем BlackSun
  • Одобряю 8

nodes.gif.707c73bf76fe5592b4e154b63d92771b.gif

Поделиться сообщением


Ссылка на сообщение

для серверой версии явы.

 Для какой?

 

 

-XX:+DisableExplicitGC

Ну да, лагать будет меньше. Только потом опера кончится)

Поделиться сообщением


Ссылка на сообщение

Ну да, лагать будет меньше. Только потом опера кончится)

 

Опыт показывает, что на средних-минимальных настройках даже с грегом оперативка не успевает забиться на фулл, сборщик мусора успевает сделать своё грязное дело и с таким набором флагов, так что всё в порядке)


nodes.gif.707c73bf76fe5592b4e154b63d92771b.gif

Поделиться сообщением


Ссылка на сообщение

Опыт показывает, что на средних-минимальных настройках даже с грегом оперативка не успевает забиться на фулл, сборщик мусора успевает сделать своё грязное дело и с таким набором флагов, так что всё в порядке)

А меня всегда бесил этот java сборщиком мусора, ну почему нет что-то типа ID.delete или МУСОРОСОБИРАЛКАПРОЙДИСЬ()

 

Кстати,а возможно уменьшить интервал сборки мусора?

Поделиться сообщением


Ссылка на сообщение

Сборная солянка JVM флагов. Большая часть ни на что не влияет, только портит в большинстве случаев.
 

 

А меня всегда бесил этот java сборщиком мусора, ну почему нет что-то типа ID.delete или МУСОРОСОБИРАЛКАПРОЙДИСЬ()

Кстати,а возможно уменьшить интервал сборки мусора?

System.gc(); // Принудительная сборка мусора

Поделиться сообщением


Ссылка на сообщение

 

 

А меня всегда бесил этот java сборщиком мусора, ну почему нет что-то типа ID.delete или МУСОРОСОБИРАЛКАПРОЙДИСЬ()

Потому что разработчики бы этим адски злоупотребляли.

 

 

System.gc(); // Принудительная сборка мусора

Немного не так. Оно советует запустить сборщик. 


Приватные сборки рулят!

Давайте вместе сделаем что-то интересное!, все тлен

Поделиться сообщением


Ссылка на сообщение

Потому что разработчики бы этим адски злоупотребляли.

 

 

Немного не так. Оно советует запустить сборщик. 

И всё же, смысла его использовать нет. Сборщик мусора сам справляется без помощи кого либо.

  • Одобряю 5

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации сообщений.
×
×
  • Создать...