delvr / Farseek

A Scala API for Minecraft mods.
https://minecraft.curseforge.com/projects/farseek
20 stars 5 forks source link

Farseek 1.7.10-1.1 performance issues #22

Closed theshadowake closed 7 years ago

theshadowake commented 7 years ago

I updated my modpack to latest Farseek 1.7.10-1.1. FPS was instantly cut in half or worse and I also got some severe block lag (eg mining blocks returning). Rolling back to 1.0.11 resolves these issues.

delvr commented 7 years ago

That's unfortunate - could you list the other mods you're using?

theshadowake commented 7 years ago

Awakening modpack (on Curse):

FastCraft (by Player)
Chisel (by tterrag1098)
Iguanas Tinker Tweaks (by bonusboni)
MalisisCore (by Ordinastie)
Ascribe (by unascribed)
Thaumcraft Inventory Scanning (by BlayTheNinth)
MPUtils (by GenDeathrow)
Botania (by Vazkii)
Big Reactors (by ErogenousBeef)
Advanced Generators (by bdew)
BiblioCraft: BiblioWoods Biomes O'Plenty Edition (by JDSinclair)
ExtraCells2 (by DrummerMC)
Sound Filters (by Tmtravlr)
Inventory Tweaks (by Kobata)
UniDict (by WanionCane)
WTF's TextureGeneratorLib (by WhiskytangoFox)
Extra Utilities (by RWTema)
Builder's Guides (by Ipsis)
Doomlike Dungeons (by BlackJar72)
AOBD singularities (by RCXcrafter)
ModTweaker (by jaredlll08)
Streams (by delvr)
LLibrary (by iLexiconn)
AppleCore (by squeek502)
Immersive Engineering (by BluSunrize)
Climate Control/Geographicraft (by Zeno410)
Neat (by Vazkii)
Thaumcraft Node Tracker (by Dyonovan)
StartingInventory (by bspkrs)
Project Red - Lighting (by Mr_TJP)
TCBotaniaExoflame (by MatthiasMann)
Ancient Trees (by scottkillen)
CustomThings (by tterrag1098)
BiblioCraft (by JDSinclair)
Mantle (by mDiyo)
Thermal Foundation (by TeamCoFH)
WR-CBE-Universal (by chicken_bones)
Thermal Expansion (by TeamCoFH)
WTFCore (by WhiskytangoFox)
DecoCraft2 (by RazzleberryFox)
Storage Drawers (by jaquadro)
Better Sprinting (by chylex)
Iron Chests (by progwml6)
p455w0rd's Library (by TheRealp455w0rd)
Avaritia (by Assassinfox)
Lava Monsters (by docrobb)
Just What I Needed Mod (by SSBlur)
OpenBlocks (by OpenMods)
Slug's Magic Resistance Mod! (by _Slug)
The Spice of Life (by squeek502)
Witching Gadgets (by BluSunrize)
Practicalities (by jotato)
WAILA-features (by Way2muchnoise)
RFTools (by McJty)
ExtraTiC (by JeanGlassmaker)
Ender IO Addons (by Henry_Loenwind)
WAILA Plugins (by tterrag1098)
Boilerplate (by warlordjones)
Default World Generator (by fireball1725)
Light Level Overlay Reloaded (by oldjunyi)
Eternal Singularity (by KingWealthyturtle)
Metallurgy (by JeanGlassmaker)
Draconic Evolution (by brandon3055)
Magical Crops: Armoury (by Mark719)
Immersive Integration (by UnwrittenFun)
Cosmetic Armor Reworked (by ZLainSama)
Extra Fixes (by hilburn)
WallpaperCraft (by Echo__x)
NetherOres (by skyboy026)
Vending block (by kamildanak)
Controlling (by jaredlll08)
Custom Chest Loot (by docrobb)
View EMC (by Silly511)
NetherPortalFix (by BlayTheNinth)
AI Improvements (by darkguardsman)
Forbidden Magic (by Assassinfox)
CoFH Lib (by TeamCoFH)
Login Shield (by Glasspelican)
Tinkers' Mechworks (by mDiyo)
Tinkers Construct (by mDiyo)
Waila (by ProfMobius)
Simply Jetpacks (by tonius111)
Morpheus (by Quetzi)
MyWorldGen (by impiaaa)
No More Achievements (by GenDeathrow)
CodeChickenCore (by chicken_bones)
Mob Properties (by docrobb)
Resource Loader (by lumien231)
Project Red - Base (by Mr_TJP)
Cooking for Blockheads (by BlayTheNinth)
Router Reborn (by TomEVoll)
OpenModularTurrets (by Poenjabiesous)
ShadowTweaks (by shadowfactsmc)
OpenModsLib (by OpenMods)
Garden Stuff (by jaquadro)
MiscTweaks_ (by CoolSquid)
Ztones (by riciJak)
OpenTransport (by SkySomm)
Sonar Core (by Ollie_Lansdell)
Farseek (by delvr)
Universal Singularities (by KingWealthyturtle)
Improving Minecraft (by pifou92000)
Thaumcraft (by azanor)
Project Red - Compat (by Mr_TJP)
ChunkPurge (by AcEAndroid)
WTF's Expedition: CaveBiomes, Ores, Trees, and Tweaks (by WhiskytangoFox)
Quick Hotbar (by Kulttuuri)
JAPTA (by VpzomTrrfrt)
Nodal Mechanics (by Shukaro)
BiblioCraft: BiblioWoods Highlands Edition (by JDSinclair)
Big Doors (by jaquadro)
Portal Gun (by iChun)
Bookshelf (by darkh4x)
Food Details (by Lothrazar)
Nightmare Creatures II (Unofficial Multiplayer Patch) (by TechDweebGaming)
Hardcore Questing Mode (by lorddusk)
BigTrees (by thevidaj)
Steve's Factory Manager (by Vswe)
Another One Bites the Dust (by ganymedes01)
Thaumic Energistics (by Nividica)
SquidAPI (by CoolSquid)
Gems+ (by Boilingfort)
Waila Harvestability (by squeek502)
Waila Events (by darkh4x)
Steve's Addons (by hilburn)
Magical Crops: Decorative (by Mark719)
Thaumic Equivalence (by Lilylicious)
Whisky Tango Fox's Ores (by WhiskytangoFox)
UBC Ore Registrar (by marwat208)
Notes (by ChaosTheDude)
iChunUtil (by iChun)
Traveller's Gear (by BluSunrize)
McJtyLib (by McJty)
TiConAutoToolStation (by Blubberbub)
Crafting Tweaks (by BlayTheNinth)
Aroma1997Core (by Aroma1997)
MPUtils Basic Tools (by GenDeathrow)
Iron Backpacks (by gr8pefish)
BdLib (by bdew)
AromaBackup (by Aroma1997)
NotEnoughItems (by chicken_bones)
WanionLib (by WanionCane)
Thaumic Upholstry (by EtsyTheDragon)
ArmorStatusHUD (by bspkrs)
CraftTweaker (by jaredlll08)
In-Game Wiki Mod (by MineMaarten)
MetallurgyChisel (by JeanGlassmaker)
Dungeon Mobs (by GnomeWorks)
D3Core (by DoubleDoorDevelopment)
Refined Relocation (by Dynious)
Scott's Tweaks (by scottkillen)
TrashSlot (by BlayTheNinth)
Ender Storage (by chicken_bones)
Custom Main Menu (by lumien231)
Magmaox Mod (by witherlord00)
Practical Logistics (by Ollie_Lansdell)
Minefactory Reloaded (by skyboy026)
CreeperCollateral (by INpureProjects)
WAILA Blacklist (by SanityCh3ck)
Thermal Singularities (by WanionCane)
Brandon's Core (by brandon3055)
Wireless Crafting Terminal (by TheRealp455w0rd)
AgriCraft (by InfinityRaider)
Mystical Mobs (by thatguy3039)
Music Choices (by Tmtravlr)
Biomes O' Plenty (by Glitchfiend)
Random Things (by lumien231)
stimmedcow : NoMoreRecipeConflict (by Oliv1er)
Project Red - Integration (by Mr_TJP)
JourneyMap (by techbrew)
sprinkles_for_vanilla (by VikeStep)
ChiselTones (by TehNut)
MrCrayfish's Furniture Mod (by Mr_Crayfish)
Block Properties (by docrobb)
Better Boat (by SanAndreasP)
qCraft (by Kulttuuri)
TiC Tooltips (by squeek502)
Highlands (by fabricator77)
NEI Addons (by bdew)
BetterFps (by Guichaguri)
InfiniBows (Infinity Bow Fix) (by Myrathi)
Armor Overlay (by TheOldOne22)
MagicalDecorations (by Jhary)
Just Another Spawner (by Crudedragos)
LaunchGUI (by TehNut)
Kore Sample (by scottkillen)
ProjectE (by sinkillerj)
Railcraft (by CovertJaguar)
Carpenter's Blocks (by Syntaxial)
EnderCore (by tterrag1098)
FogNerf (by Portablejim)
AE2 Stuff (by bdew)
MalisisDoors (by Ordinastie)
MmmMmmMmmMmm (by bonusboni)
DimensionalCore (by Silly511)
Pam's HarvestCraft (by MatrexsVigil)
ChatFlow (by Vazkii)
Thaumaturgical Knowledge (by Doctor_Benway)
ArchitectureCraft (by gcewing)
Fullscreen Windowed (Borderless) for Minecraft (by hancin)
Auto Dropper (by Rubironi)
Waterhook (by Henry_Loenwind)
Avaritiaddons (by WanionCane)
Gadomancy (by makeoo)
NotEnoughKeys (by dmodoomsirius)
Thaumic Exploration (by nekosune)
Barkifier (by Tschipp)
WebShooter (by josephcsible)
Waystones (by BlayTheNinth)
NotEnoughThaumcraftTabs (by fewizz)
NotEnoughIDs (by fewizz)
Sidben Redstone Jukebox (by sidben)
Thaumcraft NEI Plugin (by DjGiannuzz)
Wawla - What Are We Looking At (by darkh4x)
Railcraft Cosmetic Additions (by Cream_Tea)
UndergroundBiomesConstructs (by Zeno410)
Ender IO (by CrazyPants_MC)
NEI Integration (by tonius111)
StatusEffectHUD (by bspkrs)
INpureCore (by INpureProjects)
Mouse Tweaks (by YaLTeR97)
Magical Crops: Core (by Mark719)
Revamp (by rivvest)
It's the little things (by zlepper)
Metallurgy Core (by JeanGlassmaker)
CoFH Core (by TeamCoFH)
LootBags (by Malorolam)
Tainted Magic (by yorkeMC)
Clock HUD (by QKninja)
Automagy (by Tuhljin)
Applied Energistics 2 (by AlgorithmX2)
Project Zulu
Tick Dynamic
amerem3 commented 7 years ago

Im having issues with fps as well ive gone from 100+ to 20 or less Rail Chronicles modpack, Ill get you a mod list

amerem3 commented 7 years ago

AppleCore (by squeek502) Hunger Overhaul (by progwml6) Mantle (by mDiyo) Tinkers Construct (by mDiyo) Waila (by ProfMobius) CodeChickenCore (by chicken_bones) NotEnoughItems (by chicken_bones) Another One Bites the Dust (by ganymedes01) AgriCraft (by InfinityRaider) Applied Energistics 2 (by AlgorithmX2) BdLib (by bdew) AE2 Stuff (by bdew) Buildcraft Compat (by buildcraftchildsplay) FastCraft (by Player) PlanetguyLib (by Planetguy) Remain in Motion (by Planetguy) BiblioCraft (by JDSinclair) BiblioCraft: BiblioWoods Forestry Edition (by JDSinclair) BiblioCraft: BiblioWoods Biomes O'Plenty Edition (by JDSinclair) CoFH Core (by TeamCoFH) Iron Chests (by progwml6) DecoCraft2 (by RazzleberryFox) WR-CBE-Universal (by chicken_bones) Carpenter's Blocks (by Syntaxial) FastLeafDecay (by Olafskii) Project Red - Base (by Mr_TJP) Project Red - Integration (by Mr_TJP) Project Red - Lighting (by Mr_TJP) Project Red - Compat (by Mr_TJP) Project Red - Fabrication (by Mr_TJP) Forestry (by SirSengir) ExtraTiC (by JeanGlassmaker) ExtraCells2 (by DrummerMC) Traincraft (by Mrbrutal) Pam's HarvestCraft (by MatrexsVigil) Chisel (by tterrag1098) Realistic Terrain Generation (by WhichOnesPink) Farseek (by delvr) Streams (by delvr) Binnie's Mods (by Binnie567) BinniePatcher (by Chocohead) Biomes O' Plenty (by Glitchfiend) FTBLib (by FTB) FTB Utilities (by FTB) Industrial Craft (by Player) Nuclear Control 2 (by Xbony2) RebornCore (by modmuss50) TechReborn (by modmuss50) Railcraft (by CovertJaguar) CraftTweaker (by jaredlll08) Mouse Tweaks (by YaLTeR97) NEI Addons (by bdew) NEI Integration (by tonius111) OpenModsLib (by OpenMods) OpenBlocks (by OpenMods) OpenSecurity (by MichiyoRavencroft) OpenPrinter (by MichiyoRavencroft) OpenFM (by MichiyoRavencroft) Thermal Expansion (by TeamCoFH) Thermal Foundation (by TeamCoFH) Thermal Dynamics (by TeamCoFH) Thermal Smeltery Redux (by MegaT145) TiC Tooltips (by squeek502) Immersive Engineering (by BluSunrize) Immersive Integration (by UnwrittenFun) Roguelike Dungeons (by Greymerk) Waila Harvestability (by squeek502) Wawla - What Are We Looking At (by darkh4x) Flaxbeard's Steam Power (by TheSatanicSanta) In-Game Account Switcher (by The_Fireplace) Aroma1997Core (by Aroma1997) AromaBackup (by Aroma1997) Resource Loader (by lumien231) Gear Swapper (by McJty) Platforms (by ShetiPhian) Dynamic Surroundings (by OreCruncher) Ztones (by riciJak) Overwatch Shader Pack for NHAVE's OmniWrench (by nhave) SecretRoomsMod (by AbrarSyed) Magneticraft (by cout970) Destiny Shader Pack for NHAVE's OmniWrench (by nhave) NHAVE's OmniWrench V3 (by nhave) NotEnoughResources (by Way2muchnoise) Big Reactors (by ErogenousBeef) Iguanas Tinker Tweaks (by bonusboni) NVLIC2Machines (by NVLMagic) Tinkers' Mechworks (by mDiyo) ShetiPhianCore (by ShetiPhian) Steve's Factory Manager (by Vswe) EnderCore (by tterrag1098) Solar Expansion (by TedTheRusSB624) TrashSlot (by BlayTheNinth) NetherPortalFix (by BlayTheNinth) Logistics Pipes (by RS485) Simply Jetpacks (by tonius111) MineTweaker RecipeMaker (by DoubleDoorDevelopment) SimpleLabels (by insaneau) RFDrills (by GoldenAppleMinecraft) McJtyLib (by McJty) Redstone Arsenal (by TeamCoFH) BRCore (by TheBRForgersTeam) Ender Storage (by chicken_bones) OpenModularTurrets (by Poenjabiesous) INpureCore (by INpureProjects) Steve's Addons (by hilburn) Networks Manager (by cyrilgenin) High Pressure Tanks (by patrick96MC) IC2 Wrench Plugin (by Speiger) Industrial Expansion [TE Addon] (by TheBRForgersTeam) RFTools (by McJty) Another One Bites the Dust: Berry Bushes (by ganymedes01) NotEnoughKeys (by dmodoomsirius) NotEnoughIDs (by fewizz) NHAVE's Library (by nhave) Minefactory Reloaded (by skyboy026) EIORecipesTEInductionSmelter (by XFactHD) WAILA Plugins (by tterrag1098) Custom Main Menu (by lumien231) NotEnoughCodecs (by OpenMods) NetherOres (by skyboy026) Dense Ores (by RWTema) Extra Utilities (by RWTema) Grappling Hook Mod (by Yyon) Steve's Carts 2 (by Vswe) ChiselTones (by TehNut) Iron Chest Minecarts (by ganymedes01) Router Reborn (by TomEVoll) Gendustry (by bdew) Pressure Pipes (by bdew) ElecCore | Rendering Library (by Elec332) Deep Resonance (by McJty) MoreChisels (by TehNut) NHAVE's Omniwrench Integrations (by nhave) Catwalks 2 (by thecodewarrior1) Advanced Generators (by bdew) VoxelMap (by Mamiya0taru) NEIlootbags (by Gigabit1011) LootBags (by Malorolam) Ender IO Addons (by Henry_Loenwind) OpenComputers (by Kethtar) Ender IO (by CrazyPants_MC) Buildcraft (by CovertJaguar) Inventory Tweaks (by Kobata) JAFFA Foods (A HarvestCraft Addon) (by Murdy007) I think thats most of them at least

narc0tiq commented 7 years ago

I ran into this recently, but stupidly did not capture the VisualVM results, so I only have memory to go by.

The problem I was trying to solve was that hitting F7 (to bring up NEI's mob spawn info overlay) completely ate all the FPS and begged for more; with the VisualVM monitor I eventually discovered the difference between F7 and not-F7 to be a lot of extra time spent in func_73154_d (IChunkProvider.provideChunk) in net/minecraft/world/chunk/Chunk, which called into Farseek. At this point, I removed Farseek and everything was golden.

Today I decided to try to find out why it was happening, and found the diff here at line 23 of FarseekCoreMod.scala -- presumably generateWorld only gets called when the chunks are actually being generated, rather than every time the chunks are accessed. I've been able to confirm that Farseek 1.0.11 doesn't exhibit the issue. However, I can't guarantee the part of the diff highlighted is the actual issue.

The mob spawn overlay is particularly good for highlighting the error, because it asks for the chunks around the player so that it can ask whether specific blocks' top surfaces are spawnable, and it seems to do this aproximately once for each chunk within overlay range per frame. However, even without the overlay, the extension to provideChunk is getting called every time a chunk is retrieved from memory/storage, so it'll slow down everything by some amount.

delvr commented 7 years ago

Many thanks narc0tiq for your analysis, this will be very useful. The changes in 1.1 was a fix for issue https://github.com/delvr/Farseek/issues/8 but I've been getting many reports of perf issues for other players which I'm consolidating in this ticket. I'll investigate and update when I have more.

delvr commented 7 years ago

Sorry for the delay - I've made some progress with 1.7.10 performance and should have an update ready for testing in the next few days.

delvr commented 7 years ago

I've released Streams 1.7.10-0.3 and Farseek 1.7.10-2.0 which should mitigate some performance issues. Please give it a try and let me know if you see improvements in your worlds.

theshadowake commented 7 years ago

Just tested it - worlds better than Farseek 1.1, still a slight loss of FPS compared to 1.0.11 but definitely usable now :) As a test I stood in the same spot and measured the average FPS over 5 mins after letting the world load in and this is what I got: 1.0.11=96fps 1.1=43fps 2.0=88fps (not exactly scientific but gives an idea). This was using Awakening modpack BTW.

theshadowake commented 7 years ago

PS thanks for looking at this BTW 👍