Stephen Smith's Blog

Musings on Machine Learning…

Archive for March 2020

Restoring an Old MacBook Pro

leave a comment »

Introduction

A number of volunteers with the Sunshine Coast Tech Hub work with the Gibsons Public Library to offer a number of kids coding classes. These include programming Sphero Robots, programming Lego Mindstorms and basic Arduino programming. Originally the library used six 2008 MacBook Pros for these classes. However when these MacBooks went out of support they liquidated them and the Tech Hub took them over. Meanwhile the library bought a number of ChromeBooks which have been fine for the Sphero and Lego Mindstorm classes, but don’t work for the Arduino classes.

Since MacOS is no longer supported on these laptops, we installed Linux Mint on them all and they have been working fine. However they are old and only have 1Gig of RAM and 120Gig mechanical harddrives. Now that they are twelve years old, we figured we could upgrade them to see if we can get some more life out of them. This blog post is about this upgrade process, how it worked out and how these laptops from 2008 fair today in 2020.

These MacBooks Are Upgradeable!

Lately, I’ve become accustomed to laptops that are very hard to upgrade. The memory is usually soldered to the motherboard or incorporated into other components and hence not upgradeable. Harddrives are usually replaceable, but doing so is usually very hard, requiring much disassembly and fiddling.

I was pleasantly surprised at how easy it is to upgrade the RAM and harddrives in these old MacBooks. The battery is interchangeable, you can remove the battery using a quarter to release it. Then behind the battery compartment is the harddrive and RAM. You need to remove a guard, which is held in place by 3 regular phillips screws. Then you can pop the harddrive and RAM.

I ordered an SSD harddrive and 4Gig RAM from eBay. The 120Gig SSD was $30 and the RAM was $14. I popped these in, booted from a USB key and copied the old harddrive to the new one all using GParted. It was a surprisingly easy and straightforward procedure and everything worked fine. I borrowed a USB SATA harddrive caddy to connect the old drive.

Now I wish modern laptops have the same upgradeability of these old MacBooks.

Benchmarks

Here are some sysbench benchmarks on the MacBook Pro upgrade:

Computer CPU Memory Disk Read Disk Write
HP i3 laptop 312.91 4906.62 13.06 8.71
MacBook Pro Original 313.31 343.76 0.72 0.48
MacBook Pro Updated 313.51 343.19 27.75 18.5
Pi 64-Bit Kali 585.62 3731.93 0.85 0.57

 

The difference comparing before and after the upgrade is like night and day. The MacBook boots orders of magnitude faster and the laptop now feels like a decent laptop.

The HP laptop is circa 2015 or so. Interesting that a 2015 i3 gets about the same CPU score as a 2008 Core2Duo. I was surprised how well the Raspberry Pi did on the CPU test. I think it shows ARM based laptops can cut it, especially since the Pi runs ARM processors that are a couple of generations old.

Notice the SSD improves disk performance by about 40 times. Pretty good. The HP laptop is also an SSD, but a couple of years old now. Chances are the HP disk controller isn’t as good as the Apple one. The Pi is running off an SD card, which appears to have the same performance as an old mechanical drive. The MacBook uses a 2.5” SATA hardrive, which is the same form factor largely in use still today, the newer SATA standard is backwards compatible and new drives seem to work fine in quite old computers.

The MacBooks use DDR2, the HP DDR3 and the Pi DDR4. I was surprised the Pi didn’t do better on the memory benchmark. I suspect the Broadcom memory controller it uses isn’t very good, since it should outperform the HP laptop.

I upped the swap size on the upgraded macbook from 1gig to 13gig, so now it has piles of memory. Seems to run pretty well. One improvement is that the wifi seems reliable now (it definitely wasn’t before).

Intel Shooting Itself in the Foot

One thing this exercise showed me is how Intel shoots itself in the foot by producing crippled chips for the consumer market to keep prices high on their top end chips. All Intel chips are basically the same and produced at the same cost, but Intel cripples functionality to provide a range of price/performance points. For the HP laptop, at that point the Intel i7 was the top end chip and then the i3 is a crippled version offered at a lower price. So a i3 from 2015 has the same processing power as a Core2Duo from 2008. I think this is part of the reason Intel is in so much trouble. They spend far too much time crippling their own products so they don’t compete with each other that they leave the market open to competitors that don’t play these games. Hence the upswing in AMD and the emergence of ARM processors taking over from Intel. Intel is going to have a tough time recovering from this mess that they created for themselves.

Summary

Upgrading the 2008 era MacBook Pros to 4Gig and SSD harddrives keeps them chugging along as productive useful computers. Linux Mint works great on them. The displays are still better than modern cheap laptops and surprisingly the batteries still work for between 1 and 2 hours. There aren’t many technology products that you can get this much life out of, 12 years of productivity and counting. It would sure be nice if modern laptops would allow upgradeability over shaving another millimeter off the thickness.

Written by smist08

March 28, 2020 at 11:54 am

Posted in Business

Tagged with , , , , ,

On ARM Based MacBooks

with one comment

Introduction

There’re a lot of rumours circulating that Apple will start releasing ARM based MacBooks towards the end of this year or early next year. There has been a lot of negativity on these possibilities, but I feel this will be an overall positive for Apple and Mac computers. In this blog post, I’m going to look at the commonly mentioned criticisms of this and debunk these as the myths they are.

Performance of ARM vs Intel or AMD

Many claim that Intel and AMD chips are faster than ARM chips. This only applies at the high end. Both Intel and AMD produce excellent chips at the high end, that they charge a fortune for. Then they release lower powered versions for general consumer release. Further, the most powerful AMD and Intel chips are power hungry and don’t appear in laptops due to the heat they produce and how fast they drain batteries.

In most laptops you run less powerful, less power hungry chips. For ARM chips to be competitive, they only need to compare well to Intel i3 or i5 chips. These are what most people really run. I’m writing this on an older i3 based laptop, when I run CPU benchmarks on this laptop, it scores half of the ARM CPU in my Raspberry Pi 4. The ARM CPU in a Raspberry Pi is an older ARM chip to keep the price so low.

The CPU power per watt processing power of ARM processors is far superior to Intel or AMD chips. Further ARM processors typically have more cores and coprocessors than Intel or AMD chips. This is because Intel and AMD want to have such a wide line of processors and take so much out, to keep up demand for their more expensive products.

Availability of Software

There is a claim that no one will compile ARM versions of their software or bother to port their programs from the Intel instruction set to the ARM instruction set. This problem was solved by the Raspberry Pi. When I started with the Raspberry Pi, many common Linux programs either wouldn’t work on the Pi or you needed to build them yourself from source. Now every major Linux open source product, produces ARM 32 and 64-bit binaries as part of their regular build process.

Further, the Apple ecosystem has familiarity with ARM since the iPhone and iPad market is far larger than the MacOS market.

Sure, Microsoft has trouble getting software for their ARM based Surface laptops, but that is unique to the Windows world and doesn’t apply to Linux or Apple.

Apple has the experience to move their ecosystem across CPU architectures. They moved the MacOS world from PowerPC to Intel. This transition looks far easier.

Problems in the Windows World Apply to Apple

There have been a number of attempts to move Microsoft Windows to a non-Intel platform. So far these have all failed. The problem in the Windows world is that there is tons of software out there, much of it from legacy companies that have gone out of business and the source code isn’t available to re-compile. The legacy of rejecting open source software and promoting vendor lock-in has now tied Microsoft’s hands, preventing them from moving forwards.

The other problem is that Microsoft has tried to use this transition as a mechanism of locking customers in. For instance only allowing software to be installed from the Microsoft store. Or limiting the functionality in the ARM version, to promote demand for their more expensive products.

Advantages of ARM Based Laptops

There are several advantages for Apple going with ARM processors in their MacBooks:

  1. The ARM processor uses less power, so battery life will be far longer.
  2. It provides differentiation between Apple products and the millions of Intel/AMD Windows laptops on the market.
  3. It reduces Apple’s cost for CPUs by 60%.
  4. It allows Apple more room to innovate in their laptop line.
  5. The ARM Processors are produced by multiple manufacturers, so Apple can use the best of breed rather than relying on Intel’s lagging process manufacturing technology. 

Summary

I’m looking forward to a wave of ARM based laptops whether from Apple or from the various Linux vendors. I think this is the Intel/AMD duopoly’s last stand. Competition is only good. I’m tired of using crippled chips like the i3 or Celeron and look forward to much greater processing power at a lower cost with longer lasting batteries.

Written by smist08

March 27, 2020 at 2:01 pm

Posted in Business

Tagged with , , , ,

Tools for the Mobile Writer

leave a comment »

The Write Cup

By Stephen Smith

Introduction

Most writers work from home, or a coffee shop to get a change of scenery. More adventurous writers regularly travel to remote places, to say write while lying on an isolated tropical beach. This article covers a number of tools and techniques to stay connected and to collaborate with other writers, editors or publishers.

Staying on the Internet

All modern tools require that you’re connected to the Internet. I blogged on how to stay safe when using coffee shop wifi, but what if there isn’t any wifi to connect to? The best alternative to wifi is the cellular network.

Most cell phone plans include enough data for writers. If you are travelling in a foreign country, consider getting a local SIM card and plan for your phone. This is far cheaper than paying the roaming charges to your home provider.

A few writers compose and…

View original post 592 more words

Written by smist08

March 7, 2020 at 5:12 pm

Posted in Uncategorized