libretro / parallel-n64

Optimized/rewritten Nintendo 64 emulator made specifically for Libretro. Originally based on Mupen64 Plus.
328 stars 128 forks source link

Conker has mini freezes with the new Dynarec version #617

Open Tasosgemah opened 4 years ago

Tasosgemah commented 4 years ago

The game works and runs at full speed but in steady intervals it temporarily freezes for a few seconds.

luigiplus commented 4 years ago

I have also experienced the same problem as Tasosgemah.

mudlord commented 4 years ago

Due to code compilation of basic blocks using LLVM. LLVM is basically being used as a self contained C compiler here to build each basic block. Compiling each C basic block incurs a performance penalty.

Ideally it should be replaced with something like libjit/GNU Lightning/Xbyak, to emit machine code directly.

mudlord commented 4 years ago

Should be fixed with newest build.

Tasosgemah commented 4 years ago

Seems it's not yet uploaded as i still get the freezes after updating just now. Will test again tomorrow.

luigiplus commented 4 years ago

I have tested the latest version (2.0-rc2 519e642) but the freezes still appear.

inactive123 commented 4 years ago

Do you have a savestate where these stalls happen?

Tasosgemah commented 4 years ago

No need for a save state, they happen at the very start of the game. Even when Conker rubs the RARE logo during the intro. Not sure if ingame the freezes still happen but they do in the starting pub area where the main menu is. I stopped testing after that.

luigiplus commented 4 years ago

I've been testing for a while and it also happens in gameplay and the rest is as tasosgemah says.

mudlord commented 4 years ago

That was the spot @Tasosgemah where I had stalls, now they seem fixed for me, then again I am on high endish hardware.

m4xw commented 4 years ago

Isnt this hacktarux dynarec related?

Tasosgemah commented 4 years ago

Ι have an i5 4670 CPU and a GTX 1060 6GB.

Using Windows 10.

luigiplus commented 4 years ago

i5 3570 no k and r9 380 windows 10.

Tasosgemah commented 4 years ago

Using the dynarec option with Angrylion and Parallel. Tried the different sync levels but they didn't make any difference.

ichee commented 4 years ago

These issues aren’t present in latest Parallel-N64 builds when using Pure-Interpreter and Parallel-RDP, though Vulkan support is required and host CPU needs to be running at least 4Ghz.