The hardware specification for mini PCs has recently evolved past the traditional fixed amount of memory and storage. Now mini PCs are shipping with SODIMM slots allowing RAM expansion and a variety of M.2 or SSD combos providing flexible storage options. Recent mini PCs are also coming to market with desktop processors rather than mobile processors because there has been a gradual acceptance of the necessary inclusion of a small internal fan. In doing so not only is this addressing the key limiting factors for mini PCs but it is also redefines the very definition of a mini PC.

Until recently Intel NUCs (Next Unit of Computing) were seen as small-form-factor personal computers primarily because they consisted of the traditional motherboard with a processor, included removable RAM and storage and were enclosed in a case with an external power supply. They were also sold as kits meaning they were essentially the ‘barebones’ ready to be build with separately purchased memory, storage, and operating system. However, Intel have also now introduced products called ‘Intel NUC Mini PCs with Windows’ which are fully configured and ready to work out of the box as they are pre-built and include all the required hardware and software.

Whilst there has been a gradual convergence between the hardware specifications of mini PCs and NUCs the final distinguishing factor has now also converged: namely price. Conventionally mini PCs have been low-priced reflecting the low-specs of low-power and low-configurability. But addressing the ‘low’ points has come at a cost with the configurable mini PC now at the top of the $100 to $300 price range for Intel processor-based mini PCs. And the top price is what coincidentally and perhaps unsurprisingly is the cost of the latest Intel NUC mini PC, the ‘Intel NUC 7 Essential Mini PC – NUC7CJYSAL with Windows 10’.

Intel kindly provided me with a pre-production model of the NUC7CJYSAL which has allowed me to look at how it compares to others in the evolving mini PC market. I’ve looked at performance and handling under both Windows and Ubuntu and the following is what I’ve encountered.

Being a NUC, the physical design is likely to be familiar to most. It consists of a small approximately 4.5″ square case about 2″ tall with a distinctive front panel that includes the power button and a couple of USB ports with the rest of the ports including two HDMI (2.0a) ones at the rear:

The specifications, which refer to the NUC7CJYSAL as NUC7CJYS, include:

It is worth noting that the NUC7CJYSAL is part of the NUC ‘June Canyon’ product range that features the mini PC together with barebone kits and a board using either the Celeron J4005 dual core processor or the more powerful Pentium J5005 quad core processor from the new Gemini Lake processor range:

The NUC7CJYSAL uses the Celeron J4005 dual core processor and the decision to use this rather than the Celeron J4105 quad core processor was to keep the overall price down (noting that the ‘Recommended Customer Price’ is obviously not the internal cost to Intel). Price becomes a significant factor when purchasing large numbers of the device for digital signage where the key graphics processing factor is the same and the gain from the additional processor cores is not required.

The other key point to note is the NUC7CJYSAL comes with 32GB eMMC with pre-installed Windows 10 Home together with space and connectors for an SSD. The eMMC is not included in the barebone kits or board.

The device I’ve tested is a pre-production model so the Windows 10 OS although an OEM install is unactivated. Production models will come activated.

So starting with Windows a quick look at the hardware information shows it is aligned to the specification:

and that the 4GB of memory is DDR4:

As usual I ran my standard set of benchmarking tools to look at performance under Windows:

The results are interesting when compared to other Intel mini PCs:

It may be argued that no direct comparison can be made because there are so many different variables: quad vs dual core, HD 500 vs HD505 vs UHD 600, DDR3 vs DDR4, eMMC vs M.2 etc.

Broadly speaking however the NUC7CJYSAL performance is similar or better than the N4200 and J3455 devices with the exception of CPU comparisons where the quad cores out perform its dual core processor.

Interestingly the Passmark 9 result is somewhat baffling due to the low mark for 3D Graphics. It was only having performed all the testing that I noticed this peculiarity so I decided to re-run the Passmark 9 test on the NUC7CJYSAL which by that stage had Windows running on an internally installed SSD. The new marks were:

which when compared with the marks from an N4200 device:

further highlight how unusual the result is. The individual test scores are similar however the overall ‘mark’ for 3D Graphics is substantially different. Looking at the previously published formula for calculating the marks, I plugged in all the individual values only to get both much closer mark scores but ones that were totally different to the reported marks when running the test:

Using the same formula but plugging in the actual test marks for calculating the overall PassMark rating calculation did match:

so it has raised a doubt over the accuracy and validity of this particular performance test.

Moving on I then shrunk the Windows partition and created new a 10 GB partition so I could install and dual boot Ubuntu.

Initially I used the same standard (and now EOL) Ubuntu desktop 17.04 ISO as I’ve used in previous tests however the display was unusable as the kernel didn’t support the display driver required for the new Intel GPU. So I decided to try Ubuntu 17.10.1 and whilst the display was fixed I had neither Wifi nor Bluetooth. Upgrading the ‘linux-firmware’ together with a ‘modprobe btusb’ got me Bluetooth but still no WiFi. However both were fixed using the daily development Ubuntu ISO. I next tried Ubuntu 16.04.4 but again no Wifi nor Bluetooth. Further testing concluded that regardless of the ISO release for a functioning Ubuntu, I needed as a minimum the 4.15.0-10 ‘kernel’ and 1.171 ‘linux-firmware’ which are both available from the ‘bionic’ repositories (where ‘linux-firmware’ is now at 1.172). This means for ‘Live’ booting from an Ubuntu ISO written to a USB the choice is currently only the unreleased development ‘Bionic Beaver’ ISO for fully functioning display, Wifi and Bluetooth OOTB. However I also found that the ‘intel_gpu_top’ application was broken at the moment making the development release unsuitable for my testing.

As a result I decided to respin an officially released Ubuntu 16.04.4 ISO using my ‘isorespin.sh’ script and upgrade both the kernel and firmware packages. As my script until now did not include the ability to upgrade the bootable kernel from an upstream release I first had to make the necessary enhancements. Next I wrote a ‘wrapper’ script that would pull in the relevant packages from an upstream distribution repository and upgrade the specified ISO as part of respinning. I only chose to use Ubuntu 16.04.4 for testing purely because of the familiarity of using Unity over GNOME with my testing applications. The command I used to respin the ISO was:



isorespin.sh -i ubuntu-16.04.4-desktop-amd64.iso \ -f wrapper-linuxium-install-bionic-kernel-and-firmware-on-16.04.4.sh \ -c wrapper-linuxium-install-bionic-kernel-and-firmware-on-16.04.4.sh \ -c "update-initramfs -u" 1 2 3 4 isorespin .sh - i ubuntu - 16.04.4 - desktop - amd64 .iso \ - f wrapper - linuxium - install - bionic - kernel - and - firmware - on - 16.04.4.sh \ - c wrapper - linuxium - install - bionic - kernel - and - firmware - on - 16.04.4.sh \ - c "update-initramfs -u"



which created an ISO called ‘linuxium-ubuntu-16.04.4-desktop-amd64.iso’ that I simply wrote to a USB using ‘dd’. The scripts used are ‘isorespin.sh’ and ‘wrapper-linuxium-install-bionic-kernel-and-firmware-on-16.04.4.sh’ with further details available on my blog.

Once installed and running I first ran some basic commands to look at the hardware in more detail:



linuxium@NUC7CJYSAL:~$ lsb_release -a Distributor ID: Ubuntu Description: Ubuntu 16.04.4 LTS Release: 16.04 Codename: xenial linuxium@NUC7CJYSAL:~$ linuxium@NUC7CJYSAL:~$ uname -a Linux NUC7CJYSAL 4.15.0-10-generic #11-Ubuntu SMP Tue Feb 13 18:23:35 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux linuxium@NUC7CJYSAL:~$ linuxium@NUC7CJYSAL:~$ inxi -Fc0 System: Host: NUC7CJYSAL Kernel: 4.15.0-10-generic x86_64 (64 bit) Desktop: N/A Distro: Ubuntu 16.04 xenial Machine: System: Intel product: NUC7CJYS v: J67993-301 serial: G6JY80200868 Mobo: Intel model: NUC7JYB v: J67970-301 serial: GEJY80100RVU Bios: Intel v: JYGLKCPX.86A.0024.2017.1229.1454 date: 12/29/2017 CPU: Dual core Intel Celeron J4005 (-MCP-) cache: 4096 KB clock speeds: max: 2700 MHz 1: 2500 MHz 2: 928 MHz Graphics: Card: Intel Device 3185 Display Server: X.org 1.19.5 drivers: (unloaded: fbdev,vesa) tty size: 204x62 Advanced Data: N/A for root Audio: Card Intel Device 3198 driver: snd_hda_intel Sound: Advanced Linux Sound Architecture v: k4.15.0-10-generic Network: Card-1: Intel Device 31dc driver: iwlwifi IF: wlp0s12f0 state: down mac: 34:13:e8:74:92:4e Card-2: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller driver: r8169 IF: enp2s0 state: up speed: 1000 Mbps duplex: full mac: 94:c6:91:19:2f:8c Drives: HDD Total Size: NA (-) ID-1: /dev/mmcblk0 model: N/A size: 31.3GB Partition: ID-1: / size: 9.8G used: 5.8G (63%) fs: ext4 dev: /dev/mmcblk0p5 RAID: No RAID devices: /proc/mdstat, md_mod kernel module present Sensors: System Temperatures: cpu: 34.0C mobo: N/A Fan Speeds (in rpm): cpu: N/A Info: Processes: 185 Uptime: 1:43 Memory: 628.5/3530.0MB Client: Shell (review-tests.sh) inxi: 2.2.35 linuxium@NUC7CJYSAL:~$ linuxium@NUC7CJYSAL:~$ df -h Filesystem Size Used Avail Use% Mounted on udev 1.7G 0 1.7G 0% /dev tmpfs 353M 5.8M 348M 2% /run /dev/mmcblk0p5 9.8G 5.8G 3.5G 63% / tmpfs 1.8G 284K 1.8G 1% /dev/shm tmpfs 5.0M 4.0K 5.0M 1% /run/lock tmpfs 1.8G 0 1.8G 0% /sys/fs/cgroup /dev/mmcblk0p1 96M 53M 44M 55% /boot/efi tmpfs 353M 100K 353M 1% /run/user/1000 /dev/mmcblk0p3 18G 17G 1.2G 94% /media/linuxium/1C4ECC5F4ECC32F6 linuxium@NUC7CJYSAL:~$ linuxium@NUC7CJYSAL:~$ lsblk -a NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT loop1 7:1 0 0 loop loop6 7:6 0 0 loop loop4 7:4 0 0 loop mmcblk0boot0 179:8 0 4M 1 disk loop2 7:2 0 0 loop loop0 7:0 0 0 loop loop7 7:7 0 0 loop loop5 7:5 0 0 loop mmcblk0boot1 179:16 0 4M 1 disk mmcblk0 179:0 0 29.1G 0 disk ├─mmcblk0p4 179:4 0 1G 0 part ├─mmcblk0p2 179:2 0 128M 0 part ├─mmcblk0p5 179:5 0 10G 0 part / ├─mmcblk0p3 179:3 0 17.9G 0 part /media/linuxium/1C4ECC5F4ECC32F6 └─mmcblk0p1 179:1 0 100M 0 part /boot/efi loop3 7:3 0 0 loop linuxium@NUC7CJYSAL:~$ linuxium@NUC7CJYSAL:~$ sudo lshw -C cpu *-cpu description: CPU product: Intel(R) Celeron(R) J4005 CPU @ 2.00GHz vendor: Intel Corp. physical id: 36 bus info: cpu@0 version: Intel(R) Celeron(R) J4005 CPU @ 2.00GHz slot: SOCKET 0 size: 919MHz capacity: 2700MHz width: 64 bits clock: 100MHz capabilities: x86-64 fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg cx16 xtpr pdcm sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave rdrand lahf_lm 3dnowprefetch cpuid_fault cat_l2 pti tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust smep erms mpx rdt_a rdseed smap clflushopt intel_pt sha_ni xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts umip rdpid cpufreq configuration: cores=2 enabledcores=2 threads=2 linuxium@NUC7CJYSAL:~$ linuxium@NUC7CJYSAL:~$ sudo lshw -C memory *-firmware description: BIOS vendor: Intel Corp. physical id: 0 version: JYGLKCPX.86A.0024.2017.1229.1454 date: 12/29/2017 size: 64KiB capacity: 6592KiB capabilities: pci upgrade shadowing cdboot bootselect socketedrom edd int13floppy1200 int13floppy720 int13floppy2880 int5printscreen int14serial int17printer acpi usb biosbootspecification uefi *-memory description: System Memory physical id: 24 slot: System board or motherboard size: 4GiB *-bank:0 description: SODIMM Synchronous 2400 MHz (0.4 ns) product: AM1P24HC4U1-B9RS vendor: Undefined physical id: 0 serial: 50040000 slot: A1_DIMM0 size: 4GiB width: 64 bits clock: 2400MHz (0.4ns) *-bank:1 description: DIMM DDR2 Synchronous [empty] product: Array1_PartNumber1 vendor: A1_Manufacturer1 physical id: 1 serial: A1_SerNum1 slot: A1_DIMM1 *-cache:0 description: L1 cache physical id: 34 slot: ��������CPU Internal L1 size: 112KiB capacity: 112KiB capabilities: synchronous internal write-back configuration: level=1 *-cache:1 description: L2 cache physical id: 35 slot: ��������CPU Internal L2 size: 4MiB capacity: 4MiB capabilities: synchronous internal write-back unified configuration: level=2 linuxium@NUC7CJYSAL:~$ linuxium@NUC7CJYSAL:~$ free -mh total used free shared buff/cache available Mem: 3.4G 535M 1.9G 232M 1.0G 2.4G Swap: 0B 0B 0B linuxium@NUC7CJYSAL:~$ linuxium@NUC7CJYSAL:~$ sudo lshw -C network *-network description: Wireless interface product: Intel Corporation vendor: Intel Corporation physical id: c bus info: pci@0000:00:0c.0 logical name: wlp0s12f0 version: 03 serial: 34:13:e8:74:92:4e width: 64 bits clock: 33MHz capabilities: pm msi pciexpress msix bus_master cap_list ethernet physical wireless configuration: broadcast=yes driver=iwlwifi driverversion=4.15.0-10-generic firmware=34.0.0 latency=0 link=no multicast=yes wireless=IEEE 802.11 resources: irq:44 memory:a1314000-a1317fff *-network description: Ethernet interface product: RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller vendor: Realtek Semiconductor Co., Ltd. physical id: 0 bus info: pci@0000:02:00.0 logical name: enp2s0 version: 15 serial: 94:c6:91:19:2f:8c size: 1Gbit/s capacity: 1Gbit/s width: 64 bits clock: 33MHz capabilities: pm msi pciexpress msix bus_master cap_list ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation configuration: autonegotiation=on broadcast=yes driver=r8169 driverversion=2.3LK-NAPI duplex=full firmware=rtl8168h-2_0.0.2 02/26/15 ip=XXX.XXX.XXX.XXX latency=0 link=yes multicast=yes port=MII speed=1Gbit/s resources: irq:127 ioport:e000(size=256) memory:a1104000-a1104fff memory:a1100000-a1103fff linuxium@NUC7CJYSAL:~$ linuxium@NUC7CJYSAL:~$ dmesg | grep "MMC card" [ 1.747563] mmc0: new HS400 MMC card at address 0001 linuxium@NUC7CJYSAL:~$ linuxium@NUC7CJYSAL:~$ lsusb Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 003: ID 8087:0aaa Intel Corp. Bus 001 Device 007: ID 046d:c52b Logitech, Inc. Unifying Receiver Bus 001 Device 008: ID 10d5:55a4 Uni Class Technology Co., Ltd Bus 001 Device 006: ID 1a40:0101 Terminus Technology Inc. Hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub linuxium@NUC7CJYSAL:~$ linuxium@NUC7CJYSAL:~$ lspci 00:00.0 Host bridge: Intel Corporation Device 31f0 (rev 03) 00:02.0 VGA compatible controller: Intel Corporation Device 3185 (rev 03) 00:0c.0 Network controller: Intel Corporation Device 31dc (rev 03) 00:0e.0 Multimedia audio controller: Intel Corporation Device 3198 (rev 03) 00:0f.0 Communication controller: Intel Corporation Device 319a (rev 03) 00:12.0 SATA controller: Intel Corporation Device 31e3 (rev 03) 00:13.0 PCI bridge: Intel Corporation Device 31d8 (rev f3) 00:13.2 PCI bridge: Intel Corporation Device 31da (rev f3) 00:15.0 USB controller: Intel Corporation Device 31a8 (rev 03) 00:1c.0 SD Host controller: Intel Corporation Device 31cc (rev 03) 00:1f.0 ISA bridge: Intel Corporation Device 31e8 (rev 03) 00:1f.1 SMBus: Intel Corporation Device 31d4 (rev 03) 01:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS5229 PCI Express Card Reader (rev 01) 02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15) linuxium@NUC7CJYSAL:~$ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 linuxium @ NUC7CJYSAL : ~ $ lsb_release - a Distributor ID : Ubuntu Description : Ubuntu 16.04.4 LTS Release : 16.04 Codename : xenial linuxium @ NUC7CJYSAL : ~ $ linuxium @ NUC7CJYSAL : ~ $ uname - a Linux NUC7CJYSAL 4.15.0 - 10 - generic #11-Ubuntu SMP Tue Feb 13 18:23:35 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux linuxium @ NUC7CJYSAL : ~ $ linuxium @ NUC7CJYSAL : ~ $ inxi - Fc0 System : Host : NUC7CJYSAL Kernel : 4.15.0 - 10 - generic x86_64 ( 64 bit ) Desktop : N / A Distro : Ubuntu 16.04 xenial Machine : System : Intel product : NUC7CJYS v : J67993 - 301 serial : G6JY80200868 Mobo : Intel model : NUC7JYB v : J67970 - 301 serial : GEJY80100RVU Bios : Intel v : JYGLKCPX . 86A.0024.2017.1229.1454 date : 12 / 29 / 2017 CPU : Dual core Intel Celeron J4005 ( - MCP - ) cache : 4096 KB clock speeds : max : 2700 MHz 1 : 2500 MHz 2 : 928 MHz Graphics : Card : Intel Device 3185 Display Server : X .org 1.19.5 drivers : ( unloaded : fbdev , vesa ) tty size : 204x62 Advanced Data : N / A for root Audio : Card Intel Device 3198 driver : snd_hda_intel Sound : Advanced Linux Sound Architecture v : k4 . 15.0 - 10 - generic Network : Card - 1 : Intel Device 31dc driver : iwlwifi IF : wlp0s12f0 state : down mac : 34 : 13 : e8 : 74 : 92 : 4e Card - 2 : Realtek RTL8111 / 8168 / 8411 PCI Express Gigabit Ethernet Controller driver : r8169 IF : enp2s0 state : up speed : 1000 Mbps duplex : full mac : 94 : c6 : 91 : 19 : 2f : 8c Drives : HDD Total Size : NA ( - ) ID - 1 : / dev / mmcblk0 model : N / A size : 31.3GB Partition : ID - 1 : / size : 9.8G used : 5.8G ( 63 % ) fs : ext4 dev : / dev / mmcblk0p5 RAID : No RAID devices : / proc / mdstat , md_mod kernel module present Sensors : System Temperatures : cpu : 34.0C mobo : N / A Fan Speeds ( in rpm ) : cpu : N / A Info : Processes : 185 Uptime : 1 : 43 Memory : 628.5 / 3530.0MB Client : Shell ( review - tests .sh ) inxi : 2.2.35 linuxium @ NUC7CJYSAL : ~ $ linuxium @ NUC7CJYSAL : ~ $ df - h Filesystem Size Used Avail Use % Mounted on udev 1.7G 0 1.7G 0 % / dev tmpfs 353M 5.8M 348M 2 % / run / dev / mmcblk0p5 9.8G 5.8G 3.5G 63 % / tmpfs 1.8G 284K 1.8G 1 % / dev / shm tmpfs 5.0M 4.0K 5.0M 1 % / run / lock tmpfs 1.8G 0 1.8G 0 % / sys / fs / cgroup / dev / mmcblk0p1 96M 53M 44M 55 % / boot / efi tmpfs 353M 100K 353M 1 % / run / user / 1000 / dev / mmcblk0p3 18G 17G 1.2G 94 % / media / linuxium / 1C4ECC5F4ECC32F6 linuxium @ NUC7CJYSAL : ~ $ linuxium @ NUC7CJYSAL : ~ $ lsblk - a NAME MAJ : MIN RM SIZE RO TYPE MOUNTPOINT loop1 7 : 1 0 0 loop loop6 7 : 6 0 0 loop loop4 7 : 4 0 0 loop mmcblk0boot0 179 : 8 0 4M 1 disk loop2 7 : 2 0 0 loop loop0 7 : 0 0 0 loop loop7 7 : 7 0 0 loop loop5 7 : 5 0 0 loop mmcblk0boot1 179 : 16 0 4M 1 disk mmcblk0 179 : 0 0 29.1G 0 disk ├─ mmcblk0p4 179 : 4 0 1G 0 part ├─ mmcblk0p2 179 : 2 0 128M 0 part ├─ mmcblk0p5 179 : 5 0 10G 0 part / ├─ mmcblk0p3 179 : 3 0 17.9G 0 part / media / linuxium / 1C4ECC5F4ECC32F6 └─ mmcblk0p1 179 : 1 0 100M 0 part / boot / efi loop3 7 : 3 0 0 loop linuxium @ NUC7CJYSAL : ~ $ linuxium @ NUC7CJYSAL : ~ $ sudo lshw - C cpu *- cpu description : CPU product : Intel ( R ) Celeron ( R ) J4005 CPU @ 2.00GHz vendor : Intel Corp . physical id : 36 bus info : cpu @ 0 version : Intel ( R ) Celeron ( R ) J4005 CPU @ 2.00GHz slot : SOCKET 0 size : 919MHz capacity : 2700MHz width : 64 bits clock : 100MHz capabilities : x86 - 64 fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg cx16 xtpr pdcm sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave rdrand lahf_lm 3dnowprefetch cpuid_fault cat_l2 pti tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust smep erms mpx rdt_a rdseed smap clflushopt intel_pt sha_ni xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts umip rdpid cpufreq configuration : cores = 2 enabledcores = 2 threads = 2 linuxium @ NUC7CJYSAL : ~ $ linuxium @ NUC7CJYSAL : ~ $ sudo lshw - C memory *- firmware description : BIOS vendor : Intel Corp . physical id : 0 version : JYGLKCPX . 86A.0024.2017.1229.1454 date : 12 / 29 / 2017 size : 64KiB capacity : 6592KiB capabilities : pci upgrade shadowing cdboot bootselect socketedrom edd int13floppy1200 int13floppy720 int13floppy2880 int5printscreen int14serial int17printer acpi usb biosbootspecification uefi *- memory description : System Memory physical id : 24 slot : System board or motherboard size : 4GiB *- bank : 0 description : SODIMM Synchronous 2400 MHz ( 0.4 ns ) product : AM1P24HC4U1 - B9RS vendor : Undefined physical id : 0 serial : 50040000 slot : A1_DIMM0 size : 4GiB width : 64 bits clock : 2400MHz ( 0.4ns ) *- bank : 1 description : DIMM DDR2 Synchronous [ empty ] product : Array1_PartNumber1 vendor : A1_Manufacturer1 physical id : 1 serial : A1_SerNum1 slot : A1_DIMM1 *- cache : 0 description : L1 cache physical id : 34 slot : �������� CPU Internal L1 size : 112KiB capacity : 112KiB capabilities : synchronous internal write - back configuration : level = 1 *- cache : 1 description : L2 cache physical id : 35 slot : �������� CPU Internal L2 size : 4MiB capacity : 4MiB capabilities : synchronous internal write - back unified configuration : level = 2 linuxium @ NUC7CJYSAL : ~ $ linuxium @ NUC7CJYSAL : ~ $ free - mh total used free shared buff / cache available Mem : 3.4G 535M 1.9G 232M 1.0G 2.4G Swap : 0B 0B 0B linuxium @ NUC7CJYSAL : ~ $ linuxium @ NUC7CJYSAL : ~ $ sudo lshw - C network *- network description : Wireless interface product : Intel Corporation vendor : Intel Corporation physical id : c bus info : pci @ 0000 : 00 : 0c.0 logical name : wlp0s12f0 version : 03 serial : 34 : 13 : e8 : 74 : 92 : 4e width : 64 bits clock : 33MHz capabilities : pm msi pciexpress msix bus_master cap_list ethernet physical wireless configuration : broadcast = yes driver = iwlwifi driverversion = 4.15.0 - 10 - generic firmware = 34.0.0 latency = 0 link = no multicast = yes wireless = IEEE 802.11 resources : irq : 44 memory : a1314000 - a1317fff *- network description : Ethernet interface product : RTL8111 / 8168 / 8411 PCI Express Gigabit Ethernet Controller vendor : Realtek Semiconductor Co . , Ltd . physical id : 0 bus info : pci @ 0000 : 02 : 00.0 logical name : enp2s0 version : 15 serial : 94 : c6 : 91 : 19 : 2f : 8c size : 1Gbit / s capacity : 1Gbit / s width : 64 bits clock : 33MHz capabilities : pm msi pciexpress msix bus_master cap_list ethernet physical tp mii 10bt 10bt - fd 100bt 100bt - fd 1000bt 1000bt - fd autonegotiation configuration : autonegotiation = on broadcast = yes driver = r8169 driverversion = 2.3LK - NAPI duplex = full firmware = rtl8168h - 2_0.0.2 02 / 26 / 15 ip = XXX .XXX .XXX .XXX latency = 0 link = yes multicast = yes port = MII speed = 1Gbit / s resources : irq : 127 ioport : e000 ( size = 256 ) memory : a1104000 - a1104fff memory : a1100000 - a1103fff linuxium @ NUC7CJYSAL : ~ $ linuxium @ NUC7CJYSAL : ~ $ dmesg | grep "MMC card" [ 1.747563 ] mmc0 : new HS400 MMC card at address 0001 linuxium @ NUC7CJYSAL : ~ $ linuxium @ NUC7CJYSAL : ~ $ lsusb Bus 002 Device 001 : ID 1d6b : 0003 Linux Foundation 3.0 root hub Bus 001 Device 003 : ID 8087 : 0aaa Intel Corp . Bus 001 Device 007 : ID 046d : c52b Logitech , Inc . Unifying Receiver Bus 001 Device 008 : ID 10d5 : 55a4 Uni Class Technology Co . , Ltd Bus 001 Device 006 : ID 1a40 : 0101 Terminus Technology Inc . Hub Bus 001 Device 001 : ID 1d6b : 0002 Linux Foundation 2.0 root hub linuxium @ NUC7CJYSAL : ~ $ linuxium @ NUC7CJYSAL : ~ $ lspci 00 : 00.0 Host bridge : Intel Corporation Device 31f0 ( rev 03 ) 00 : 02.0 VGA compatible controller : Intel Corporation Device 3185 ( rev 03 ) 00 : 0c.0 Network controller : Intel Corporation Device 31dc ( rev 03 ) 00 : 0e.0 Multimedia audio controller : Intel Corporation Device 3198 ( rev 03 ) 00 : 0f.0 Communication controller : Intel Corporation Device 319a ( rev 03 ) 00 : 12.0 SATA controller : Intel Corporation Device 31e3 ( rev 03 ) 00 : 13.0 PCI bridge : Intel Corporation Device 31d8 ( rev f3 ) 00 : 13.2 PCI bridge : Intel Corporation Device 31da ( rev f3 ) 00 : 15.0 USB controller : Intel Corporation Device 31a8 ( rev 03 ) 00 : 1c.0 SD Host controller : Intel Corporation Device 31cc ( rev 03 ) 00 : 1f.0 ISA bridge : Intel Corporation Device 31e8 ( rev 03 ) 00 : 1f.1 SMBus : Intel Corporation Device 31d4 ( rev 03 ) 01 : 00.0 Unassigned class [ ff00 ] : Realtek Semiconductor Co . , Ltd . RTS5229 PCI Express Card Reader ( rev 01 ) 02 : 00.0 Ethernet controller : Realtek Semiconductor Co . , Ltd . RTL8111 / 8168 / 8411 PCI Express Gigabit Ethernet Controller ( rev 15 ) linuxium @ NUC7CJYSAL : ~ $



Running my usual suite of Phoronix tests showed similar performance results to Windows with the device in general being comparable or better than similar equivalently priced devices.

First I looked at the NUC7CJYSAL in comparison with the base models of Intel Compute Sticks and Compute Cards (i.e. excluding comparison with the core m3/m5 devices):

And then against similar Intel based mini PCs:

I also ran a comparison of the benchmarks after I had installed Ubuntu Mate 18.04 Beta1 on an internally installed SSD:

which shows an overall performance improvement from using an SSD for storage which is more likely to represent the build scenario that most Ubuntu users choosing this device would use.

Ubuntu’s Octane result was also slightly better than in Windows:

Next I looked at real-world usage by playing videos under Windows using both Edge and Chrome browsers. Under Edge both [email protected] and [email protected] videos played without issue:

Under Chrome [email protected] videos were fine:

however [email protected] videos had the occasional dropped frame but were still watchable:

In contrast playing videos in Ubuntu was a similar story to other Intel processor-based mini PCs with [email protected] being unwatchable:

but okay when played at 1080p:

Unfortunately both [email protected] and [email protected] were unwatchable using Chrome on Ubuntu with the lower resolution still resulting in a 50% loss of frames.

Playing videos using Kodi on Windows worked for VP9 codec encoded video but used software for decoding resulting in high CPU usage and higher CPU temperatures:

whereas a H.264 codec encoded video used hardware to decode without the preceding overheads:

as did videos encoded with H.265 or HEVC:

Because the default installation of Kodi on Ubuntu 16.04.4 was only version 15.2 I again looked to ‘bionic’ and installed version 2:17.6. This resulted in Kodi on Ubuntu using software to decode all three codecs and resulted in judders and the occasionally frame freeze:

Some H.265 or HEVC videos were unwatchable experiencing a 10% loss of frames for each second of play:

with others were better at juddering along:

I found that on Ubuntu Mate 18.04 Beta1 if I installed the ‘i965-va-driver’ I could at least get hardware acceleration for H.264 codec encoded videos using the Video Acceleration API:

And also for some H.265 or HEVC videos:

However on Ubuntu 16.04.4 even installing and then upgrading the ‘i965-va-driver’ (1.7.0-1) to the version from ‘bionic’ (2.0.0+dfsg1-1) did not result in any hardware acceleration.

As can be seen the software decoding maximises the CPU usage in Ubuntu resulting in higher internal temperatures. The NUC7CJYSAL includes a near silent fan and under Windows it is just possible to hear when it runs at higher speed however under Ubuntu it is very quiet. So quiet I started to wonder whether it was in fact running.

I tried accessing the fan through software but the best I could do was only be reassured that there was a fan:

I also tried using the Ubuntu Mate 18.04 Beta1 I had installed to SSD but again all I could do was prove that there was a fan and that it was working as having stressed the CPUs they cooled down sufficiently fast to indicate active cooling:

To triple check that cooling was indeed working under Ubuntu I ran a 1080p video in Chrome for 20 minutes and the internal temperature remained under control averaging around 60°C with the external temperature not exceeding 38°C.

Audio (unsurprisingly) works on Windows:

and (thankfully) on Ubuntu without issues:

including when headphones were plugged in to the rear audio jack:

Network connectivity throughput was measured using ‘iperf’:

which resulting in consistently very slow download speeds for 5.0 GHz which given the newness of the Intel Wireless-AC 9462-D2W module may indicate that further tuning on Linux is necessary.

Power consumption was measured with an SSD installed as I consider this the likely usage configuration:

Powered off – 0.9 Watts

BIOS* – 6.5 Watts

Boot menu – 6.3 Watts

Idle – 5.6 Watts (Windows) and 4.9 Watts (Ubuntu)

CPU stressed** – 11.7 Watts (Ubuntu)

Video playback*** – 9.3 Watts (4K in Windows) and 9.2 Watts (HD in Ubuntu)

* BIOS has a full graphical user interface (see below)

** Initially there is a high power demand before reducing to a constant rate.

*** The power figures fluctuate so the value is the average of the median high and median low power readings.

The results show similar power consumption to comparable mini PC devices using ‘Desktop’ processors.

The BIOS features a full graphical user interface and includes the ability to monitor the fan speed and various temperatures together with features like screen capture:

﻿

As mentioned I installed an SSD which I did by unscrewing the base of the device and carefully lifting it out and sliding in the SSD into the drive bay on the underside. The cables connecting the drive bay and the motherboard are not very long so for reference the base will not completely detach which is why care is advised.

Once the base is screwed back into the device and the power and cables reconnected it is straightforward to install both Windows and Ubuntu from ISOs written to USBs.

For the sake of testing completeness the SSD I installed was an older model Samsung 650 120GB SSD which is still nice and quick compared to newer models:

Overall the device performs very well. If installing Ubuntu, I’d recommend only considering the upcoming 18.04 release to obviate any driver compatibility issues. A key selling differentiator for the NUC7CJYSAL is that Intel offers both hardware and software support with a full set of drivers available from their website including updates to the BIOS. Furthermore the device is covered by a three (3) year warranty period. For the price, it compares well with similarly priced mini PCs and the support commitment enhances the product’s appeal both for commercial and personal use.

The launch of a NUC with this specification is a pivotal point in the development of mini PCs. Whether intentionally or otherwise it is going to challenge the dominance of Chinese manufactures in the mini PC market place. The introduction of well-known computer companies offering small-form-factor mini PCs provides a wider choice which together with the more robust support will be welcomed by the risk averse consumer.