During production of Finding Nemo, we started using Linux boxes in addition to SGIs.Why?
-
During production of Finding Nemo, we started using Linux boxes in addition to SGIs.
Why?3D painting software we wrote for laying out coral was written in C++ using templates, and the debug info was too large for IRIX, but was debuggable on Linux.
Was this a 32 bit vs. 64 bit issue?
No.
IRIX reserved half the address space for the kernel, while Linux only did a quarter.
So on Linux, we had 3GB, and the symbols fit.
It was a 32 bit show, both machines had 4GB max.
Plenty for Finding Nemo.
-
During production of Finding Nemo, we started using Linux boxes in addition to SGIs.
Why?3D painting software we wrote for laying out coral was written in C++ using templates, and the debug info was too large for IRIX, but was debuggable on Linux.
Was this a 32 bit vs. 64 bit issue?
No.
IRIX reserved half the address space for the kernel, while Linux only did a quarter.
So on Linux, we had 3GB, and the symbols fit.
It was a 32 bit show, both machines had 4GB max.
Plenty for Finding Nemo.
How do I know this?
I was the project lead, although the best parts of it were written by my smarter collaborator Michael O’Brien (eventually SVP of R&D at Technicolor).
This story is *not* the 32 to 64 bit transition.
This is just us trying to get another GB of address space, where we leveraged the ongoing Linux port work w/alot of our own.
Now that I think about it, all the impactful work I’ve done in my career happened in 32 bits of address space.
4GB always seemed like a lot to me.
-
How do I know this?
I was the project lead, although the best parts of it were written by my smarter collaborator Michael O’Brien (eventually SVP of R&D at Technicolor).
This story is *not* the 32 to 64 bit transition.
This is just us trying to get another GB of address space, where we leveraged the ongoing Linux port work w/alot of our own.
Now that I think about it, all the impactful work I’ve done in my career happened in 32 bits of address space.
4GB always seemed like a lot to me.
@Drwave I’m still amazed at what I managed to achieve with just 32 KB of RAM… and 100 KB floppy discs to store programs and data on.
The first hard drives I remember using at school were huge & held, if my memory serves me, just 5 MB - and that seemed like a lot at the time.
We’ve come a very long way in the space of just a few decades.
-
@Drwave I’m still amazed at what I managed to achieve with just 32 KB of RAM… and 100 KB floppy discs to store programs and data on.
The first hard drives I remember using at school were huge & held, if my memory serves me, just 5 MB - and that seemed like a lot at the time.
We’ve come a very long way in the space of just a few decades.
@Bluedonkey totally agree.
But I tell this particular story because I expect folks today look at Finding Nemo (and the Pixar movies that preceded it) and don’t expect those were done on computers with less memory than pretty much every PC you can buy today.
-
@Bluedonkey totally agree.
But I tell this particular story because I expect folks today look at Finding Nemo (and the Pixar movies that preceded it) and don’t expect those were done on computers with less memory than pretty much every PC you can buy today.
@Drwave @Bluedonkey well if one knows that the Apollo missions werde done with computers much slower than very old calculators one can imagine a lot more. Like banks still using COBOL on mainframes etc. Thanks for the story. what happened to this software? was it only used once?
-
@Bluedonkey totally agree.
But I tell this particular story because I expect folks today look at Finding Nemo (and the Pixar movies that preceded it) and don’t expect those were done on computers with less memory than pretty much every PC you can buy today.
@Drwave @Bluedonkey thanks for sharing. That reminds me about how excited I was to learn about how Digital Domain used Linux on DEC Alpha to render scenes for "Titanic" in the late 90s. I actually applied for an sysadmin job, but never heard back from them...
-
@Drwave @Bluedonkey thanks for sharing. That reminds me about how excited I was to learn about how Digital Domain used Linux on DEC Alpha to render scenes for "Titanic" in the late 90s. I actually applied for an sysadmin job, but never heard back from them...
-
During production of Finding Nemo, we started using Linux boxes in addition to SGIs.
Why?3D painting software we wrote for laying out coral was written in C++ using templates, and the debug info was too large for IRIX, but was debuggable on Linux.
Was this a 32 bit vs. 64 bit issue?
No.
IRIX reserved half the address space for the kernel, while Linux only did a quarter.
So on Linux, we had 3GB, and the symbols fit.
It was a 32 bit show, both machines had 4GB max.
Plenty for Finding Nemo.
@Drwave Support for this 3 GB of virtual memory will go away pretty soon. It is one of the larger headaches in the Linux kernel and now obsolete because the hardware does not really exist anymore.
-
How do I know this?
I was the project lead, although the best parts of it were written by my smarter collaborator Michael O’Brien (eventually SVP of R&D at Technicolor).
This story is *not* the 32 to 64 bit transition.
This is just us trying to get another GB of address space, where we leveraged the ongoing Linux port work w/alot of our own.
Now that I think about it, all the impactful work I’ve done in my career happened in 32 bits of address space.
4GB always seemed like a lot to me.
@Drwave The address space limitations and exhaustion is also an issue when using Wine.
Windows also reserves about 2g of memory for the kernel.
This can clause issues when applications run on Linux as there is no such limitation or only the one you mentioned.
Address space exhaustion is a frequent issue for these kinds of programs especially on modern Linux. -
How do I know this?
I was the project lead, although the best parts of it were written by my smarter collaborator Michael O’Brien (eventually SVP of R&D at Technicolor).
This story is *not* the 32 to 64 bit transition.
This is just us trying to get another GB of address space, where we leveraged the ongoing Linux port work w/alot of our own.
Now that I think about it, all the impactful work I’ve done in my career happened in 32 bits of address space.
4GB always seemed like a lot to me.
@Drwave As I recall, the (32-bit) MIPS CPU makes only 2GB available in user mode, the upper half of the address space being used for special kernel mode mappings. I guess even 2GB seemed plenty when they designed it.
-
During production of Finding Nemo, we started using Linux boxes in addition to SGIs.
Why?3D painting software we wrote for laying out coral was written in C++ using templates, and the debug info was too large for IRIX, but was debuggable on Linux.
Was this a 32 bit vs. 64 bit issue?
No.
IRIX reserved half the address space for the kernel, while Linux only did a quarter.
So on Linux, we had 3GB, and the symbols fit.
It was a 32 bit show, both machines had 4GB max.
Plenty for Finding Nemo.
@Drwave So, where was Nemo found, in the end?
(sorry)
-
@Drwave The address space limitations and exhaustion is also an issue when using Wine.
Windows also reserves about 2g of memory for the kernel.
This can clause issues when applications run on Linux as there is no such limitation or only the one you mentioned.
Address space exhaustion is a frequent issue for these kinds of programs especially on modern Linux.@thaodan @Drwave I'm not sure why this would be a problem with Wine – while 32-bit Windows defaults to 2/2GB split, you can configure it for 3/1GB (/3GB bootloader switch, or IncreaseUserVa from Vista onwards); 32-bit executables have to opt-in to make use of this; when such 32-bit executables are run on 64-bit Windows, they get nearly 4GB of address space.
-
@thaodan @Drwave I'm not sure why this would be a problem with Wine – while 32-bit Windows defaults to 2/2GB split, you can configure it for 3/1GB (/3GB bootloader switch, or IncreaseUserVa from Vista onwards); 32-bit executables have to opt-in to make use of this; when such 32-bit executables are run on 64-bit Windows, they get nearly 4GB of address space.
@jernej__s @Drwave I don't know why exactly either.
But I have gotten crashes with applications crashing the memory boundary with 32bit applications
regularly.I once found a wine wiki that explained this issue more detailed but the only thing I could find was this:
https://gitlab.winehq.org/wine/wine/-/wikis/Wine-Developer's-Guide/Architecture-Overview#memory-management -
How do I know this?
I was the project lead, although the best parts of it were written by my smarter collaborator Michael O’Brien (eventually SVP of R&D at Technicolor).
This story is *not* the 32 to 64 bit transition.
This is just us trying to get another GB of address space, where we leveraged the ongoing Linux port work w/alot of our own.
Now that I think about it, all the impactful work I’ve done in my career happened in 32 bits of address space.
4GB always seemed like a lot to me.
@Drwave I don't know if it's a certain vintage of worker or shared sensibilities, but this reminds me of a recent piece from my buddy Simo:
https://simo.virokannas.fi/2025/11/memories/
Also, these stories never get old. Keep 'em coming.
-
How do I know this?
I was the project lead, although the best parts of it were written by my smarter collaborator Michael O’Brien (eventually SVP of R&D at Technicolor).
This story is *not* the 32 to 64 bit transition.
This is just us trying to get another GB of address space, where we leveraged the ongoing Linux port work w/alot of our own.
Now that I think about it, all the impactful work I’ve done in my career happened in 32 bits of address space.
4GB always seemed like a lot to me.
4Gb is a lot until it isn't.
Both of the static analysis products I've worked on were full of hacks to keep from running out of address space. One was 32-bit when I started there and I worked on the conversion, where the hacks turned "recompile with different flags" into a half-year project.
Of course, keeping object size down does wonders for performance even without swap.
-
How do I know this?
I was the project lead, although the best parts of it were written by my smarter collaborator Michael O’Brien (eventually SVP of R&D at Technicolor).
This story is *not* the 32 to 64 bit transition.
This is just us trying to get another GB of address space, where we leveraged the ongoing Linux port work w/alot of our own.
Now that I think about it, all the impactful work I’ve done in my career happened in 32 bits of address space.
4GB always seemed like a lot to me.
@Drwave I started my career working on a split-harvard architecture machine (yay, PDP-11!) and I have often wondered if we wouldn't have been better off leaving instruction space pointers at 32 bits with the data space pointers at 64. (Separate from how I suspect it might give chip designers room for interesting optimizations, since caching is very different for data vs instructions)
-
@Drwave So, where was Nemo found, in the end?
(sorry)
-
@Bluedonkey totally agree.
But I tell this particular story because I expect folks today look at Finding Nemo (and the Pixar movies that preceded it) and don’t expect those were done on computers with less memory than pretty much every PC you can buy today.
@Drwave @Bluedonkey Thanks for sharing this, reminds me of my Summer 2025 project trying to find viable Linux distros & configs to make old machine relevant. Core 2 Duo Asus UL30vt w SU7300 4GB RAM & switchable gpu iGPU/G 210M. Was lot easier than I expected, any solid distro w XFCE makes it fully usable today. Though SSD replacing HDD also helps.
-
@Drwave I don't know if it's a certain vintage of worker or shared sensibilities, but this reminds me of a recent piece from my buddy Simo:
https://simo.virokannas.fi/2025/11/memories/
Also, these stories never get old. Keep 'em coming.
@isaact @Drwave Though not practical everywhere Command Line Text based browsers are really fast to use when you only care about text. I use for reading ebooks and some Reddit/Forum. They load pages so quick I often think they failed to load even though I know better now. Both Links (my preferred) and Lynx Browsers are good. https://links.twibright.com/
-
During production of Finding Nemo, we started using Linux boxes in addition to SGIs.
Why?3D painting software we wrote for laying out coral was written in C++ using templates, and the debug info was too large for IRIX, but was debuggable on Linux.
Was this a 32 bit vs. 64 bit issue?
No.
IRIX reserved half the address space for the kernel, while Linux only did a quarter.
So on Linux, we had 3GB, and the symbols fit.
It was a 32 bit show, both machines had 4GB max.
Plenty for Finding Nemo.
@Drwave IIRC Windows (NT line) had a boot flag to switch between 2GB and 3GB