|Lenovo G510 Review||navigate:back|
Review of Lenovo G510
- I ordered a Lenovo G510 laptop from Lenovo's website in June 2014.
- It was one of the "weekly deals" at that time and (in my configuration) discounted from $1099 to $699. A few weeks later, this model was then "sold out".
At a Glance
- 4 core (8 threads) 2.4 GHz (3.4 GHz turbo mode) Haswell CPU i7-4700MQ
- Windows 8.1 64 bit
- 15.6 inch glossy display 1366x768
- 8 GB DDR3 memory
- 1 TB 5400 RPM disk
- 1 DVD drive (24x)
- 3 USB ports (2x USB 3.0, 1x USB 2.0)
- Bluetooth 4.0
- Memory card reader
- Webcam 720p
- Ethernet 100 Mbit/s, Wifi
- Virtualization support (needs to be enabled in the UEFI menu)
- 6 Cell Lithium-Ion battery
- 2 Year warranty
- UEFI shows the world yet another time how much Bios writers hate humanity. It is very challenging to install OSes next to Windows 8.1.
- After a couple of weeks, Lenovo published an UEFI security update as a Microsoft Windows .exe file - a FreeDOS USB stick could not execute it.
- Secure boot can be disabled and Windows 8.1 still boots nicely. Legacy mode can be enabled/disabled.
- The preferred partitioning scheme is GPT. Linux fdisk does not understand GPT partitions - use (c)gdisk or gnu parted, instead.
- Windows 8.1 came pre-installed. Lenovo did not offer an alternative Windows version, Linux, or simply FreeDOS.
- The hard disk was split into 5 partitions. It is not immediately obvious what most are for.
- Lenovo did not provide a Windows DVD. A recovery USB stick can be created, though. There is no way of creating recovery DVDs. For safety reasons, I dd'ed the USB stick onto a hard drive.
- The case can be easily opened (even intuitively without instructions). Hard-drive and memory can be easily replaced.
- The case is not as robust as the ones from MacBook Pros or Lenovo Thinkpads. Holding it with both hands and gently squeezing and pressing deforms the case. The biggest downside are the quite fragile touchpad buttons making me use an external mouse, only.
- They CTRL key is located in the bottom left corner - exactly where an emacs user needs to have this key.
- They right shift key is quite small and not aligned with the right edge of the alpha-numeric section of the keyboard. Hence, I constantly miss it (this also makes me realize how often this key is actually used). What I like about desktop keyboards is the clear separation of the alpha-numeric section on the left and the numeric keypad on the right. It is quite easy to feel where the hand is positioned. On most laptop keyboards, there is no clear separation and all keys flow into each other. This makes it hard to blindly hit the intended key. This keyboard is no different.
- No back-lights for working at night-time.
- I would have loved to have a middle button on the touchpad for X-Window.
- The two bottoms on the touchpad are extremely fragile.
- The touchpad is not centered within the laptop, but straight under the space bar.
- SATA 3 Seagate Momentus ST1000LM024 (1,000,204,886,016 bytes).
- On some of my linux machines, I have major problems with the load cycle count (smartctl -a /dev/sda | grep Load_Cycle). The first couple of weeks, the machine was quite peaceful. Then, after a Debian 8 Update in August 2014, the load cycle count started to increase. Disabling power management with hdparm -B 254 /dev/sda stopped the load cycle increase.
- Under normal usage pattern (internet, video, ...), the fan does not spin and the laptop is very quiet.
- Under load (and power-saving governor), the fan does spin:
- Stressing one core with make -j1: One core goes into turbo mode (3.4 GHz) and one can hear the fan - it has a soft sound and can be easily ignored.
- Stressing all cores with make -j4: All cores go into turbo mode and the fan spins loud. The volume is annoying - there are louder laptops on the market, though.
- Turbo mode: The cpu has a normal maximal operational frequency of 2.4 GHz. Its turbo mode is at 3.4 GHz. When two or more cores are longer than 2 seconds in turbo mode, the cpu becomes too hot and the frequency is forcefully set back to 0.8 GHz for half a second - this repeats over and over. Turbo mode can be disabled via # echo 1 > /sys/devices/system/cpu/intel_pstate/no_turbo and so the cores run at max 2.4 GHz. Under load, the fan spins then softly and kernel compilation time with make -j8 is even 12.5% faster! Turbo mode seems to pay off only when either exactly one core is heavily used or when cpu power is needed on multiple cores in short bursts, only.
- HD Graphics 4600 embedded GPU.
- Supported by Linux and Windows.
- vblank_mode=0 glxgears: 9659.121 FPS.
- Ethernet: Qualcomm Atheros QCA8172. The ethernet chip only supports speeds up to 100 Mbit/s. Nowadays, 1Gbit/s is standard.
- Wifi: Boardcom BCM43142. Reception is weak - the signal strength rapidly decreases with distance from the hot-spot. I get signal strengths between 70% - 100%. There is no free wifi driver and Broadcom releases binary drivers for Windows and Linux, only.
- Max volume is ok. The audio quality is good enough for listening to mp3s on the side.
- The linux bluetooth driver lets bluetooth and wifi interfere. Hence, one can only use bluetooth when disabling (or very very lightly using) wifi.
- Glossy 15.6 screen 1366x768. That is not that much. A window manager with (a convenient way of switching between) virtual screens mitigates this problem somewhat. 768 vertical pixels makes one scrolling in websites more often.
- High definition 720p, but low quality webcam. The "Lenovo Easy Cam" can be tested with vlc > Media > Open Capture Device.
- The power supply can provide up to 65 Watt providing more than sufficient buffer for even the highest CPU loads.
- 16 Watt when doing minor work such as running X-Windows and playing mp3s. On battery, this translates into roughly 4 hours.
- 26 Watt when doing builds on all cores and threads with make -j8.
00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor DRAM Controller (rev 06)
00:02.0 VGA compatible controller: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller (rev 06)
00:03.0 Audio device: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor HD Audio Controller (rev 06)
00:14.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB xHCI (rev 05)
00:16.0 Communication controller: Intel Corporation 8 Series/C220 Series Chipset Family MEI Controller #1 (rev 04)
00:1a.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #2 (rev 05)
00:1b.0 Audio device: Intel Corporation 8 Series/C220 Series Chipset High Definition Audio Controller (rev 05)
00:1c.0 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #1 (rev d5)
00:1c.1 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #2 (rev d5)
00:1c.2 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #3 (rev d5)
00:1d.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #1 (rev 05)
00:1f.0 ISA bridge: Intel Corporation HM86 Express LPC Controller (rev 05)
00:1f.2 SATA controller: Intel Corporation 8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode] (rev 05)
00:1f.3 SMBus: Intel Corporation 8 Series/C220 Series Chipset Family SMBus Controller (rev 05)
02:00.0 Network controller: Broadcom Corporation BCM43142 802.11b/g/n (rev 01)
03:00.0 Ethernet controller: Qualcomm Atheros QCA8172 Fast Ethernet (rev 10)
The situation around 07/2014 (Only Debian 8 is fully tested over a longer period of time)
- Ubuntu 14.04.2 LTS mostly works out of the box: webcam, ethernet, wifi, X-Window (intel driver), touchpad, sound, memory card reader. Suspend to memory and disk is broken: the system does not always wake up. There is an open bug for this 422330.
- Debian 7 neither comes with the right ethernet nor wifi driver. Without internet connection, it is hard to post-install the right drivers. I have not looked into Debian 7 further and proceeded with Debian 8 - alpha 1 and that is currently running.
- Debian 8 - alpha 1 (debian-jessie-DI-a1-amd64-xfce-CD-1.iso) does come with the right ethernet but not with the right wifi driver. Ubuntu's wifi driver can be compiled via wget archive.ubuntu.com/ubuntu/pool/restricted/b/bcmwl/bcmwl-kernel-source_184.108.40.206+bdcom-0ubuntu3_amd64.deb; dpkg -i bcmwl-kernel-source_220.127.116.11+bdcom-0ubuntu3_amd64.deb into /lib/modules/3.*-amd64/ and needs to be re-compiled after every kernel upgrade. Note, the driver file name is a moving target: check the base directory for the proper version string. Every couple of hours, the wifi driver logs a stack trace which does not seem to impact operations (WARNING: CPU: X PID: XXXX at /build/linux-C0Ywsc/linux-3.14.13/net/wireless/sme.c:919 cfg80211_connect+0x4ba/0x500 [cfg80211]()). X-Window (intel driver) modulo the easily fixable debian bug 735322, touchpad, memory card reader, webcam and sound work, too. Like Ubuntu, suspend to memory and disk do not work (neither with pm-* nor uswsusp). I went over several Debian 8 kernel updates without any improvement.
- Knoppix 7.2: Briefly booted Knoppix. X-Window and ethernet work. Webcam works, too. I could not get audio up and running in a reasonable amount of time. Wifi did not work, either.
- FreeBSD 10 & PCBSD 10: FreeBSD 10 can not boot in UEFI mode yet and legacy mode needs to be configured. PCBSD can boot in UEFI mode. None of them neither supports the ethernet nor wifi chip. This makes them rather uninteresting. X-Window worked with the vesa driver (Haswell GPUs are not supported by FreeBSD 10.x, yet). Suspend to memory works (acpiconf -s 3). Suspend to disk is not supported by FreeBSD in general. Sound works and the webcam works with port multimedia/webcamd providing /dev/video0. Memory reader does not work. I have not looked into it.
The situation around 07/2015 (still running Debian 8 as my main operating system)
- Debian 8: no change from the previous tested version. Suspend to memory and disk are as flanky as they were one year ago. The wifi driver does not need to be compiled from source anymore. It's named wl.ko and is available in package broadcom-sta-dkms.
- There is no new Knoppix release, yet.
- FreeBSD 10.2 Prerelease 20150704 [dmesg]: FreeBSD can now boot in UEFI mode and the ethernet chip is supported. As before, wifi is still not supported. I have not tried the memory card reader. FIXME: What about X-Window?
- NetBSD 7.0 R1 [dmesg]: X-Window (intel driver) works out of the box and so does audio and ethernet. Although there are video4linux2 drivers for NetBSD, I got the webcam only working with mplayer (mplayer tv:// -tv driver=v4l2:device=/dev/video0). Suspend to memory does not work (sysctl -w hw.acpi.sleep.state=3). Initially, suspend to memory aborted due to a device, hdaudio0, not supporting power management. I compiled a custom kernel without this driver and intended to load it (modload hdaudio) and unload it (modunload hdaudio) right before and after suspending the system, but modload failed with a bunch of error messages. That is a separate problem as the main problem is still not solved: without the hdaudio driver in the kernel, suspend to memory does work, but wakeup does not - the machine simply reboots. Advice from the acpi(4) man page to set hw.acpi.sleep.vbiosto 2 was of no help. Suspend to disk is not supported by NetBSD at all (see acpi(4) man page). Wifi does not work: NetBSD's bwi driver (together with Dragonfly's firmware) support similar named wifi chips, but not the built in BCM43142 chip. Touchpad does not work out of the box. I have not looked into it. Memory card reader does not work. I have not looked into it.
The situation around 01/2017 (still running Debian 8 as my main operating system)
- Ubuntu 16.10: no change from the previous tested version 14.04.2 LTS: suspend to memory and disk are still as flanky as in 2014.
- Debian 8: no change from the previous tested version: suspend to memory and disk are still as flanky as in 2014.
- FreeBSD 11.0 [dmesg]: X-Window works now (intel driver). Suspend to memory works from X-Window but but not from the text-console (the screen remains black after the wake up and commands can be (blindly) executed). FreeBSD has now initial support for suspend to disk but not for this machine. What is left is still no wifi and memory card reader support. I have not tried hard getting the memory card reader to work, though.
- NetBSD 7.1 R1: Touchpad works now out of the box. The webcam also works now not only with mplayer but with virtually every video application. As before, wifi, suspend to memory or disk, and the memory card reader still do not work.
The situation around 11/2017 (still running Debian 9 as my main operating system)
- Ubuntu 17.2 (Kernel 4.13): Everything works out of the box. Now even suspend to memory works (I stopped testing after 50 successful systemctl suspend calls. I have not tried the pm-* utilities). Suspend to disk is not supported - systemctl hibernate fails and jounralctl -xe is not very clear about the problem. I have not tried very hard getting it to work.
- Debian 9 ((Kernel 4.9): suspend to memory and disk are still as flanky as in 2014. This surprises me as suspend to memory works now flawlessly in Ubuntu. Debian comes with a 4.9 kernel and Ubuntu with an 4.13 kernel and so I tried this version from Debian/unstable. No help. The xfce screensaver suspends the screen after a few minutes of inactivity by setting the X server in some suspend mode. Every 3 months or so, the X server crashes upon trying to wake up [crash log].
- Knoppix 8.1 (Kernel 4.12): Everything works out of the box (live usb stick and hard disk installation). Like Ubuntu, even suspend to memory works (I stopped testing after 50 successful systemctl suspend calls. I have not tried the pm-* utilities). Like Ubuntu, suspend to disk is not supported. I have not tried very hard getting it to work.
- FreeBSD 11.1: No change from the previous tested version 11.0.
Lenovo Email Spam
- A few days after receiving the laptop, a company emailed me a survey on behalf of Lenovo. An yet some days later, I received a reminder.
Further G510 Reviews
- You are welcome to send me comments. Contact information is available on the main page.