I'd like to replace some of my older 2015-2016 era FreeBSD NUCs with something with more DRAM to support ZFS and more Jails, and a faster CPU to speed up my builds. After some research I settled on the NUC13ANKi7. This NUC fits a lot into the smaller short height form factor:
- Intel Core i7-1360P
- 12 cores (4 performance, 8 efficiency), 16 threads)
- Performance cores turbo boost up to 5.0 GHz
- Raptor Lake architecture
- 64GB DDR4 DRAM.
- 1TB PCIe x4 Gen4 NVMe
- 2.5GB Ethernet, Wifi6E
- UEFI with support for HTTP Boot.
The price from SimplyNUC is $1,189 plus tax and shipping. I would have preferred DDR5 DIMMs but otherwise was pretty happy with this, especially the smaller NUC form factor.
The machine builds and runs FreeBSD 13.2 great (see dmesg gist).
Buildworld Times
To test the suitability of this new machine as a build server, I ran 270 iterations of make buildworld over a week.- 30 -j parallelism options (1 to 30)
- Three source and /usr/obj configurations:
- /usr/src and /usr/obj on local SSD
- /usr/src on SSD and /usr/obj on tmpfs
- /usr/src and /usr/obj on tmpfs.
- Three iterations of each test.
Median result of the three runs for the default ZFS /usr/src and /usr/obj runs are included in the plot below:
The fastest buildtimes occurred in under 26 minutes with -j21, but the performance of anything between -j16 and -j30 was within 1.3% of that elapsed build time. Moving src and obj to tmpfs led to less than a 4.1% delta in elapsed time.
SSD Performance
diskinfo -t nvd0 shows 3.9-4.35 MB/s transfer rates to the local SSD.
diskinfo -t nvd0
nvd0 512 # sectorsize 1000204886016 # mediasize in bytes (932G) 1953525168 # mediasize in sectors 0 # stripesize 0 # stripeoffset PNY CS2140 1TB SSD # Disk descr. PNY2201220106010B3A8 # Disk ident. nvme0 # Attachment Yes # TRIM/UNMAP support 0 # Rotation rate in RPM Seek times: Full stroke: 250 iter in 0.004330 sec = 0.017 msec Half stroke: 250 iter in 0.019046 sec = 0.076 msec Quarter stroke: 500 iter in 0.013305 sec = 0.027 msec Short forward: 400 iter in 0.005383 sec = 0.013 msec Short backward: 400 iter in 0.005009 sec = 0.013 msec Seq outer: 2048 iter in 0.045332 sec = 0.022 msec Seq inner: 2048 iter in 0.029877 sec = 0.015 msec Transfer rates: outside: 102400 kbytes in 0.025866 sec = 3958865 kbytes/sec middle: 102400 kbytes in 0.023508 sec = 4355964 kbytes/sec inside: 102400 kbytes in 0.024016 sec = 4263824 kbytes/sec
IOZone
I also used IOZone benchmark to quickly gather some SSD stats with 4k reads:Metric | Output in KBytes/sec |
---|---|
Initial write: | 1160931.00 |
Rewrite | 1223939.88 |
Read | 1900560.25 |
Re-read | 3034837.25 |
Reverse Read | 1859190.25 |
Stride read | 568050.94 |
Random read | 143096.12 |
Mixed workload | 290691.06 |
Random write | 94226.63 |
Pwrite | 1184217.75 |
Pread | 3080741.50 |
Fwrite | 1211297.38 |
Fread | 1776154.00 |
UEFI HTTP Boot
One thing I wasn't expecting with this NUC is that it supports HTTP Boot and a UEFI shell. It seems more finicky than HTTPBoot on a Dell, and is possibly only looking at HTTPS URLs. Will try to follow up with another post in more detail about HTTP Boot with FreeBSD.
No comments:
Post a Comment