I have a Dell Precision M4800, which has a 2.5" and an mSATA slot, so I am dual-booting Windows and FreeBSD on separate drives, using the Dell boot menu. I wanted as close to an Apples-to-Apples comparison to working with FreeBSD vs Windows, especially when it came to performance and battery life.
One challenge in making a true Apples-to-Apples comparison is that this laptop has an MXM module AMD M5100M graphics card. FreeBSD drivers do not work with switchable graphics enabled in the BIOS, but Windows does not work properly without switchable graphics enabled in the BIOS. The switchable graphics feature would allow the system to use only the integrated Intel video until the power of the discrete card was needed. This has a significant impact on battery life.
In FreeBSD, with switchable graphics enabled, the accelerated drivers will crash the system. Without proper video drivers, you lose out on any potential energy savings, and certainly lose out on performance. In Windows, with switchable graphics disabled, the video does not properly output to the laptop screen, and an external monitor is required to properly use the system. I understand that the Nvidia MXM cards and drivers have settings that allow for Windows to properly work with switchable graphics turned off, and there is experimental support for the Optimus feature in the FreeBSD Nvidia drivers. I'm not spending a couple hundred dollars to get the equivalent performance Nvidia MXM card though, so I have to work with what I have.
On to the battery life test. I ran the test with switchable graphics Off, and in Windows had an external monitor connected. I used only the laptop screen in FreeBSD. For FreeBSD, I used the latest 12.1-RELEASE version, with the included radeonkms.ko driver, and powerd enabled. XFCE is the desktop environment. Windows is a clean install of 1909, with the latest video drivers from AMD. I do have running on the Windows computer the Nexus dock (free edition) and in the power plan set the computer to never go to sleep. Other than this, there are no tweaks to either system.
I first tested FreeBSD. From 100% battery power to 6%, the drain time was 3 hrs, 6 minutes.
In Windows, from 100% battery power to 5%, the drain time was 3 hrs, 21 minutes.
A couple of caveats to my tests:
1. I am doing this test while at work, so the drain time should be giving a couple of minutes either way. It got busy during the Windows test, so I don't recall the exact time that Windows was at 5%, so it is possible that the battery drain could have been up to 10 minutes less.
2. Windows at some point switches to a lower performance mode to save battery life. FreeBSD out of the box does not do this.
3. There are tweaks that can be done on FreeBSD that could potentially give better power savings. I will be looking into those to see what can be done.
So what is the conclusion of this test? It is murky. If I am going to use Windows with battery power on this laptop, I wouldn't be using it with an external monitor, which means I would have the switchable graphics enabled in the system BIOS. This should allow for significantly longer battery life (I will test this to see what is gained), but makes a true apples-to-apples comparison difficult. This does indicate that if someone were using a laptop just with integrated Intel graphics, there would be no significant loss in battery performance using FreeBSD vs. Windows.
One challenge in making a true Apples-to-Apples comparison is that this laptop has an MXM module AMD M5100M graphics card. FreeBSD drivers do not work with switchable graphics enabled in the BIOS, but Windows does not work properly without switchable graphics enabled in the BIOS. The switchable graphics feature would allow the system to use only the integrated Intel video until the power of the discrete card was needed. This has a significant impact on battery life.
In FreeBSD, with switchable graphics enabled, the accelerated drivers will crash the system. Without proper video drivers, you lose out on any potential energy savings, and certainly lose out on performance. In Windows, with switchable graphics disabled, the video does not properly output to the laptop screen, and an external monitor is required to properly use the system. I understand that the Nvidia MXM cards and drivers have settings that allow for Windows to properly work with switchable graphics turned off, and there is experimental support for the Optimus feature in the FreeBSD Nvidia drivers. I'm not spending a couple hundred dollars to get the equivalent performance Nvidia MXM card though, so I have to work with what I have.
On to the battery life test. I ran the test with switchable graphics Off, and in Windows had an external monitor connected. I used only the laptop screen in FreeBSD. For FreeBSD, I used the latest 12.1-RELEASE version, with the included radeonkms.ko driver, and powerd enabled. XFCE is the desktop environment. Windows is a clean install of 1909, with the latest video drivers from AMD. I do have running on the Windows computer the Nexus dock (free edition) and in the power plan set the computer to never go to sleep. Other than this, there are no tweaks to either system.
I first tested FreeBSD. From 100% battery power to 6%, the drain time was 3 hrs, 6 minutes.
In Windows, from 100% battery power to 5%, the drain time was 3 hrs, 21 minutes.
A couple of caveats to my tests:
1. I am doing this test while at work, so the drain time should be giving a couple of minutes either way. It got busy during the Windows test, so I don't recall the exact time that Windows was at 5%, so it is possible that the battery drain could have been up to 10 minutes less.
2. Windows at some point switches to a lower performance mode to save battery life. FreeBSD out of the box does not do this.
3. There are tweaks that can be done on FreeBSD that could potentially give better power savings. I will be looking into those to see what can be done.
So what is the conclusion of this test? It is murky. If I am going to use Windows with battery power on this laptop, I wouldn't be using it with an external monitor, which means I would have the switchable graphics enabled in the system BIOS. This should allow for significantly longer battery life (I will test this to see what is gained), but makes a true apples-to-apples comparison difficult. This does indicate that if someone were using a laptop just with integrated Intel graphics, there would be no significant loss in battery performance using FreeBSD vs. Windows.