Time Nick Message 14:09 MTDiscord @exe_virus not a good idea as you'll need your own ipairs 14:10 MTDiscord and not all Lua implementations handle [0] = ... well (LuaJIT does tho) 14:10 MTDiscord (performance-wise) 14:10 MTDiscord if you always subtract 1, you can usually shift your variable 14:10 MTDiscord also a single arithmetic OP most likely won't be the bottleneck 15:34 MTDiscord Ipairs is slow anyways. And you're right, it's not the main bottleneck, but it does make the code messy 15:37 specing what's the fastest, for i = 1, #list? 15:37 specing Hmm, there was a springrts benchmark out there, but springrts doesen't use luajit to my knowledge 17:12 MTDiscord > Ipairs is slow anyways. And you're right, it's not the main bottleneck, but it does make the code messy Not using ipairs makes the code messy for little to no performance gain 18:01 sfan5 merging #10659 in a few minutes 18:01 ShadowBot https://github.com/minetest/minetest/issues/10659 -- Fix Visual Studio build in Actions by MoNTE48 23:12 lhofhansl Looks like #10656 is hurting performance. All the lookup of v3s16 seems to slow things and the indirection through MapSector had helped with that. 23:12 ShadowBot https://github.com/minetest/minetest/issues/10656 -- Remove MapSector completely. by lhofhansl 23:12 lhofhansl Using an unordered_map (with a hash function on v3s16) does not improve things (in fact makes it much worse). 23:13 lhofhansl So I think I'm going to drop that PR. 23:14 sfan5 how does that hash function look? 23:19 lhofhansl https://github.com/freeminer/freeminer/blob/master/src/util/unordered_map_hash.h#L31 23:19 lhofhansl (Lifted it from freeminer) 23:22 sfan5 hm 23:22 lhofhansl It seems iteration it 23:22 lhofhansl is what is expensive. 23:22 sfan5 that'd make sense 23:23 lhofhansl I was a bit surprised myself. 23:27 lhofhansl I 23:27 lhofhansl (can't type today) 23:27 lhofhansl I 23:27 lhofhansl I'll work on multi-threading with with MapSectors. Would have been easier without those. 23:29 lhofhansl And #10637 seems somewhat important to avoid generating the same map chunk multiple times (when multiple emerge threads are enabled) 23:29 ShadowBot https://github.com/minetest/minetest/issues/10637 -- Avoid generating the same chunk more than once with multiple emerge threads by lhofhansl 23:45 lhofhansl I could also introduce a hierarchical map without the need for MapSector. That would retain the structure from before. I'll try that.