The Beelink X45 mini PC is now available, and Lightinthebox.com have provided a unit for review. It is very similar in style to Intel’s latest NUC Windows mini PC, the NUC7CJYSAL reviewed earlier. However it contains an Intel Celeron Processor J4105 SoC which is a quad core processor bursting up to 2.50 GHz together with the Intel UHD Graphics 600 processor that is capable of 4K support at 60Hz.
It is physically small consisting of an approximately 4.5″ by 4” case about 1¾” tall with a front panel that includes the power button and a couple of USB ports and a headphone jack with the rest of the ports including two HDMI (2.0) ones at the rear:
The specifications include:
A key point to note is the Beelink X45 comes with 64GB eMMC with pre-installed Windows 10 Home together with 4GB DDR4 RAM (soldered and is non-expandable) with space and connectors for both an mSATA and SSD.
Starting with a quick look at the hardware information shows it is mostly aligned to the specification but see the note below about the memory:
As usual I ran my standard set of benchmarking tools to look at performance under Windows:
The results need interpreting carefully otherwise they could be misleading when compared to other Intel mini PCs. This is because mini PC benchmark results are heavily influenced by the quantity and type of memory and storage installed:
Broadly speaking however the Beelink X45 performance is similar or better than the earlier J4005 device, especially with the CPU comparisons where its quad cores out perform the dual core processor.
Next I shrunk the Windows partition and created new a 15GB partition so I could install and dual boot Ubuntu using an Ubuntu 16.04.5 LTS ISO.
Once installed I first ran some basic commands to look at the hardware in more detail:
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 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 |
linuxium@X45:~$ lsb_release -a Distributor ID: Ubuntu Description: Ubuntu 16.04.5 LTS Release: 16.04 Codename: xenial linuxium@X45:~$ linuxium@X45:~$ uname -a Linux X45 4.15.0-33-generic #36~16.04.1-Ubuntu SMP Wed Aug 15 17:21:05 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux linuxium@X45:~$ linuxium@X45:~$ inxi -Fc0 System: Host: X45 Kernel: 4.15.0-33-generic x86_64 (64 bit) Desktop: N/A Distro: Ubuntu 16.04 xenial Machine: System: Beelink product: Gemini X v: Default string serial: Default string Mobo: Default string model: Default string v: Default string serial: Default string Bios: American Megatrends v: 0.08 date: 06/19/2018 CPU: Quad core Intel Celeron J4105 (-MCP-) cache: 4096 KB clock speeds: max: 2500 MHz 1: 2362 MHz 2: 2384 MHz 3: 2370 MHz 4: 2362 MHz Graphics: Card: Intel Device 3185 Display Server: X.org 1.19.6 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-33-generic Network: Card-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller driver: r8169 IF: eno1 state: up speed: 1000 Mbps duplex: full mac: 84:39:be:10:00:eb Card-2: Intel Wireless 3165 driver: iwlwifi IF: wlp3s0 state: down mac: 40:a3:cc:e0:7e:4b Drives: HDD Total Size: NA (-) ID-1: /dev/mmcblk0 model: N/A size: 62.5GB Partition: ID-1: / size: 15G used: 6.0G (43%) fs: ext4 dev: /dev/mmcblk0p5 RAID: No RAID devices: /proc/mdstat, md_mod kernel module present Sensors: System Temperatures: cpu: 40.0C mobo: N/A Fan Speeds (in rpm): cpu: N/A Info: Processes: 213 Uptime: 22:32 Memory: 937.0/3768.3MB Client: Shell (review-tests.sh) inxi: 2.2.35 linuxium@X45:~$ linuxium@X45:~$ df -h Filesystem Size Used Avail Use% Mounted on udev 1.9G 0 1.9G 0% /dev tmpfs 377M 11M 366M 3% /run /dev/mmcblk0p5 15G 6.0G 8.0G 43% / tmpfs 1.9G 332K 1.9G 1% /dev/shm tmpfs 5.0M 4.0K 5.0M 1% /run/lock tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup /dev/mmcblk0p1 96M 71M 26M 74% /boot/efi tmpfs 377M 108K 377M 1% /run/user/1000 /dev/mmcblk0p3 43G 27G 17G 63% /media/linuxium/72CA3D24CA3CE64F linuxium@X45:~$ linuxium@X45:~$ 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 58.2G 0 disk ├─mmcblk0p4 179:4 0 791M 0 part ├─mmcblk0p2 179:2 0 16M 0 part ├─mmcblk0p5 179:5 0 15G 0 part / ├─mmcblk0p3 179:3 0 42.4G 0 part /media/linuxium/72CA3D24CA3CE64F └─mmcblk0p1 179:1 0 100M 0 part /boot/efi loop3 7:3 0 0 loop linuxium@X45:~$ linuxium@X45:~$ sudo lshw -C cpu *-cpu description: CPU product: Intel(R) Celeron(R) J4105 CPU @ 1.50GHz vendor: Intel Corp. physical id: 34 bus info: cpu@0 version: Intel(R) Celeron(R) J4105 CPU @ 1.50GHz slot: SOCKET 0 size: 2393MHz 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 cdp_l2 ibrs ibpb stibp 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 arch_capabilities cpufreq configuration: cores=4 enabledcores=4 threads=4 linuxium@X45:~$ linuxium@X45:~$ sudo lshw -C memory *-firmware description: BIOS vendor: American Megatrends Inc. physical id: 0 version: 0.08 date: 06/19/2018 size: 64KiB capacity: 4864KiB capabilities: pci upgrade shadowing cdboot bootselect socketedrom edd int13floppy1200 int13floppy720 int13floppy2880 int5printscreen int14serial int17printer acpi usb biosbootspecification uefi *-memory description: System Memory physical id: 23 slot: System board or motherboard size: 4GiB *-bank:0 description: DIMM Synchronous 2133 MHz (0.5 ns) product: 123456789012345678 vendor: ABCD physical id: 0 serial: 1234 slot: A1_DIMM0 size: 2GiB width: 16 bits clock: 2133MHz (0.5ns) *-bank:1 description: DIMM Synchronous 2133 MHz (0.5 ns) product: 123456789012345678 vendor: ABCD physical id: 1 serial: 1234 slot: A1_DIMM1 size: 2GiB width: 16 bits clock: 2133MHz (0.5ns) *-bank:2 description: Project-Id-Version: lshwReport-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>POT-Creation-Date: 2009-10-08 14:02+0200PO-Revision-Date: 2012-02-02 13:04+0000Last-Translator: Joel Addison <jaddi27@gmail.com>Language-Team: English (Australia) <en_AU@li.org>MIME-Version: 1.0Content-Type: text/plain; charset=UTF-8Content-Transfer-Encoding: 8bitX-Launchpad-Export-Date: 2016-06-27 17:08+0000X-Generator: Launchpad (build 18115)Project-Id-Version: lshwReport-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>POT-Creation-Date: 2009-10-08 14:02+0200PO-Revision-Date: 2012-02-02 13:04+0000Last-Translator: Joel Addison <jaddi27@gmail.com>Language-Team: English (Australia) <en_AU@li.org>MIME-Version: 1.0Content-Type: text/plain; charset=UTF-8Content-Transfer-Encoding: 8bitX-Launchpad-Export-Date: 2016-06-27 17:08+0000X-Generator: Launchpad (build 18115) Synchronous [empty] product: Array1_PartNumber2 vendor: A1_Manufacturer2 physical id: 2 serial: A1_SerNum2 slot: A1_DIMM2 *-bank:3 description: Project-Id-Version: lshwReport-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>POT-Creation-Date: 2009-10-08 14:02+0200PO-Revision-Date: 2012-02-02 13:04+0000Last-Translator: Joel Addison <jaddi27@gmail.com>Language-Team: English (Australia) <en_AU@li.org>MIME-Version: 1.0Content-Type: text/plain; charset=UTF-8Content-Transfer-Encoding: 8bitX-Launchpad-Export-Date: 2016-06-27 17:08+0000X-Generator: Launchpad (build 18115)Project-Id-Version: lshwReport-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>POT-Creation-Date: 2009-10-08 14:02+0200PO-Revision-Date: 2012-02-02 13:04+0000Last-Translator: Joel Addison <jaddi27@gmail.com>Language-Team: English (Australia) <en_AU@li.org>MIME-Version: 1.0Content-Type: text/plain; charset=UTF-8Content-Transfer-Encoding: 8bitX-Launchpad-Export-Date: 2016-06-27 17:08+0000X-Generator: Launchpad (build 18115) Synchronous [empty] product: Array1_PartNumber3 vendor: A1_Manufacturer3 physical id: 3 serial: A1_SerNum3 slot: A1_DIMM3 *-cache:0 description: L1 cache physical id: 32 slot: � size: 224KiB capacity: 224KiB capabilities: synchronous internal write-back configuration: level=1 *-cache:1 description: L2 cache physical id: 33 slot: E size: 4MiB capacity: 4MiB capabilities: synchronous internal write-back unified configuration: level=2 linuxium@X45:~$ linuxium@X45:~$ free -mh total used free shared buff/cache available Mem: 3.7G 815M 1.2G 365M 1.6G 2.3G Swap: 0B 0B 0B linuxium@X45:~$ linuxium@X45:~$ sudo lshw -C network *-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: eno1 version: 07 serial: 84:39:be:10:00:eb size: 1Gbit/s capacity: 1Gbit/s width: 64 bits clock: 33MHz capabilities: pm msi pciexpress msix vpd 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=rtl8168e-3_0.0.4 03/27/12 ip=XXX.XXX.XXX.XXX latency=0 link=yes multicast=yes port=MII speed=1Gbit/s resources: irq:20 ioport:e000(size=256) memory:a1204000-a1204fff memory:a1200000-a1203fff *-network description: Wireless interface product: Wireless 3165 vendor: Intel Corporation physical id: 0 bus info: pci@0000:03:00.0 logical name: wlp3s0 version: 81 serial: 40:a3:cc:e0:7e:4b width: 64 bits clock: 33MHz capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless configuration: broadcast=yes driver=iwlwifi driverversion=4.15.0-33-generic firmware=29.1044073957.0 latency=0 link=no multicast=yes wireless=IEEE 802.11 resources: irq:130 memory:a1100000-a1101fff linuxium@X45:~$ linuxium@X45:~$ dmesg | grep "MMC card" [ 2.210677] mmc0: new HS400 MMC card at address 0001 linuxium@X45:~$ linuxium@X45:~$ lsusb Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 004: ID 8087:0a2a Intel Corp. Bus 001 Device 041: ID 046d:c52b Logitech, Inc. Unifying Receiver Bus 001 Device 042: ID 10d5:55a4 Uni Class Technology Co., Ltd Bus 001 Device 040: ID 1a40:0101 Terminus Technology Inc. Hub Bus 001 Device 002: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub linuxium@X45:~$ linuxium@X45:~$ lspci 00:00.0 Host bridge: Intel Corporation Device 31f0 (rev 03) 00:00.1 Signal processing controller: Intel Corporation Device 318c (rev 03) 00:02.0 VGA compatible controller: Intel Corporation Device 3185 (rev 03) 00:0e.0 Audio device: 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:14.0 PCI bridge: Intel Corporation Device 31d7 (rev f3) 00:15.0 USB controller: Intel Corporation Device 31a8 (rev 03) 00:16.0 Signal processing controller: Intel Corporation Device 31ac (rev 03) 00:16.1 Signal processing controller: Intel Corporation Device 31ae (rev 03) 00:16.2 Signal processing controller: Intel Corporation Device 31b0 (rev 03) 00:16.3 Signal processing controller: Intel Corporation Device 31b2 (rev 03) 00:17.0 Signal processing controller: Intel Corporation Device 31b4 (rev 03) 00:17.1 Signal processing controller: Intel Corporation Device 31b6 (rev 03) 00:17.2 Signal processing controller: Intel Corporation Device 31b8 (rev 03) 00:17.3 Signal processing controller: Intel Corporation Device 31ba (rev 03) 00:18.0 Signal processing controller: Intel Corporation Device 31bc (rev 03) 00:18.1 Signal processing controller: Intel Corporation Device 31be (rev 03) 00:18.2 Signal processing controller: Intel Corporation Device 31c0 (rev 03) 00:18.3 Signal processing controller: Intel Corporation Device 31ee (rev 03) 00:19.0 Signal processing controller: Intel Corporation Device 31c2 (rev 03) 00:19.1 Signal processing controller: Intel Corporation Device 31c4 (rev 03) 00:19.2 Signal processing controller: Intel Corporation Device 31c6 (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) 02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 07) 03:00.0 Network controller: Intel Corporation Wireless 3165 (rev 81) linuxium@X45:~$ |
Note that the memory is 2133 MHz and not the advertised 2400 MHz.
I then ran my usual suite of Phoronix tests to look at performance in Ubuntu. First I looked at the Beelink X45 in comparison with the earlier Intel NUC NUC7CJYSAL model each using their original ‘OOTB’ configuration:
The results highlight that the key performance gains are from the extra cores and faster processor speed and performance loses are from the slower eMMC.
Ubuntu’s Octane result was also tested and it was slightly better than in Windows:
Next I looked at real-world usage by playing videos under Windows using both Edge and Chrome browsers. Under both browsers 4K@30fps and 4K@60fps videos played fine:
although on Chrome the 4K@60fps video had the occasional dropped frame which was unnoticeable.
In contrast playing videos in Chrome on Ubuntu was a similar story to on other Intel processor-based mini PCs with 4K@30fps being unwatchable but fine when played at 1440p:
The 4K@60fps video resulted in the frames being dropped and was unwatchable:
however 1080p@60fps was fine with only the occasional unnoticeable dropped frame.
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 an H.264 codec encoded video used hardware to decode without these overheads:
as did videos encoded with H.265 or HEVC:
Both VP9 and H.264 codec encoded videos used software to decode in Kodi on Ubuntu. The VP9 was unwatchable with picture corruptions:
However the H.264 although skipping frames was watchable:
but H.265 or HEVC videos were unwatchable experiencing frequent loss of frames:
As can be seen the software decoding creates high CPU usage resulting in higher internal temperatures. The Beelink X45 includes a virtually silent fan and is only just audible even under these conditions as it cycles on and off. Cooling is effective and under Ubuntu I ran an H.264 video in Kodi for 20 minutes and the internal temperature remained under control averaging around 72°C with the external temperature of the device a constant 27°C:
Audio works on Windows:
and also on Ubuntu without issues:
Network connectivity throughput was measured using ‘iperf’:
The results were unusual in that both Ethernet and 5.0 GHz wireless showed a very slow upload speed whereas for 2.4 GHz the upload was twice as fast as the download speed.
As mentioned the device comes with space to add an SSD:
So I decided to repeat the entire testing using an Intel 180GB M.2 SSD housed in an SSD enclosure so I could directly compare the Beelink X45 with the NUC7CJYSAL, but this time using Ubuntu 18.04 LTS (18.04.1 ISO installed) to see if the performance under a later version of Kodi would improve. Windows was installed using the Microsoft ISO and all the necessary drivers were found and updated automatically with Windows activating immediately.
First the standard set of benchmarking tools to look at performance under Windows:
This time the CPU difference can be clearly seen and is reflected through slight performance improvements across all the results.
Then I ran my usual suite of Phoronix tests again to look at performance in Ubuntu 18.04:
Again the results show the key performance gains from the extra cores and faster processor speed.
Ubuntu’s Octane result was also tested and it was slightly better (15958 for the Beelink X45 vs 15824 for the NUC7CJYSAL).
The main improvement for both devices was through using the later release of Kodi on Ubuntu 18.04.
Whereas before software decoding was used for each format tested, this time hardware decoding for VP9, H264 and some HEC/H265 videos resulting in smooth playing:
with one 10-bit HEVC video still stalling:
It was also just possible to play a 4K 60FPS video and although skipping was reported it was not noticeable:
I also repeated testing network connectivity throughput again using ‘iperf’:
The results show a marked improvement for both Ethernet and 5.0 GHz wireless. However it was impossible to connect to a 2.4 GHz network regardless of the router used. This indicates an software/driver issue rather than a hardware issue and will probably be fixed by a future Ubuntu 18.04 package upgrade.
Power consumption with the SSD was measured as follows:
- Powered off – 0.7 Watts
- BIOS* – 5.1 Watts
- Boot menu – 4.9 Watts
- Idle – 4.1 Watts (Windows) and 3.4 Watts (Ubuntu)
- CPU stressed – 15.8 Watts (Ubuntu)
- Video playback** – 9.6 Watts (4K in Windows) and 8.3 Watts (1080p in Ubuntu)
* BIOS (see below)
** The power figures fluctuate so the value is the average of the median high and median low power readings.
The BIOS appears to be fully unlocked and a brief overview is available in the following video:
As shown the Beelink X45 is comparable to the NUC7YJYSAL. An advantage of the Beelink device is that it the storage is initially larger (64GB vs 32 GB) which means Windows updates without issue, and it is expendable not just with an SSD but also includes space for an mSATA. It is also slightly cheaper. The disadvantage is that the memory is fixed at 4GB RAM and doesn’t come with a three (3) year warranty.
One minor point to also note is that the USB ports are very close together meaning if you have a physically large USB drive or a USB cable with a wide plastic end then you may effectively only have two rather than four ports. The front right-hand USB port is also very close to the headphone jack again meaning size interference may occur.
Overall the device performs well and is worthy of consideration and Lightinthebox are currently selling the Beelink X45 for $184.99. If installing Ubuntu I’d recommend only considering the 18.04 LTS release to ensure the latest version of drivers and packages like Kodi.
Ian is interested in mini PCs and helps with reviews of mini PCs running Windows, Ubuntu and other Linux operating systems. You can follow him on Facebook or Twitter.
Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress
Not sure anyone cares but I noticed the RAM is reported as 2133Mhz instead of the advertised 2400Mhz and also it seems to be running in single channel only. I wonder how much that affected the benchmarks and video tests?
Also, anyone else see the NVMe entry in the BIOS and wished they squeezed in an M.2 2280 slot?
All DDR4 memories is 2133Mhz. Higher freqs achieved by tuning it. by default Every ddr4 is 2133