Before installing XPEnology using DSM 7.x, you must select a DSM platform and loader. XPEnology supports a variety of platforms that enable specific hardware and software features. All platforms support a minimum of 4 CPU cores, 64GB of RAM, 10Gbe network cards and 16 drives. Each can run "baremetal" as a stand-alone operating system OR as a virtual machine within a hypervisor. A few specific platforms are preferred for typical installs. Review the table and decision tree below to help you navigate the options.
NOTE: DSM 6.x is still a viable system and is the best option for certain types of hardware. See this link for more information.
DSM 7.x LOADERS ARE DIFFERENT:
A loader allows DSM to install and run on non-Synology hardware. The loaders for DSM 5.x/6.x were monolithic; i.e. a single loader image was applicable to all installs. With DSM 7.x, a custom loader must be created for each DSM install. TinyCore RedPill (TCRP) is currently the most developed tool for building 7.x loaders. TCRP installs with two step-process. First, a Linux OS (TinyCore) boots and evaluates your hardware configuration. Then, an individualized loader (RedPill) is built and written to the loader device. After that, you can switch between starting DSM with RedPill, and booting back into TinyCore to adjust and rebuild as needed.
TCRP's Linux boot image (indicated by the version; i.e. 0.8) changes only when a new DSM platform or version is introduced. However, you can and should update TCRP itself prior to each loader build, adding fixes, driver updates and new features contributed by many different developers. Because of this ongoing community development, TCRP capabilities change rapidly. Please post new or divergent results when encountered, so that this table may be updated.
7.x Loaders and Platforms as of 06-June-2022
Options Ranked
1a
1b
2a
2b
2c
3a
3b
DSM Platform
DS918+
DS3622xs+
DS920+
DS1621+
DS3617xs
DVA3221
DS3615xs
Architecture
apollolake
broadwellnk
geminilake
v1000
broadwell
denverton
bromolow
DSM Versions
7.0.1-7.1.0-42661
7.0.1-7.1.0-42661
7.0.1-7.1.0-42661
7.0.1-7.1.0-42661
7.0.1-7.1.0-42661
7.0.1-7.1.0-42661
7.0.1-7.1.0-42661
Loader
TCRP 0.8
TCRP 0.8
TCRP 0.8
TCRP 0.8
TCRP 0.8
TCRP 0.8
TCRP 0.8
Drive Slot Mapping
sataportmap/
diskidxmap
sataportmap/
diskidxmap
device tree
device tree
sataportmap/
diskidxmap
sataportmap/
diskidxmap
sataportmap/
diskidxmap
QuickSync Transcoding
Yes
No
Yes
No
No
No
No
NVMe Cache Support
Yes
Yes
Yes
Yes
Yes (as of 7.0)
Yes
No
RAIDF1 Support
No
Yes
No
No
Yes
No
Yes
Oldest CPU Supported
Haswell *
any x86-64
Haswell **
any x86-64
any x86-64
Haswell *
any x86-64
Max CPU Threads
8
24
8
16
24 (as of 7.0)
16
16
Key Note
currently best
for most users
best for very
large installs
see slot mapping
topic below
AMD Ryzen, see
slot mapping topic
obsolete
use DS3622xs+
AI/Deep Learning
nVIDIA GPU
obsolete
use DS3622xs+
* FMA3 instruction support required. All Haswell Core processors or later support it. Very few Pentiums/Celerons do (J-series CPUs are a notable exception).
Piledriver is believed to be the minimum AMD CPU architecture equivalent to Intel Haswell.
** Based on history, DS920+ should require Haswell. There is anecdotal evidence gradually emerging that DS920+ will run on x86-64 hardware.
NOT ALL HARDWARE IS SUITABLE:
DSM 7 has a new requirement for the initial installation. If drive hotplug is supported by the motherboard or controller, all AHCI SATA ports visible to DSM must either be configured for hotplug or have an attached drive during initial install. Additionally, if the motherboard or controller chipset supports more ports than are physically implemented, DSM installation will fail unless they are mapped out of visibility. On some hardware, it may be impossible to install (particularly on baremetal) while retaining access to the physical ports. The installation tutorial has more detail on the causes of this problem, and possible workarounds.
DRIVE SLOT MAPPING CONSIDERATIONS:
On most platforms, DSM evaluates the boot-time Linux parameters SataPortMap and DiskIdxMap to map drive slots from disk controllers to a usable range for DSM. Much has been written about how to set up these parameters. TCRP's satamap command determines appropriate values based on the system state during the loader build. It is also simple to manually edit the configuration file if your hardware is unique or misidentified by the tool.
On the DS920+ and DS1621+ platforms, DSM uses a Device Tree to identify the hardware and ignores SataPortMap and DiskIdxMap. The device tree hardcodes the SATA controller PCI devices and drive slots (and also NVMe slots and USB ports) prior to DSM installation. Therefore, an explicit device tree that matches your hardware must be configured and stored within the loader image.
TCRP automatic device tree configuration is limited. For example, any disk ports left unpopulated at loader build time will not be accessible later. VMware ESXi is not currently supported. Host bus adapters (SCSI, SAS, or SATA RAID in IT mode) are not currently supported.
Manually determining correct values and updating the device tree is complex. Device Tree support is being worked on and will improve, but presently you will generally be better served by choosing platforms that support SataPortMap and DiskIdxMap (see Tier 1 below).
CURRENT PLATFORM RECOMMENDATIONS AND DECISION TREE:
VIRTUALIZATION:
All the supported platforms can be run as a virtual machine within a hypervisor. Some use case examples:
virtualize unsupported network card
virtualize SAS/NVMe storage and present to DSM as SATA
run other VMs in parallel on the same hardware (as an alternative to Synology VMM)
share 10GBe network card with other non-XPEnology VMs
testing and rollback of updates
Prerequisites: ESXi (requires a paid or free license) or open-source hypervisor (QEMU, Proxmox, XenServer). Hyper-V is NOT supported.
Preferred Configurations: passthrough SATA controller and disks, and/or configure RDM/RAW disks
This post will be updated as more documentation is available for the various TCRP implementations.