Что такое флаги в майнкрафт


Все существующие флаги WorldGuard | Vomine

Здесь будут перечислены все флаги, которые могут устанавливать владельцы (owner) регионов на свои приваты.

По умолчанию на регион устанавливаются все необходимые флаги. Чтобы узнать, какие флаги установлены на регион, нужно использовать такую команду:
/rg info
Или такую:
/rg info название

Перечисленные флаги имеют значения deny (запретить) и allow (разрешить). Там, где используются другие значения, это указано.

Пример:
/rg f регион pvp deny – запретить pvp в регионе
/rg f регион pvp allow – разрешить pvp в регионе

Пример с текстовым значением:
/rg f регион greeting привет, %name%! – установить сообщение приветствия на регион

Пример с числовым значением:
/rg f регион feed-max-hunger 20 – отключить голод в регионе

Пример со списком:
/rg f регион deny-spawn Skeleton, Zombie – отключить спаун этих мобов в регионе

Важно! Флгаи можно устанавливать для групп игроков!
Пример:
/rg f регион use -g members allow – разрешить членам региона использовать мезанизмы
/rg f регион use -g non_members deny – запретить игрокам, которые не члены региона, использовать механизмы

Доступные группы:

  • MEMBERS – члены региона
  • NON_MEMBERS – не члены региона (не прописанные игроки)
  • OWNERS – владельцы региона
  • NON_OWNERS – не владельцы региона (члены и не прописанные игроки)
  • ALL – все игроки

Красным отмечены те флаги, значение которых не описано в документации, либо описано слишком не понятно. Зеленым – те, что относятся к WGExtender (были найдены в коде). Голубым – удалённые в новых версиях. Те флаги, для которых не указаны аргументы, предполагают allow/deny.

passthrough – не проверять разрешение на строительство (все смогут строить и ломать в регионе)
build – включить или выключить разрешение ВСЕМ игрокам строить и ломать в регионе
pvp – включить или выключить pvp в регионе
mob-damage – урон от мобов
entity-item-frame-destroy – ломать рамки
entity-painting-destroy – ломать картины
mob-spawning – спавн мобов
creeper-explosion – взрыв криперов
enderman-grief – кража блоков эндерменом
enderpearl – использование ока эндера
ghast-fireball – взрывы от фаерболлов
sleep – спать на кровати
tnt – взрыв динамита
lighter – использование зажигалки
fire-spread – распространение огня
lava-fire – поджог от лавы
lightning – удар молнии
chest-access – доступ к сундукам и прочим блокам, в которые кладутся вещи
water-flow – растекание воды
lava-flow – растекание лавы
use – использование механизмов (дверей, кнопок, рычагов и т.д.)
vehicle-place – размещение транспорта (лодок, вагонеток) в регионе
vehicle-destroy – дроп транспортных блоков
snow-fall – выпадение снега
leaf-decay – опадение листвы
invincible – бессмертие в регионе
entry – вход в регион
entry-group группа – вход группам (подробнее) (удалён в новых версиях)
entry-deny-message текст – сообщение игроку о запрете вхождения в регион
greeting текст – сообщение при входе в регион (можно использовать %name%, чтобы выводился ник игрока)
farewell текст – сообщение при выходе из региона
deny-spawn моб, моб1, моб2 – запретить спаунится перечисленным мобам (мобы)
heal-delay секунды – скорость исцеления
heal-amount число – мощность исцеления (2 – одно сердце)
teleport x y z – место для телепорта в регион
spawn x y z – место спауна в регионе
price число – цена на регион
feed-min-hunger число – с какого значения будет увеличиватся полоска голода в регионе
feed-max-hunger число – до какого значения она будет увеличиватся (кормежка)
ice-form – замерзание воды
ice-melt – таяние льда
potion-splash – использование взрывных зелий
pistons – использование поршней
item-drop – выбрасывание вещей
other-explosion – другие виды взрывов
enderdragon-block-damage – урон блокам от дракона эндера
exp-drops – сбор опыта
grass-growth – обрастание грязи травой
mycelium-spread – распространение мицелия
vine-growth – распространение лиан
damage-animals – урон животным
entity-interact – взаимодействие с предметами
block-interact – взаимодействие с блоками
snow-melt – таяние снега
ride – разрешить/запретить использовать транспорт в регионе
interact – разрешить/запретить убивать мобов и взаимодействовать с некоторыми предметами (двери, нажимные плиты)
feed-delay секунды – периодичность насыщения
feed-amount число – сколько единиц сытости восстанавливать
mushroom-growth – рост грибов
chorus-fruit-teleport – телепортация с помощью плода хоруса
fall-damage – урон от падения

Возможно, вам так же поможет этот, этот или этот список.

Следующие флаги недоступны для использования игроками, но их может устанавливать администрация.

notify-enter true/false – отображать сообщение о входе игроков в регион для тех, у кого есть на это права
notify-leave true/false – отображать сообщение о выходе из региона игроков
soil-dry – “сухая почва” (возможно, не сыреющая под дождём пашня)
game-mode creative/survival/adventure – установить игровой режим в регионе
send-chat – возможность писать в чат
receive-chat – возможность читать чат
blocked-cmds команда, команда1, команда2 – блокировать команды в регионе (без слэша, если он не двойной)
allowed-cmds команда, команда1, команда2 – запретить все команды, кроме указанных
buyable true/false – продажа региона (не риализованный)
allow-shop – регион для магазина ChestShop
block-interact-whitelist ид ид1 ид2 – разрешить взаимодействие с данными блоками
entity-interact-whitelist ид ид1 ид2 – разрешить взаимодействие с данными предметами
exit deny/allow – выход из региона
exit-group группа – выход из региона определенным группам (удалён в новых версиях)
exit-override – возможно, отключает проверку флага exit (можно применить для групп)
exit-via-teleport – выход из региона с помощью телепортации
exit-deny-message текст – сообщение игроку о запрете выхода из региона
time-lock число (-24000-24000) – смещение времени
weather-lock clear/downfall – установить погоду в регионе
send-chat – возможность писать в чат
deny-message текст – сообщение игроку о запрете действия
block-place – строительство

Флаги в Minecraft » MinecraftOnly

 

Всем привет, дорогие читатели! У многих возникал вопрос: что же такое флаги? Сегодня я вам расскажу что это и поясню каждый из них 

P.S. Некоторые из них доступны VIP и Premium игрокам почти всех серверов проекта.

Итак, приступим 

 

Чтобы активировать флаг на своём регионе, надо написать в чате /region flag [название региона] [флаг] [значение переменной]

 

Рассмотрим все виды флагов:

 

Флаг

Назначение

passthrough

Используйте разрешено, чтобы это регион рассматривался как область, в которой отсутствует проверка флага build (используйте это, чтобы сделать простые no-PVP, и т.п. зоны).

build

Внимание! Рекомендуется не трогать это флаг, поскольку установка его полностью запретит строительство на вашем регионе. Ни вы, ни кто либо другой не сможет ломать или ставить блоки здесь.

pvp

Разрешает/запрещает PvP.

mob-damage

Разрешает мобам отнимать у вас здоровье (могут скинуть со скалы или кинуть в лаву).

mob-spawning

Разрешает спавн мобам.

creeper-explosion

Разрешает взрыв крипера (если отключено крипер вместо взрыва пропадет, или не нанесет ущерба постройкам).

enderman-grief

Разрешает эндеру гриферить на вашей территории.

enderpearl

Разрешить или запретить использование Жемчуг Края.

ghast-fireball

Разрешает урон от шаров гаста (так же как и крипера) .

sleep

Разрешить спать на кровати.

tnt

Разрешать взрыв ТНТ.

lighter

Разрешить или запретить использование огнива.

fire-spread

Разрешить распространение огня.

lava-fire

Разрешает поджог от лавы.

lightning

Разрешить удар м

региональных флагов - документация WorldGuard 7.0

Предупреждение

Ни один из этих флагов не зависит от игрока. Например, флаг блокировки блока, если он установлен как «запретить», не позволяет поршням ломать блоки .

Чтобы понять почему, рассмотрим тот факт, что игроки могут бросать TNT в регион извне, или игрок может построить поршневую машину дюймового червя, которая перемещается в другой регион. Хотя эти действия были вызваны игроком, реально попытаться выяснить, какой игрок создал пушку TNT или использовал его, гораздо сложнее.Тем не менее, вы все еще хотите не дать кому-то взорвать икру с помощью пушки TNT.

Прямое блокирование пушек или поршней TNT - неправильное решение. Поршни и тротиловые пушки должны быть разрешены в , а в случаях. Например, пушка TNT или поршень внутри должны работать в пределах региона.

Прежде всего, помните, кто может строить в регионах: это , а не игроков, это участников . Когда мы рассматриваем поршни или тротил, это не должно быть иначе.Как WorldGuard выясняет, является ли поршневая машина или пушка TNT членом региона? Если это внутри региона, конечно же !

При создании региона, прежде чем устанавливать на него какие-либо флаги:

  • Участники могут строить
  • Не члены могут не построить

Пушки и поршни TNT внутри могут работать, потому что они «члены». Воображаемый игрок «Бобби», который еще не является участником, не может размещать или разбивать блоки.Как только вы добавите Бобби в регион, Бобби сможет его построить.

Когда вы устанавливаете флаги защиты, вы переопределяете это поведение. Если вы установите block-break на deny , то даже участники не смогут разбить блоки. Бо

.

Minecraft Country Flags

Привет всем!

Это мой первый блог, так что терпите меня. Недавно я сделал несколько флагов стран с новыми баннерами Minecraft. Вы можете получить доступ к большому репозиторию со всеми флагами здесь.

На данный момент он содержит эти флаги:

  • США
  • Япония
  • Англия
  • Италия
  • Швеция
  • Нидерланды
  • Финляндия
  • 0
  • 0
    0 Бельгия

    0
    0
  • Канада
  • Бразилия
  • Чили
  • Чехия
  • Франция
  • Доминиканская Республика
  • Дания
  • Эстония




















  • Россия
  • Колумбия
  • Люксембург
  • Украина

Я привел эти флаги ради полноты, и они не обязательно отражают мои политические взгляды.

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

Еще больше блогов!

- матрик

.Настройка
JVM: Оптимизированный G1GC для Minecraft

Настройка флагов сборщика мусора JVM - G1GC для Minecraft

2 июля 2018 года на Java, Minecraft, Системное администрирование

Введение

После многих недель изучения JVM, флагов и тестирования различных комбинаций я придумал тщательно настроенный набор флагов для сбора мусора для Minecraft. Я проверил их на своем сервере, и они использовались в течение многих лет. Затем я объявил о своем исследовании общественности, и по сей день многие серверы уже много лет используют мои рекомендации и сообщают о значительном улучшении поведения при сборке мусора.

Эти флаги являются результатом огромных усилий и результатов их применения в производстве на серверах различных размеров, списках плагинов и типах серверов. Они зарекомендовали себя неоднократно.

Я настоятельно рекомендую использовать эти флаги для запуска вашего сервера. Эти флаги помогают поддерживать работоспособность вашего сервера CONSISTENT без каких-либо значительных всплесков сбора мусора. Процессор может быть немного выше, но ваш сервер будет в целом более надежным и стабильным TPS.

Если эти флаги помогут вашему серверу, подумайте о пожертвовании!

Флаги запуска JVM для использования - MC 1.15 (Java 8+, MC 1.8+) Обновление

Точно используйте эти флаги, изменяя только Xmx и Xms. Эти флаги работают и масштабируются в соответствии с любым объемом памяти, даже 500 МБ, но 1.15 не справится с таким небольшим объемом памяти…)

java -Xms10G -Xmx10G -XX: + UseG1GC -XX: + ParallelRefProcEnabled -XX: MaxGCPauseMillis = 200 -XX: + UnlockExperimentalVMOptions -XX: + DisableExplicitGC -XX: + AlwaysPreTouch -XXXSew: 30XNS: GXS: GNS: GNS: GNS: GNS: GNS: GNS XX: G1HeapRegionSize = 8M -XX: G1ReservePercent = 20 -XX: G1HeapWastePercent = 5 -XX: G1MixedGCCountTarget = 4 -XX: ИнициированиеHeapOccupancyPercent = 15 -XX: G1MixedGXXXTXTXTXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXT + PerfDisableSharedMem -XX: MaxTenuringThreshold = 1 -Dusing.aikars.flags = https: //mcflags.emc.gs -Daikars.new.flags = true -jar paperclip.jar nogui

ПОСЛЕДНИЕ ОБНОВЛЕННЫЕ: 25 апреля 2020 15:30 EST

Эти флаги рекомендуются для ВСЕХ версий Minecraft! 1.8 до 1.15+, используйте этот набор.

ВАЖНО - ЧИТАЙТЕ - Не используйте ВСЕ свою память !! ПОЛЬЗОВАТЕЛИ ПТЕРОДАКТИЛЯ!

При установке значений Xms и Xmx, если ваш хост говорит, что у вас 8000M памяти, НЕ ИСПОЛЬЗУЙТЕ 8000M! Minecraft (и Java) требуется дополнительная память поверх этого параметра Xmx.Рекомендуется уменьшить Xmx / Xms примерно на 1000-1500M , чтобы избежать нехватки памяти или попадания OOMKiller на ваш сервер. Это также оставляет место для операционной системы, чтобы использовать память тоже.

Есть 8000M памяти? Используйте 6500M для безопасности. Но вы также можете спросить своего хоста, покроют ли они эти накладные расходы для вас и дадут ли вам 9500M. Некоторые хозяева будут! Просто спроси.

Рекомендуемое серверное программное обеспечение

Если вы еще не используете Paper, чрезвычайно улучшенную версию Spigot, вам действительно нужно переключиться! Paper - гораздо более быстрая версия Spigot, с огромными улучшениями производительности.Он также поставляется с исправлениями ошибок и эксплойтов, множеством новых функций и множеством новых API-интерфейсов, которые разработчики могут использовать и лучше использовать плагин.

Бумага - это замена Spigot, для которой каждый плагин Bukkit / Spigot должен работать одинаково. Там нет недостатка в переключении

Paper - единственный способ запустить сервер 1.15 с достойной производительностью!


Рекомендуемая память

Я рекомендую использовать по крайней мере 6-10 ГБ, Независимо от того, как мало игроков! Если вы не можете позволить себе 10 ГБ памяти, выделите столько, сколько сможете, но также убедитесь, что у операционной системы тоже осталось немного памяти.G1GC работает лучше с большим объемом памяти.

Если вы работаете с 12 ГБ памяти или меньше для MC, вам не следует регулировать эти параметры.

Если вы используете значение Xmx больше 12G

Если у вас есть и используется более 12 ГБ памяти, настройте следующее:

  • -XX: G1NewSizePercent = 40
  • -XX: G1MaxNewSizePercent = 50
  • -XX: G1HeapRegionSize = 16M
  • -XX: G1ReservePercent = 15
  • -XX: InitiatingHeapOccupancyPercent = 20

УВЕДОМЛЕНИЕ. Если после этого вы увидите увеличение коллекций старого поколения, вернитесь к базовым флагам!

Объяснение этих изменений:

  • Базовый набор флагов нацелен на 30/40, чтобы снизить риск возникновения космических проблем.Чем больше памяти, тем меньше проблем. Мы можем дать больше новому поколению с 40/50, а также уменьшить резервный процент, так как резерв по умолчанию уже будет больше.
  • Увеличение размера региона помогает сократить громоздкие распределения и ускоряет повторную маркировку. Нам нужен меньший размер региона при меньших кучах, чтобы обеспечить достаточное количество доступных регионов
  • Мы можем начать искать память старого поколения для восстановления с большей задержкой с IHOP на 20, поскольку у нас больше старого поколения, доступного для пространства на процессоре.

Java GC Logging

У вас есть старые проблемы с этими флагами? Помоги мне помочь тебе! Добавьте следующие флаги в зависимости от версии Java, чтобы включить ведение журнала GC:

Java 8-10:

-Xloggc: gc.log -verbose: gc -XX: + PrintGCDetails -XX: + PrintGCDateStamps -XX: + PrintGCTimeStamps -XX: + UseGCLogFileRotation -XX: NumberOfGCLogFiles = 5 -XX: GCLogFileSize = 1 000 900 000 = 1

Java 11+:

-Xlog: gc *: logs / gc.log: время, время работы: filecount = 5, размер файла = 1M

Когда вы начнете видеть коллекции старого поколения в Timings, возьмите файл logs / gc.log (там же, где и ваш latest.log) и отправьте его мне на Paper Discord для анализа.

Ведение журнала

GC не снижает вашу производительность и может быть включено в любое время. Файлы не займут много места (5МБ)

Техническое объяснение флагов:

  1. -Xms match -Xmx - Почему: Никогда не запускайте сервер, если -Xmx может полностью запустить систему из памяти.Ваш сервер всегда должен использовать весь -Xmx!
    Затем вы должны убедиться, что ОС имеет дополнительную память поверх этого Xmx для вещей не уровня MC / OS. Следовательно, вы никогда не должны запускать MC с настройками -Xmx, которые вы не можете поддерживать, если java использует все это. Теперь это означает, что если -Xms ниже, чем -Xmx -YUU UNUSED MEMORY! Неиспользованная память - это потерянная память. G1 (и, возможно, даже CMS до определенного порога, но я только заявляю, в чем я уверен) работает лучше с большим объемом памяти, который ему предоставляется.G1 адаптивно выбирает, сколько памяти отдать каждому региону, чтобы оптимизировать время паузы. Если у вас больше памяти, чем нужно для достижения оптимального времени паузы, G1 просто добавит это лишнее в старое поколение, и это не повредит вам (это может быть не так для CMS, но для G1). Фундаментальная идея улучшения поведения GC состоит в том, чтобы недолговечные объекты умирали молодыми и никогда не получали повышение. Чем больше памяти у G1, тем лучше вы получите уверенность в том, что объекты не будут преждевременно продвинуты в старое поколение.G1 работает не так, как предыдущие коллекторы, и способен более эффективно обрабатывать большие кучи.

    Если ему не нужна выделенная ему память, он не будет ее использовать. Весь движок работает по-разному и не страдает от слишком больших куч, и это общепринятая в отрасли информация о том, что под G1 оставить Xms и Xmx одинаковыми!

  2. UnlockExperimentalVMOptions - необходим для некоторых из перечисленных ниже вариантов
  3. G1NewSizePercent: Это важные из них.В CMS и других поколениях настройка New Generation приводит к FIXED SIZE New Gen и обычно выполняется с помощью явной установки размера с помощью -Xmn. С G1 дела обстоят лучше! Теперь вы можете указать проценты от общего желаемого диапазона для нового поколения. С этими настройками мы говорим G1 не использовать 5% по умолчанию для нового поколения, а вместо этого дать ему 40%! Minecraft имеет чрезвычайно высокую скорость выделения памяти - до 800 мегабайт в секунду на сервере с 30 игроками! И это в основном недолговечные объекты (Block Position)

    Теперь это означает, что MC REALLY нужно больше внимания уделять новому поколению, чтобы иметь возможность даже поддерживать эту скорость распределения.Если ваш новый ген слишком мал, вы будете запускать новые коллекции генов 1-2 раза в секунду, что очень плохо. У вас будет так много пауз, что TPS может пострадать, и сервер не сможет сохранить до стоимости GC. Затем объедините тот факт, что объекты теперь будут продвигаться быстрее, в результате чего ваш Old Gen будет расти быстрее. Благодаря большему количеству NewGen, мы можем замедлить интервалы между коллекциями Young Gen, в результате чего у недолговечных объектов будет больше времени умирать молодыми и в целом более эффективное поведение GC.

  4. G1MixedGCLiveThresholdPercent : управляет включением областей в смешанные ГХ в коллекцию Young GC, сохраняя порядок в старом поколении без выполнения обычной коллекции GC старого поколения. Когда ваша память меньше этого процента, старый ген даже не будет включен в «смешанные» коллекции. Смешанные файлы не так тяжелы, как полная старая коллекция, поэтому небольшая инкрементная очистка старых сохраняет использование памяти легким.
    По умолчанию от 65 до 85, в зависимости от версии Java, мы устанавливаем значение 90, чтобы обеспечить максимально быстрый возврат мусора в старом поколении, чтобы сохранить как можно больше свободных областей.У моего Старого набора флагов было это в 35, который был ошибкой. Я поменял цель этого флага, так как думал, что 35 - это то, что делает 65. Вы не должны использовать 35 для этого числа.
  5. G1ReservePercent = 20: MC Скорость выделения памяти в современных версиях действительно безумна. Мы рискуем страшно «исчерпать пространство», не имея достаточно свободной памяти для перемещения данных. Это гарантирует, что больше памяти ожидает использования для этой операции. По умолчанию 10, поэтому мы даем еще 10 к нему.
  6. MaxTenuringThreshold = 1 : у Minecraft очень высокая скорость выделения памяти.Из этой памяти большинство восстанавливаются в поколении Эдема. Однако временные данные будут перетекать в выжившего. Изначально играл с полным удалением Survivor и имел приличные результаты, но в результате переходные данные попадают в Old, что нехорошо. Max Tenuring 1 гарантирует, что мы не будем продвигать переходные данные в старое поколение, но все, что переживет 2 прохода Garbage Коллекция просто будет считаться более долговечной.
    Это значительно сокращает время паузы в Young Collections, поскольку копирование данных до 15 раз в пространстве Survivor для объекта с постоянным доступом действительно занимает много времени для фактически старой памяти.В идеале механизм GC будет отслеживать средний возраст объектов и быстрее обрабатывать данные, но это не так.
    Учитывая, что средняя скорость GC составляет от 10 с до нескольких минут для каждой молодой коллекции, это не приводит к продвижению какого-либо «мусора», а просто задерживает сборку более долгоживущей памяти в смешанных GC.
  7. SurvivorRatio = 32: Поскольку мы резко сократили MaxTenuringThreshold, мы резко сократим использование пространства выживших. Это освобождает больше регионов для использования вместо Eden.
  8. AlwaysPreTouch : AlwaysPreTouch получает настройку памяти и резервируется при запуске процесса, обеспечивая ее непрерывность, что еще больше повышает ее эффективность. Это повышает скорость доступа к памяти операционной системы. Обязательно использовать Прозрачные Огромные Страницы
  9. + DisableExplicitGC: Многие плагины думают, что знают, как управлять памятью, и пытаются вызвать сборку мусора. Плагины, которые делают это, запускают полную сборку мусора, вызывая огромный скачок задержки. Этот флаг запрещает плагинам пытаться сделать это, защищая вас от их плохого кода.
  10. MaxGCPauseMillis = 200: этот параметр определяет, сколько памяти используется между минимальным и максимальным диапазонами, указанными для вашего нового поколения. Это «цель» на то, как долго вы хотите, чтобы ваш сервер приостанавливал сборы. 200 стремится максимально потерять 4 тика. Это приведет к короткому падению TPS, однако сервер может восполнить это мгновенное падение, то есть оно не окажет существенного влияния на ваш TPS. 200 мс ниже, чем могут распознать игроки. При тестировании ограничение этого значения на еще меньшее число приводит к тому, что G1 недостаточно быстро восстанавливает память и потенциально исчерпывает старый ген, вызывая полную коллекцию.То, что это число равно 200, не означает, что каждая коллекция будет иметь 200. Это означает, что она может использовать до 200, если она действительно нужна, и мы должны позволить ей выполнять свою работу, когда есть память для сбора.
  11. + ParallelRefProcEnabled : Оптимизирует процесс GC для использования нескольких потоков для слабой проверки ссылок. Не уверен, почему это не по умолчанию ....
  12. G1RSetUpdatingPauseTimePercent = 5: по умолчанию - 10% времени, затрачиваемого на обновление паузы во время паузы, уменьшите это значение до 5%, чтобы сделать его более параллельным для сокращения длительности паузы.
  13. G1MixedGCCountTarget = 4: по умолчанию 8. Поскольку мы стремимся собирать медленнее, с меньшим использованием старого поколения, попробуйте быстрее восстановить память старого поколения, чтобы избежать исчерпания старого.
  14. G1HeapRegionSize = 8M +: значение по умолчанию рассчитывается автоматически. SUPER важно для Minecraft, особенно для 1.15, так как в ситуациях с нехваткой памяти вычисление по умолчанию в большинстве случаев будет слишком низким. Любая часть памяти, выделенная на эту половину (4 МБ), будет считаться «Humongous» и продвигаться прямо к старому поколению, и ее будет сложнее освободить.Если вы позволите java использовать значение по умолчанию, вы будете уничтожены значительным объемом памяти, который будет считаться Humongous.
  15. + PerfDisableSharedMem: Заставляет GC записывать в файловую систему, что может привести к большой задержке при высоком IO диска - см. Https://www.evanjones.ca/jvm-mmap-pause.html

Использование больших страниц

Также для больших страниц - еще важнее использовать -Xms = -Xmx! Большие страницы должны иметь всю память, указанную для этого, или вы могли бы в конечном итоге без выгоды.Эта память не будет использоваться ОС в любом случае, поэтому используйте ее.
Дополнительно используйте эти флаги (Metaspace - только Java 8, не используйте его для Java7):

Код:

-XX: + UseLargePagesInMetaspace

Прозрачные Огромные Страницы

Спорная функция

, но может быть полезной, если вы не можете настроить свой хост на настоящий HugeTLBFS. попробуйте добавить -XX: + UseTransparentHugePages, но очень важно, чтобы у вас также был установлен AlwaysPreTouch. В противном случае THP, скорее всего, повредит вам. Я не измерял, как THP работает для MC или его влияние с AlwaysPreTouch, поэтому этот раздел предназначен для опытных пользователей, которые хотят экспериментировать.

Кредиты:

Спасибо за https://product.hubspot.com/blog/g1gc-fundamentals-lessons-from-taming-garbage-collection помощь, которая помогает мне лучше понять флаги и вносить улучшения!


История изменений

  • 5/2/2020: добавлено + PerfDisableSharedMem, отрегулировано значение MixedGCTarget для 4
  • 25.04.2020: удален OmitStackTraces, так как это может вызвать проблемы с производительностью некоторых плагинов (но не всех)
  • 5/5/2020 : Массовый рефакторинг предложений флагов.Принимает новый подход при оптимизации времени паузы. Флаги все еще могут меняться. Эти изменения являются обязательными для MC 1.15
  • 04.10.2008 : удалены AggressiveOpts и InitiatingHeOOccupancyPercent. Агрессивный удален в Java 11, и IHOP может снизить производительность в Java 11. Вы должны удалить их и для Java 8.
  • 18.08.2008 : скорректировано MixedGCLiveThreshold до 35 (из 50), чтобы обеспечить смешанный запуск GC раньше.
    Добавлены заметки о рекомендуемом использовании 10 ГБ памяти.
    Добавлено больше документации флага
  • 24.05.2008 : добавлено -XX: + ParallelRefProcEnabled

Теги: сборщик, g1gc, мусор, java, jvm, minecraft, флаги запуска, тюнинг

,

Смотрите также