-
-
Notifications
You must be signed in to change notification settings - Fork 3k
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
Building script
in debug mode fails on 32 Bit GNU/Linux
#13045
Comments
How much storage do you have on the VM? |
It's not a VM, and there is plenty of swap space and disk space available. The machine has 8 GiB of RAM. But none of this really matters, as this is about address space exhaustion... |
@antrik Sorry about that, the error above is similar to one that I got when I ran out of disk space. |
@Coder206 I see. I checked the memory usage though, and it is indeed approaching 3 GiB before it fails. |
I made some research on the best approach to install servo form scratch. You might want to take a look at this thread #12356 |
I've got the same problem. Machine as 8GB RAM, 64bit kernel, 32bit userland (devuan ascii). Is there anything I can do to reduce (per process) memory consumption ? |
@metux last time I tried, disabling debug symbols was the only thing that seemed to help. However, that was quite some time ago. Pretty significant changes to the compiler have taken place since then -- so there might be other options now... AIUI, the reason it takes so much memory is that the Rust front-end passes a humongous amount of intermediate code down to the LLVM code generator all at once, which results in LLVM building up huge temporary data structures while translating it to machine code. |
Already trying it (as somewhere this already had been suggested).
So, is it actually a LLVM problem ? BTW: don't see any llvm process - it it running in the rustc process ? |
Just crashed again, even non-dev doesnt work :( |
@metux yes, rustc links libllvm. Not sure it's fair to call it an LLVM problem... I think the Rust front-end could choose to pass down to work in smaller chunks? Don't know the details though. If you really want to get into it, the #rust-internals IRC channel is probably the place to go. See also #1799 for the possibility of addressing (working around?) the issue in this specific instance on the Servo side. |
The 3 GiB virtual address space available on 32 Bit systems is no longer sufficient for a debug build of Servo on x86:
In release mode, virtual memory usage is around 2600 MiB, so that's still fine for now...
The text was updated successfully, but these errors were encountered: