Finding the info in both FB group and multiple threads here and there is becoming more difficult, so I am pretty sure time has come for such a thread. The Xserve3,1 is very similar to the MacPro4,1 in upgrade limitations.
Part 1: Logic board
The logic board that was bundled with the default and the cheaper configuration was designed with only one CPU socket and 6 RAM slots available. By the way, Apple sold a replacement logic board for a fast swap and go procedure. The Apple part code to look for is 607-4282a. A logic board swap with the above mentioned one provides an extra CPU socket and extra 6 RAM slots.
1a) LOM
The LEDs on the fron panel are coupled to the IPMI chip via USB flex cable. To be able to use the full IPMI functionality later, do not forget to setup LOM on default logic board firmware and with a corresponding tool provided with the macOS/OS X Server build. It is not mandatory, but the utility does not check your SMC version but rather the hardcoded model in EFI firmware and though is not allowed to run on anything aside the Xserve.
To get the CPU load status lights on the front panel it is advised to use the AppleBMC.kext compiled from source for your macOS release.
1b) EFI Firmware
The stock firmware provided with Xserve3,1 is bundled with Nehalem CPU microcodes. This doesn't allow the usage of 6-core and 1333 Mhz RAM on the machine. By the way in 2018 Rominator claimed that he swapped the Xserve EFI chip with a Mac Pro one and after CPU swap everything booted just fine. After some misunderstandings and misbehaviour at the beginng on the original MR thread @tsialex now has lost any willingness to help with creating a custom EFI firmware.Nothingtoseehere. Hope things gonna change in the future. As for now we have to deal with the remains, considering the 2018 method as the only valid and possible.
Some caveats of the current method:
To both backup and flash the EFI firmware I successfully used @dosdude1 ROMTool. Tested it already with 4 of my Xserve3,1 logic boards, everything went fine.
Part 2: CPU
By default the firmware on Xserve logic boards allow the use of Nehalem 4-core CPUs rated at 95W TDP. But hardware-wise the logic board is able to handle more recent and more powerful Westmere CPUs, as seen on MacPro4,1 with the MacPro5,1 firmware flashed. But with the power of the new CPUs come some issues. The major one is the overheat due to a higher TDP of 130W per CPU, which is nearly 1.5x higher than the stock ones. They are currently 3 solutions to this, so basically this becomes more like an unbalanced inconvenience rather than an issue. The CPUs are listed here in the MP5.1 section.
Part 3: RAM
By default the Xserve logic board supports 1066 Mhz RAM with ECC capability. Once flashed to a Mac Pro firmware, there is a possibility to use higher frequency modules rated at 1333 Mhz, but only in RAM slots 1,3,5,6 of each CPU socket. The max amount of RAM tested in current configuration is 128G, but if you want more CPU performance, to stick with the trple channel RAM mode RAM slots 1,3,5 of each CPU socket are mandatory to be filled with identical RAM modules.
Part 4: Storage
SATA/SAS) By default the Xserve suports 3 types of local storage which offers us a choice between 3 SATA/SAS 3.5 inch drive bays, SSD connector on the LOM board and a Superdrive. There are 2 different HDD daughter board types available depending on the configuration, the RAID one with some heatsinks, RAM chips on it and coupled with a backup battery power, and the non-RAID one with an LSI controller in JBOD mode. To spread more confusion there are also two types of HDD caddies available, the SATA one and the hybrid SAS/SATA one. The logic is simple there - the less possible hassle configuration is a non-RAID daughter board connected to hybrid SAS/SATA caddies with SAS srives inside. It is the only way to use HDDs larger than 1TB. The hard way - a G5 daughter board with SATA connectors attached to a PCI-e SATA3 controller (in process, already got 2 Helium 10TB SATA HDDs with no possibility to return them). There is also an unsoldered SATA 7-pin connector, which is possibly available and wired.
AHCI) All Intel Xserves can natively boot from AHCI SSDs. The best performance should be either an Apple SSUBX in an Apple 12+16 to PCIe adapter, or a Samsung PM951 AHCI version in an M.2 to PCIe adapter. Bonus if you solder on a SATA port to the logic board header, using a dual M.2 adapter can connect the AHCI SSD and M.2 SATA.
NVMe) Flashing the v144 EFI firmware from Mac Pro allows the booting from NVMe with APFS on it natively, so this is the preferable choice for maximum performance.
Check the AHCI-NVMe SSD thread for compatibility.
Part 5: GPU
By default the Xserve 2009 was sipped with a preinstalled MXM-B GT120M card. But basically any iMac MXM GPU will run just fine in place. But every single Apple MXM GPU is unsupported starting with macOS 10.14 Mojave. So to overcome this there are also two solutions.
5a) MXM GPU with metal support
Just stick to the iMac GPU upgrade thread. As for now two customized versions of modern GPUs are available WX4150M and WX7100M. These two GPUs allow the stock boot screen to be rendered and are fully supported starting with macOS 10.12.6 Sierra.
5b) 1-slot PCI-e GPU with metal support
Just stick to the GPU List for Mac Pro thread. Currently using wx4100 on my machine and it survived 90 degrees celsius of hot air out of my first CPU test attempts being mounted without built-in fan (passive cooling only), so we can consider it as Xserve-proof GPU.
5c) MACVid GPU for Mojave
No comments here...
Part 6: Thunderbolt
Every modern mac nowadays features Thunderbolt connection since 2011. To make Xserve on a par with the post 2011 Mac line-up stick to the Gigabyte Titan Ridge thread.
Part 7: PCI-express Gen3
By default the Xserve 2009 was designed with PCI-e Gen2 in mind. It was more then enough for 2009. Nowadays Thunderbolt 3 and NVMe require the PCI-e Gen3 to be able to run at full potential. There is the solution which transforms each Gen2 x16 slot into a Gen3 x8 one based on the same chip used in a Mac Pro 2013. Just stick to the HighPoint 7101A thread.
Part 8: Cooling and noise
If the Xserve main location is a server rack in the server room with a good cooling this point is not a prerequisite. But if there are plans of some desktop-replacement daily usage the default 17k rpm fans are going to drive people around you nuts. The solution is in process, but long story short 20 Noctua fans coupled to 2009 Mac Pro heat-sinks B provided a silent operation suitable for music production in studio environment. Mind that a decent cooling under sustained load requires 3U height in your rack.
Part 9: Connectivity
Same as previous point. But for desktop use with a 32:9 screen IMHO there is nothing better than a TB3 dock with a bunch of ports to overcome the default 3 USB 2.0 availability.
Part 10: Software
The easy one. Since the Xserve is using EFI which is the early implementation of UEFI there is the possibility to use UEFI OSes and bootloaders. Just stick to the OpenCore thread to fix lot of stuff on macOS Mojave and Catalina.
To install macOS Mojave or macOS Catalina once the necessary GPU and EFI firmware are installed just make sure
Hope that this guide is going to move the Xserve community further and make things better for lower prices. Feel free to add info to this wiki, to add mentions of the contributors and to share your success stories.
Xserve3,1 upgrade guide 2020
Part 1: Logic board
The logic board that was bundled with the default and the cheaper configuration was designed with only one CPU socket and 6 RAM slots available. By the way, Apple sold a replacement logic board for a fast swap and go procedure. The Apple part code to look for is 607-4282a. A logic board swap with the above mentioned one provides an extra CPU socket and extra 6 RAM slots.
1a) LOM
The LEDs on the fron panel are coupled to the IPMI chip via USB flex cable. To be able to use the full IPMI functionality later, do not forget to setup LOM on default logic board firmware and with a corresponding tool provided with the macOS/OS X Server build. It is not mandatory, but the utility does not check your SMC version but rather the hardcoded model in EFI firmware and though is not allowed to run on anything aside the Xserve.
To get the CPU load status lights on the front panel it is advised to use the AppleBMC.kext compiled from source for your macOS release.
1b) EFI Firmware
The stock firmware provided with Xserve3,1 is bundled with Nehalem CPU microcodes. This doesn't allow the usage of 6-core and 1333 Mhz RAM on the machine. By the way in 2018 Rominator claimed that he swapped the Xserve EFI chip with a Mac Pro one and after CPU swap everything booted just fine. After some misunderstandings and misbehaviour at the beginng on the original MR thread @tsialex now has lost any willingness to help with creating a custom EFI firmware.
Some caveats of the current method:
- Logic board "personalization" info lost (Serial Number, etc) => No iCloud, iMessage and FaceTime available
- 2 RAM slots out of 6 per CPU socket unavailable =>128G max RAM on a dual socket logic board
- System Information confused if stock SN used after flash as SMC and SN belong to Xserve3,1 while ROM belongs to MacPro5,1
- HDD hot-swap untested, probably unavailable
- Stock CPU unsupported (gonna try to make a "transition" hybrid MP5,1 ROM with Nehalem microcodes added later)
- ADD MORE IF DISCOVERED
To both backup and flash the EFI firmware I successfully used @dosdude1 ROMTool. Tested it already with 4 of my Xserve3,1 logic boards, everything went fine.
Part 2: CPU
By default the firmware on Xserve logic boards allow the use of Nehalem 4-core CPUs rated at 95W TDP. But hardware-wise the logic board is able to handle more recent and more powerful Westmere CPUs, as seen on MacPro4,1 with the MacPro5,1 firmware flashed. But with the power of the new CPUs come some issues. The major one is the overheat due to a higher TDP of 130W per CPU, which is nearly 1.5x higher than the stock ones. They are currently 3 solutions to this, so basically this becomes more like an unbalanced inconvenience rather than an issue. The CPUs are listed here in the MP5.1 section.
Part 3: RAM
By default the Xserve logic board supports 1066 Mhz RAM with ECC capability. Once flashed to a Mac Pro firmware, there is a possibility to use higher frequency modules rated at 1333 Mhz, but only in RAM slots 1,3,5,6 of each CPU socket. The max amount of RAM tested in current configuration is 128G, but if you want more CPU performance, to stick with the trple channel RAM mode RAM slots 1,3,5 of each CPU socket are mandatory to be filled with identical RAM modules.
Part 4: Storage
SATA/SAS) By default the Xserve suports 3 types of local storage which offers us a choice between 3 SATA/SAS 3.5 inch drive bays, SSD connector on the LOM board and a Superdrive. There are 2 different HDD daughter board types available depending on the configuration, the RAID one with some heatsinks, RAM chips on it and coupled with a backup battery power, and the non-RAID one with an LSI controller in JBOD mode. To spread more confusion there are also two types of HDD caddies available, the SATA one and the hybrid SAS/SATA one. The logic is simple there - the less possible hassle configuration is a non-RAID daughter board connected to hybrid SAS/SATA caddies with SAS srives inside. It is the only way to use HDDs larger than 1TB. The hard way - a G5 daughter board with SATA connectors attached to a PCI-e SATA3 controller (in process, already got 2 Helium 10TB SATA HDDs with no possibility to return them). There is also an unsoldered SATA 7-pin connector, which is possibly available and wired.
AHCI) All Intel Xserves can natively boot from AHCI SSDs. The best performance should be either an Apple SSUBX in an Apple 12+16 to PCIe adapter, or a Samsung PM951 AHCI version in an M.2 to PCIe adapter. Bonus if you solder on a SATA port to the logic board header, using a dual M.2 adapter can connect the AHCI SSD and M.2 SATA.
NVMe) Flashing the v144 EFI firmware from Mac Pro allows the booting from NVMe with APFS on it natively, so this is the preferable choice for maximum performance.
Check the AHCI-NVMe SSD thread for compatibility.
Part 5: GPU
By default the Xserve 2009 was sipped with a preinstalled MXM-B GT120M card. But basically any iMac MXM GPU will run just fine in place. But every single Apple MXM GPU is unsupported starting with macOS 10.14 Mojave. So to overcome this there are also two solutions.
5a) MXM GPU with metal support
Just stick to the iMac GPU upgrade thread. As for now two customized versions of modern GPUs are available WX4150M and WX7100M. These two GPUs allow the stock boot screen to be rendered and are fully supported starting with macOS 10.12.6 Sierra.
5b) 1-slot PCI-e GPU with metal support
Just stick to the GPU List for Mac Pro thread. Currently using wx4100 on my machine and it survived 90 degrees celsius of hot air out of my first CPU test attempts being mounted without built-in fan (passive cooling only), so we can consider it as Xserve-proof GPU.
5c) MACVid GPU for Mojave
No comments here...
Part 6: Thunderbolt
Every modern mac nowadays features Thunderbolt connection since 2011. To make Xserve on a par with the post 2011 Mac line-up stick to the Gigabyte Titan Ridge thread.
Part 7: PCI-express Gen3
By default the Xserve 2009 was designed with PCI-e Gen2 in mind. It was more then enough for 2009. Nowadays Thunderbolt 3 and NVMe require the PCI-e Gen3 to be able to run at full potential. There is the solution which transforms each Gen2 x16 slot into a Gen3 x8 one based on the same chip used in a Mac Pro 2013. Just stick to the HighPoint 7101A thread.
Part 8: Cooling and noise
If the Xserve main location is a server rack in the server room with a good cooling this point is not a prerequisite. But if there are plans of some desktop-replacement daily usage the default 17k rpm fans are going to drive people around you nuts. The solution is in process, but long story short 20 Noctua fans coupled to 2009 Mac Pro heat-sinks B provided a silent operation suitable for music production in studio environment. Mind that a decent cooling under sustained load requires 3U height in your rack.
Part 9: Connectivity
Same as previous point. But for desktop use with a 32:9 screen IMHO there is nothing better than a TB3 dock with a bunch of ports to overcome the default 3 USB 2.0 availability.
Part 10: Software
The easy one. Since the Xserve is using EFI which is the early implementation of UEFI there is the possibility to use UEFI OSes and bootloaders. Just stick to the OpenCore thread to fix lot of stuff on macOS Mojave and Catalina.
To install macOS Mojave or macOS Catalina once the necessary GPU and EFI firmware are installed just make sure
-no_compat_check
is added to boot args prior booting from the macOS bootable media.Hope that this guide is going to move the Xserve community further and make things better for lower prices. Feel free to add info to this wiki, to add mentions of the contributors and to share your success stories.
Last edited: