EMIAccelerator
No reviews yet
Caches the EMI item stack list to disk and defers search index building to a background thread, drastically reducing EMI reload time.
Enhances game performance and optimizes resource usage.
Community voices
Reviews
Click once to include, again to exclude, again to clear
No reviews yet. Be the first to review this project!
Get it on
Available Platforms
Compatibility
Supported Environments
About
Project Details
For authors
Embed Badge
If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.
Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.
Identifiers
Platform IDs
About
Description
EMI Accelerator
Caches the EMI item stack list to disk and defers search index building to a background thread, drastically reducing EMI reload time.
Overview
Every time you join a world or reload resources, EMI rebuilds the entire item stack list and search index. For modpacks with a large number of mods, this process can take tens of seconds, and the game UI freezes completely while the search index is being built.
EMI Accelerator solves this problem with the following optimizations:
- Stack Caching: Serializes
EmiStackList.stacksto JSON and caches it to disk on the first load. Subsequent game launches skip the full reload (around 130ms compared to ~40 seconds). - Deferred Search: Defers
EmiSearch.bake()to a background thread, eliminating roughly 10 seconds of UI blocking. - Auto Refresh: Automatically updates EMI search results once background indexing finishes, with no manual re-input required.
Usage
| Command | Description |
|---|---|
/emiacc status |
View cache status, file size, and hit count |
/emiacc clear |
Delete the cache (rebuilds on next launch) |
/emiacc reload |
Trigger an EMI reload manually |
/emiacc reload --force |
Clear cache and force a full EMI reload |
Configuration
Config file path: config/emi-accelerator/emi-accelerator.properties
| Option | Type | Default | Description |
|---|---|---|---|
cacheEnabled |
boolean | true |
Enable item stack caching |
autoClearOnModChange |
boolean | true |
Automatically clear cache when mod list changes |
maxFileSizeMb |
int | 100 |
Maximum cache file size (MB) |
diagnosticsEnabled |
boolean | false |
Write stage timings to reload-timings.json |
deferredSearchEnabled |
boolean | true |
Enable background deferred search indexing |
How It Works
- EMI tag sync triggers →
EmiReloadManager.reload()→ReloadWorker.run()starts - Check if the cache exists and is valid (SHA-256 mod list hash verification)
- Cache hit: Deserialize stack list directly → skip full reload → build search index in background → complete
- Cache miss: Proceed with normal EMI reload → asynchronously write cache after completion
- Automatically refresh the EMI UI after search build finishes, showing
[EMI Accelerator] Search Ready
Dependencies
| Mod | Version | Required |
|---|---|---|
| EMI | 1.1.22+ | Yes |
- Loader: NeoForge 21.1.228+
- Side: Client-only
- Environment: Minecraft 1.21.1
Build
./gradlew build
License
EMI Accelerator
Caches the EMI item stack list to disk and defers search index building to a background thread, drastically reducing EMI reload time.
Overview
Every time you join a world or reload resources, EMI rebuilds the entire item stack list and search index. For modpacks with a large number of mods, this process can take tens of seconds, and the game UI freezes completely while the search index is being built.
EMI Accelerator solves this problem with the following optimizations:
- Stack Caching: Serializes
EmiStackList.stacksto JSON and caches it to disk on the first load. Subsequent game launches skip the full reload (around 130ms compared to ~40 seconds). - Deferred Search: Defers
EmiSearch.bake()to a background thread, eliminating roughly 10 seconds of UI blocking. - Auto Refresh: Automatically updates EMI search results once background indexing finishes, with no manual re-input required.
Usage
| Command | Description |
|---|---|
/emiacc status |
View cache status, file size, and hit count |
/emiacc clear |
Delete the cache (rebuilds on next launch) |
/emiacc reload |
Trigger an EMI reload manually |
/emiacc reload --force |
Clear cache and force a full EMI reload |
Configuration
Config file path: config/emi-accelerator/emi-accelerator.properties
| Option | Type | Default | Description |
|---|---|---|---|
cacheEnabled |
boolean | true |
Enable item stack caching |
autoClearOnModChange |
boolean | true |
Automatically clear cache when mod list changes |
maxFileSizeMb |
int | 100 |
Maximum cache file size (MB) |
diagnosticsEnabled |
boolean | false |
Write stage timings to reload-timings.json |
deferredSearchEnabled |
boolean | true |
Enable background deferred search indexing |
How It Works
- EMI tag sync triggers →
EmiReloadManager.reload()→ReloadWorker.run()starts - Check if the cache exists and is valid (SHA-256 mod list hash verification)
- Cache hit: Deserialize stack list directly → skip full reload → build search index in background → complete
- Cache miss: Proceed with normal EMI reload → asynchronously write cache after completion
- Automatically refresh the EMI UI after search build finishes, showing
[EMI Accelerator] Search Ready
Dependencies
| Mod | Version | Required |
|---|---|---|
| EMI | 1.1.22+ | Yes |
- Loader: NeoForge 21.1.228+
- Side: Client-only
- Environment: Minecraft 1.21.1
Build
./gradlew build
License
Screenshots
Gallery
Versions
Files
Relations
Project Relations
More like this
Similar Mods
Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.
On ModDex
Community snapshot
By the numbers
Statistics
Want to reach Minecraft players?
We're looking for a server hosting partner to feature here and other parts of the site. Interested? Send us a message!
Get in touchGet it on
Available Platforms
On ModDex
Community snapshot
By the numbers