-
Notifications
You must be signed in to change notification settings - Fork 32
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Bug]: Some tests fail on 32-bit PowerPC [90% tests passed, 74 tests failed out of 729] #29
Comments
Shoot, this is quite a bummer. It is making me rethink removing the insistent warning. I'm now wondering if this is exactly the error encountered. I just didn't know why it would work for x86(64), riscv, and arm64, but not ppc. Unfortunately I don't have access to a ppc32 machine. I'm guessing that this will prevent your use of the library. If you can help me understand the crashes (which are all likely the same one or two), I can try to figure out a fix. I'm also very happy with any contribution you might be willing to make. |
AFAIK there are typically two reasons for this sort of errors: a clash of C++ runtime libraries (old OS one and new GCC one) and actual limitation of 32-bit arch. The first is more common, and normally can be fixed on our end (this is not a bug in a software tested, but an inherent issue of a set-up). In most cases, once fixed, it actually works robustly. However, if something is hitting the limit of 32-bit, solution should be different. I suspect it may be this case here. |
I'd be very surprised if more than one or two tests exceed 2GB runtime RAM usage. I doubt this would occur in 32-bit x86, though I should be able to test that. It could be system setup, but presumably you are building and running similar code, so that seems unlikely. I think there is likely some |
@barracuda156 Do you have any advice for getting an old laptop that might match your test case? I might be interested in purchasing something. I'd love to support dispenso on as many platforms as possible, but I only have so many platforms available to me |
@graphicsMan Laptop options are somewhat constrained, sadly, and until Linux ppc laptop is out, the best we got is PowerBook G4 1.67 GHz from 2005. It is tolerable to use and can be upgraded with SSD, but it is single core, and G4 does not support more than 2 GB RAM. If you have a space to accommodate a desktop, late 2005 models of PowerMacs G5 are pretty capable (and you can run some modern BSD or Linux too, not just an old MacOS). They often are sold cheap (and sometimes given out for free), but they are heavy – international shipping is a no-go. Aside of native hardware, there are two other options: Modern Talos II workstations on POWER 9 can run emulate G4/G5 hardware and run MacOS (or Linux, of course): https://www.talospace.com/2018/08/making-your-talos-ii-into-power-mac.html Finally, it is pretty easy to set up 10.5.8 or 10.6.8 (preferably Server versions of those) in a VM and run on any modern Intel hardware. Older Intel Macs can run 10.6.8 natively: I think the last models to do that out of the box are 2011 generation, but at least 2012 ones are able to do that with minor hacks. Then, you could build and run P. S. I think only OpenBSD currently provides pre-built ports for |
I have reproduced some issues on i386. It seems to fail fewer tests, but possibly fixing them would cover a lot of the failures for PPC as well. It may take me some time to fix these, but I will eventually slog through :) |
Great! |
I submitted changes a few days ago that fixed many 32-bit issues (some test, some in the library) for x86. Can you please try again with ppc 32? |
Sure, will do it tonight, thank you. |
From a721f22 commit:
|
Slightly disappointing considering I crushed dozens of 32-bit x86 failed test cases ;) How much memory does your machine have? I typically work in a land of ample gigabytes, but if you are under 2 gigabytes, it might be possible that some tests might run out of memory. |
@graphicsMan Machine has 16 GB, but at the moment restricted to 4 GB (for unrelated reasons, I am just lazy to reset boot args every time, another OS needs 4 GB strictly). I can make 16 GB available and re-run tests. |
It would be informative, but I think 4 GB should be enough since we should be restricted to that in the process anyway. Still, let's see? |
Contact Details
@barracuda156
What happened?
Build from ac845f0
Of course, there is no implication that this must be fixed specifically for PowerPC, I rather report the bug for the record.
Version
latest (Edge)
Code of Conduct
Log from tests:
LastTest.log
(I tried to run binaries via wrappers to fix
malloc
errors, but apparently here it does not help. I think I got the same results with and without wrapper scripts.)The text was updated successfully, but these errors were encountered: