Мод JEIOptimizer для Minecraft - PiglinMine - MineCraft сервера с модами
JEIOptimizer

JEIOptimizer

Мод для Minecraft

1 серверов
Играй с модом JEIOptimizer на PiglinMine
Сервер:AllTheMods10
Скачать
Описание мода

Уникальный мод, созданный специально для проекта PiglinMine.

Создает индекс фильтра ингредиентов JEI параллельно — сокращает время подключения к серверу до 17 секунд при работе с большими сборками модов.

Что это делает

При подключении к серверу с модами JEI перестраивает весь свой индекс поиска предметов с нуля — потому что сервер может использовать пользовательские рецепты. На сборке из 250 модов с примерно 50 000 предметов это занимает более 12 секунд в основном потоке . Ваш клиент просто зависает.

JEIOptimizer распараллеливает сборку JEI IngredientFilterна нескольких рабочих потоках. Для каждого префикса поиска (название предмета, ID мода, тег, всплывающая подсказка и т. д.) выделяется отдельный поток, работающий с независимыми структурами данных — никаких конфликтов, никаких состояний гонки, никаких рисков.


Измерения в реальных условиях

Протестировано на сборке из более чем 250 модов (AE2, Mekanism, Create, Cobblemon, Apotheosis, AllTheCompressed, ...). Процессор: Ryzen 5600X · 10 рабочих потоков · NVMe · 8 ГБ выделенной оперативной памяти · удаленный сервер (Hetzner DC).

ФазаВанильный JEI+ JEIOptimizerСнижение
Фильтр ингредиентов здания12.00 с

0,79 с

−94% (в 15 раз быстрее)

Начальный общий показатель JEI25,84 с14,17 с−45%

Общее время соединения

~40 с

~23 с

−42% (−17 с)

В сочетании с дополнительной настройкой, описанной ниже (см. «Бесплатные 8 секунд »), вы можете стабильно сокращать время ожидания подключения к серверу с 40 секунд до ~23 секунд .


Как это работает (техническая часть)

JEI IngredientFilterсоздает поисковый индекс, в котором каждый «префикс» (имя, modId, тег, всплывающая подсказка и т. д.) имеет свой собственный GeneralizedSuffixTree. Независимые структуры → безопасно создавать их параллельно.

Ванильный JEI:

for each ingredient (50,000):
    for each prefix (7-10):
        compute tokens → insert into suffix tree

Один поток = примерно 12 секунд.

JEIOptimizer:

parallelStream over prefixes:
    for each ingredient:
        compute tokens → insert into own suffix tree

6-10 ядер, обрабатывающих 7-10 префиксов одновременно, = ~0,8 секунды.

Режимы фильтрации (в конфигурации)

  • OFF— стандартное поведение JEI
  • BATCH— Небольшое улучшение, оптимизированное для кэширования, однопоточный режим
  • PARALLEL_PREFIX— параллельная сборка по префиксам (безопасная)
  • PARALLEL_FULL— также выполняет параллельную токенизацию внутри префикса ( по умолчанию, самый быстрый вариант )

Дополнительные 8 секунд (ручная настройка JEI)

В файле config/jei/jei-client.iniизмените:

tooltipSearchMode = DISABLED

JEI индексирует текст всплывающей подсказки каждого элемента при каждом подключении. Некоторые моды выполняют ресурсоемкие операции ввода-вывода при рендеринге всплывающих подсказок, затрачивая около 8 из первоначальных 12 секунд впустую. Игроки почти всегда ищут по имени, а не по тексту всплывающей подсказки.

Если игроки хотят использовать поиск по всплывающей подсказке #prefix, используйте REQUIRE_PREFIXвместо этого.


Конфигурация

config/jeioptimizer-client.toml(автоматически сгенерировано):

[filter]
    mode = "PARALLEL_FULL"   # Default. Safe, fastest.
    async = false            # Experimental: build in background
    log_timing = true        # Log timings for verification

worker_count = 0             # 0 = auto (cores - 2)

[plugins]
    parallel_phases = []                # Experimental — see below
    parallel_creative_tabs = false      # Experimental — see below

Безопасные настройки по умолчанию. Просто добавьте jar-файл, и всё готово. Никаких изменений в конфигурации не требуется.

Скачать в свою сборку с официального ресурса

Серверы с модом JEIOptimizer
Гайды от игроков
Написать гайд

Пока нет гайдов по JEIOptimizer

Стань первым! Напиши гайд и получи монеты.

Написать первый гайд
Готов попробовать?

Этот мод установлен на серверах PiglinMine

Уже настроено, не нужно ставить вручную. Качай лаунчер и заходи — JEIOptimizer есть на сервере:

Скачать лаунчер

Бесплатно · автоустановка модов · моды уже на серверах