Giter Site home page Giter Site logo

Comments (8)

midwan avatar midwan commented on May 27, 2024 1

I guess this is related to #620 , if we're talking about JIT compatibility.

from amiberry.

midwan avatar midwan commented on May 27, 2024 1

Closing this as a duplicate

from amiberry.

Yserra avatar Yserra commented on May 27, 2024

I had a similar issue a few years ago. If I remember well, after long weeks of tests, I finally solved the problem on the 32 bit version of Amiberry by installing another 68030.library/68040.library file in the LIBS: folder of my Workbench image disk. Then, JIT suddenly worked.

from amiberry.

midwan avatar midwan commented on May 27, 2024

@Realinferno
The JIT implementation is different for 32-bit and 64-bit targets. So it's possible that there is a bug there somewhere, if it behaves differently between those two versions. However, I didn't write this JIT implementation, so it's very hard for me to figure out and fix such a bug, if it's there. :(

The slowdown behavior you described, sounds a lot like an overheating problem. The Pi4 needs active cooling, and if you're running Amiberry using 100% of it's CPU all the time, it will heat up and it may be throttling down due to that. That would explain why it seems to run fine for a while, but slows down afterwards.

from amiberry.

Realinferno avatar Realinferno commented on May 27, 2024

I had a similar issue a few years ago. If I remember well, after long weeks of tests, I finally solved the problem on the 32 bit version of Amiberry by installing another 68030.library/68040.library file in the LIBS: folder of my Workbench image disk. Then, JIT suddenly worked.

Ok, thanks for the suggestion! I found 68030.library and 68040.library files on Aminet (by Thomas Richter). I will copy these to the LIBS: folder and see what happens.

from amiberry.

Realinferno avatar Realinferno commented on May 27, 2024

@Realinferno The JIT implementation is different for 32-bit and 64-bit targets. So it's possible that there is a bug there somewhere, if it behaves differently between those two versions. However, I didn't write this JIT implementation, so it's very hard for me to figure out and fix such a bug, if it's there. :(

The slowdown behavior you described, sounds a lot like an overheating problem. The Pi4 needs active cooling, and if you're running Amiberry using 100% of it's CPU all the time, it will heat up and it may be throttling down due to that. That would explain why it seems to run fine for a while, but slows down afterwards.

Thanks for your reply! I can imagine this is a hard nut to crack. Do you know who wrote the JIT implementation? Are you able/willing to look into this issue yourself or should I try to reach out to somebody else (e.g., I could e-mail the developer of HstWB installer Henrik Nørfjand Stengaard). Of course, I can provide more details that could help you (or somebody else) to recreate the issue.

Regarding the slowdown, I do use both active (two fans) and passive cooling (heatsinks) on my Pi4. Normally, the temperature of the Pi lies somewhere between 40 and 50 degrees Celcius. However, I have not checked the temperature while running demanding games. So, this is something I will look into.

from amiberry.

Realinferno avatar Realinferno commented on May 27, 2024

Hello,

I have tried/tested various things since my last post. First of all, I installed new 68030 and 68040 libraries (on Aminet, by Thomas Richter). Unfortunately, this did not make any difference (Workbench 3.1 with JIT still crashed on boot-up on my Raspberry Pi 4B, 32-bit installation). @Yserra: perhaps I need different versions of the libraries?

Second, I checked the temperature of my Pi 4B (64-bit installation) when running demanding games like Quake 2 (with JIT CPU & FPU). With both passive and active cooling (two fans), the temperature did not exceed 50 degrees Celsius. So, temperature is not a problem. Games like Quake 2 (as well as Duke3D, Doom 2) run really well (640x480), but still the framerate tends to drop after playing a while. Simply opening and closing the Amiberry menu (within a matter of seconds) solves the problem (it seems like opening the Amiberry menu “re-activates” the JIT?).

Lastly, I also installed Amiberry 32-bit and 64-bit (using Raspberry Pi OS lite 32-bit or 64-bit and HstWB installer) on a Raspberry Pi 3B I had lying around. As such, I was able to compare 4 different installations (Pi 3B/4B, 32-bit/64-bit version of Amiberry), with otherwise the same set-up (Amiberry v5.5.1 installed via HstWB installer, A1200 AGA set-up with 68030 CPU, 68882 FPU, fastest CPU speed, 2MB chip RAM, 128 MB fast RAM, 16MB RTG RAM, same .hdf file running workbench 3.1).

I compared the 4 installations with regard to JIT boot-up and running some more demanding games that would benefit from JIT: Day of the Tentacle and Sam & Max via ScummVM (v1.5.0), Death Rally (latest full version 1.1). The results are as follows:

Raspberry Pi 3B (32-bit)
• Workbench 3.1 boots-up with JIT (CPU & FPU).
• Day of the Tentacle and Sam & Max run well (a bit on the slow side).
• Death Rally runs well.

Raspberry Pi 3B (64 -bit)
• Workbench 3.1 boots-up with JIT (CPU & FPU)
• Day of the Tentacle and Sam & Max crash at start-up (during intro animation), also when only JIT CPU is enabled. Without JIT the Pi is too slow to run the games properly.
• Death Rally starts-up fine, but crashes when starting a race (when the screen changes to the actual race track), also when only JIT CPU is enabled. Without JIT the Pi is too slow to run the game properly.

Raspberry 4B (32-bit)
• Workbench 3.1 crashes on start-up with JIT (CPU & FPU). It does boot-up with only JIT CPU enabled.
• Day of the Tentacle and Sam & Max run well (with only JIT CPU).
• Death Rally runs well (with only JIT CPU).

Raspberry 4B (64-bit)
• Workbench 3.1 boots-up with JIT (CPU & FPU).
• Day of the Tentacle and Sam & Max crash at start-up (during intro animation), also with only JIT CPU. Without JIT both games run well (a bit on the slow side).
• Death Rally starts-up fine, but crashes when starting a race (when the screen changes to the actual race track), also when only JIT CPU is enabled. Without JIT the game runs well.

So, it seems like the JIT implementation in Amiberry still has a few issues. I’m not sure whether the above will help solve these issues. All classic Amiga games I tried out so far (which is quite a lot) run really well. So, all in all, I’m really happy with Amiberry! Perhaps I just need to/should be patient and wait for what the next version of Amiberry will bring. Alternatively, I could try to install Amiberry via a different OS (I heard Manjaro runs Amiberry really well?).

from amiberry.

giantclambake avatar giantclambake commented on May 27, 2024

Can confirm this ~ I see similar behaviour on the RPI4/B here running the 'Pimiga' image ; JIT is pretty much unusable.

Reneg: I had another look at this wrt Pimiga ~ 32bit JIT hurls chunks in libc.6 ...but it's probably not the point here =)

Ergo, I used this image;

https://downloads.raspberrypi.com/raspios_oldstable_full_arm64/images/raspios_oldstable_full_arm64-2023-10-10/2023-05-03-raspios-bullseye-arm64-full.img.xz

Set that up (I use a pironman v2), cloned the amiberry git, compiled with PLATFORM=rpi4-64-sdl2, moved the pimiga disks directory into the fray, and it works fine .... and I have to eat my words about 64bit JIT not working because now it's working fine.

With the pimiga setup at least ~ I'll swing around in the next few days and try those Amiga titles you mention, and report back.

from amiberry.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.