I needed a computer to run Matlab image processing programs. Matlab needs a lot of memory, and my 48GB T7500 wasn’t cutting it. Why does Matlab gobble memory like that? Part of it is data representation. You can represent image pixels as one or two byte unsigned integers, like Photoshop does, but it limits the operations you can perform. Having no negative numbers, for example, is a problem. There are workarounds, but they make programming less fun. The natural way to encode pixel values in Matlab is as triplets of double precision floating point numbers. That gives you more dynamic range and more precision than you need for almost any operation. So far, so good, but that’s 24 bytes per pixel. A 4K x 6K image takes up 576 MB, and Matlab creates lots of intermediate variables.
I figured I needed a 128GB or 256 GB computer. I was thinking the 128 GB would probably be enough. While I was in Australia for the eclipse, I was talking with a friend of mine who is an astronomer. I asked him how much RAM he had on his workstation. The answer was half a terabyte. He said, “Kasson, you really don’t want to compete with me on this,” and he’s right, but I came away from the conversation thinking that 256 GB was the way to go. RAM co-dependence?
I looked at the usual suspects: Dell, Lenovo, and hp. (Having worked for Hewlett-Packard in the late sixties and early seventies, I usually use lower case letters in the acronym, which was the internal practice to make it look more like the logo. I know it’s an affectation, and I apologize.) I had trouble with both the hp and Lenovo configuration web apps. I wanted a solid state disk of 256 GB or 512 GB capacity for my boot drive, and three 3 TB disks arranged in a striped (RAID 0) array for data. The Lenovo configurator complained that the boot disk was too small for a machine with that much RAM. I knew what the problem was because I’d run into it on the T7500. Dell had configured Windows, and Lenovo was evidently planning to configure Windows, for hibernation.
When you tell Windows that you want it to be able to hibernate, it creates a file on the boot disk that is the same size as the amount of RAM on the computer. I guess the idea is that, when the machine hibernates, it writes all the data in RAM to the hibernate file, and reads the file when it wakes up. If it doesn’t keep track of how much memory is in use for the reading and writing, on a machine with anywhere near the memory I was thinking about, it would make the entrance to the hibernation state very slow, and the waking up far slower than a cold boot. If it doesn’t write the contents of the entire physical memory onto the disk, why does it need such a big file? Just to make sure that, if all the physical memory is in use, the machine can hibernate? However it works, and whatever is/was going on in the minds of the Microsoft OS designers, I decided that I wanted Window to be configured without the hibernation capability. I’d taken it off the T7500, and I didn’t want it on the new machine.
I was unable to get Lenovo to allow me to configure the machine without hibernation. I probably could have prevailed if I’d have escalated, but they were the high-priced spread by a lot, and why spend the time if you already know you’re not going to buy from them?
I couldn’t even get close with the hp configurator. I gave up and ordered from Dell. I told the rep to put a note on my order to configure the OS with no hibernation. He said he would.
The computer arrived Thursday night, and I set it up yesterday. There’s not much in the box: the computer itself, cradled in a well-designed foam enclosure, keyboard, mouse, power cord, DisplayPort-to-DVI adapter, and lawyer-mandated paperwork. No manual. No restore disk. No read-this-first. No quick setup guide. It looks like Dell is expecting buyers of their workstations to be pretty sophisticated.
I pulled the protective plastic from the front of the machine. It’s heavy, but there are handles on the front and rear, so that two people can manage it pretty easily. It’s designed mainly for rack mounting, but you can put it on its side on the floor if you’re not bothered by the lack of feet. There were no rack mount ears in the box; I’m guessing I could have had them if I’d have asked.
I answered Microsoft’s configuration questions, checked the “I agree” boxes for the OS and the hardware, and the machine launched Windows. Ta-da? Not even close. The screen went black, although the light on the monitor indicated that it was connected. Was the computer thinking about something? Maybe so; the disk light was flickering intermittently. I waited five minutes. Nada. I gave the computer the three-finger salute, and the screen sprang to life, asking me if I wanted to start the task manager or what. I chose the shutdown option. On reboot, the same thing happened. I did the same thing. On the next reboot, Windows appeared normally, although it was running slow.
I added the machine to the domain, and it rebooted. Windows came up again. I noticed one strange thing: Windows said that only 192 GB of RAM was usable. What happened to the other 64 GB? I made a note to check that out later. I installed all 47 Windows updates, and rebooted. Back to the black screen. Two more reboots produced the same behavior. I swapped monitors. Same old same old.
I called Dell tech support. I got a tech whose native language was American English. His initial take was that there could be some app blanking the screen. I told him that I hadn’t had a chance to start any apps, since this occurred at boot. He said that my logon script could start an app. I thought that showed a remarkable amount of cleverness, but it didn’t apply in this situation, since I didn’t have any logon scripts for my user account.
The next step was to get the machine into Safe Mode. It wasn’t easy. Windows no longer puts up an indication that it’s about to start that allows you to press F8 then. If you see “Starting Windows” it’s too late. What you need to do is start tapping F8 when the Num Lock light comes on, and keep tapping it until you get the screen that allows you to choose the Windows mode, or you see the “Starting Windows” text and you know you didn’t hit F8 at precisely the right moment. Three times out of four, you miss it, and that seems to always happen when you restart instead of shutdown and power up (although that makes no sense and is probably a matter of too small a sample size).
I finally got into Safe Mode with Networking, and I could see the desktop. I got the Dell remote tool installed, and the tech could see it too. He removed all the non-Microsoft startup entries with msconfig and booted into the normal Windows mode. Black screen. The tech thought that meant some Microsoft entry was causing the problem. He suggested removing the Microsoft entries on at a time until the problem was fixed. I balked, saying that would take days.
Back in Safe Mode, we restored the machine to the original shipped configuration: not a member of the domain, and with those 47 updates not installed. Same problem when we tried to boot to normal mode.
The tech consulted some other people at Dell for about five minutes, came back on the phone, and said that they thought the display driver was a likely possibility. That sounded reasonable to me. We removed the NVIDIA driver, and Windows helpfully substituted a generic VGA driver. The desktop was now visible again, even with Windows out of Safe Mode. It certainly looked like the display driver was the problem. Probably there was some feature of the display that didn’t get used until Windows tried to put up the desktop.
While we were messing with the desktop, I noticed that the boot drive was filled almost completely to capacity. It turned out that, in spite of my instructions to the contrary, the machine was configured to hibernate. Since Windows was saying that 192 GB of RAM was usable, the hibernation file on the boot SSD was 192 GB, or ¾ the capacity of the drive. There was also a swap file that was around 70 GB. We cut the swap file down to 10 GB. We tried to put the swap file on the 9 TB virtual drive, but Windows wouldn’t do that. We tried to switch off hibernation mode with a command line incantation (“powercfg.exe /hibernate off”, if you ever need it), but the program said it couldn’t do that with a legacy display driver (the VGA driver) installed.
We downloaded and installed the latest NVIDIA driver supported by Dell, which was older than NVIDIA’s latest version of the reference driver, which is usually the case. Back to the black screen when the Dell remote control program wasn’t active, but with limited function when it was active (probably because it forced Windows to dumb down the GUI to Windows Basic). In that mode, Windows allowed us to remove the hibernation feature.
Here’s where I stand now. I don’t know why the machine is only recognizing three fourths of the available physical memory. I suspect the Dell manufacturing folks turned off 64 GB to get the hibernation file to fit on the boot drive. I can’t poke around and find out because of the more important problem, and the one that’s making the computer serviceable mainly as a doorstop, which is the black screen.
Dell says it will do some research and get back to me on Monday. We’ll see. If I were sure the only problem with the machine was the display driver, I’d swap in another, non-NVIDIA, display adapter, load its driver, and see if that fixes it. However, that would render the machine unserviceable by Dell, so I’ll just wait.
I remember back in the nineties when I was one of the few users running two processors under Windows 95. There was a lot of strange behavior on those machines. I’m beginning to fear that 256 GB of RAM is putting me in the 4-sigma-out part of the user base, where there’s not a lot of testing done.
Speaking of testing, I can’t imagine how this machine got out of Dell’s system test, unless they just installed the Windows image on the SSD and never checked to see if it ran.
Leave a Reply