A New iMac On Its Way

Today was a bit pricy. I ordered a new adjustable height desk to put under a new 27 inch 2017 iMac.


My ancient trestle dining table desk is always at the wrong height for work so I decided to treat myself to an adjustable desk from The Human Solution in Austin, Texas. The desk I chose was a 30×60 radiused front bamboo top on an adjustable trestle base like that shown above. An electric drive lets you easily move the desk to one of 4 preset heights and even tells you how high the work top is.

The New iMac

After some poking around at the Apple Store and some on-line reading, I chose a new 27 Inch i7 iMac. Apple makes it tricky as they never change just one thing from model to model. I use my machine primarily for photo and video editing, at least that’s my design basis usage. In reality, it spends its boring life writing this blog.

When fan boys are talking about computer hardware, they are usually speaking about how well the part games. I’m not a gamer so most of their observations are irrelevant. Gaming workloads are unique and are tuned to nVidia graphics by and large.

Apple places a premium on how well the hardware supports OpenCL application computing with graphics rendering a secondary consideration. OpenCL performance is the primary consideration in video and audio rendering. Cryptography support is increasingly important as data is encrypted at rest and decrypted on the fly.

What Apple Changes

From model to model in a line, Apple changes the display, the graphics hardware, storage, and the processor. This means that there are sweet spots in the product line but it also means that upgrading one capability may require accepting additional changes. When you look at the fan-boy discussions on-line, the posters tend to focus on one aspect of the machine without much regard to what it would be doing or that it would be doing several things at once. I thought I’d take a deeper look in this article.

The graphics chipset is the primary differentiator of the 27 inch 5K Retina iMac line. The display and display hardware must be chosen at time of purchase. The processor, memory, and storage can be changed in the field although only memory updates are easy. Storage and processor updates require dealing with the double sided tape holding the iMac together. Of the two tasks, updating the storage is easy. Tinkering with the processor is less easy as Apple has tailored the cooler to the specific processor it uses.


Apple offers 4K and 5 K retina displays in the iMac. The 4K display is more than adequate for general use. The 5K display is aimed primarily at those working with large images. The big display has room for a full 4K video frame with additional pixels for the video editing menu. The display can’t be changed in the field. The iMac’s current USB-C/Thunderbolt interfaces can drive an external 4K display but not an external 5K display. Thunderbolt 3 does not quite have the bandwidth for the 20% larger display.

If you tend to hang on to a machine like I do, opting for the 5K display will give a longer service life. This was the one place where commenters had expressed regret, settling for the 4K display when working as a video producer.


Apple makes three versions 5K Retina iMac best identified by the graphics part used. The three models use the Radeon 570, Radeon 575, and Radeon 580. Reports are that the Radeon 580 chip gives the most crisp rendering experience with the 5K display. This shows up as a smoother control experience when using brushes and other direct manipulation tools in Adobe Lightroom or Phase One Capture One.

In the Radeon 580 variant, Apple ups the video memory from 4 GB to 8 GB. It is believed the bump in video memory is responsible for the improved interaction. The amount of video RAM cannot be changed in the field. I opted for the 5K 580 graphics hardware.


Apple offers Intel Core i5 and Core i7 processors in the iMac. Both processors have 4 execution units but differ in cache architecture (arcane) and availability of hyper threading. With 4 cores, these machines will be able to process network traffic, play music, send content to Air Play, etc without affecting user interaction. They are well quipped to “walk while chewing gum”.

Hyper threading

Intel hyper threading adds a second prefetch, decode, and execute queue to a core that allows it to work concurrently on two threads from a single process. A modern application has several threads. One is running the user interface event loop. This thread receives mouse and keyboard events that it dispatches for processing. Any graphical program will have this thread.

Depending on its purpose, a program may have additional work threads. For example, the simulation I worked on had 3 threads, one for the user interface, one that took simulation time steps, and a third that exchanged information with other simulation instances collaborating to run the problem.

As I understand it, hyper threading adds a second program counter (program status word) and user register set that supports the second thread but the two threads share the memory address mapping, cache, and processor execution units.

One CS lecturer used the example of one thread using the integer unit while the second used the floating point unit. If both threads needed the integer unit, they would be taking turns. This is not as bad as it sounds since the integer unit is pipelined and has several instructions in the works at once. Once you have multiple functional units, instruction reordering, and register renaming hardware in place, the second set of user registers and hyper threading logic produces a 10 to 30 percent performance gain for a smaller increase in the core’s complexity.

I opted for the i7 with hyper threading over the i5 without. Mostly because my Core 2 Duo mini was a dog rendering in iMovie. I felt I would keep the i7 machine longer and it would have a better second life when Apple finally removed OS update service. This choice made the 2 TB Fusion drive standard.



Most PC applications have relatively low disk I/O demands. Typical applications read the document into memory, operate on it there, and write it to disk in its entirety at save/close. There are two notable exceptions, software development and video rendering. Compiling and library updating using traditional Unix compilers tends to be a disk write intensive task. Video rendering is also disk write intensive.

The Radeon 570 and Radeon 575 iMac base storage is a 1 TB Fusion Drive. A Fusion Drive is a MacOS mashup of a regular 1 TB electromechanical disk (EMD) and a solid state disk 24 GB (SSD) at the operating system level. MacOS creates a single virtual volume from the two physical devices and migrates the most recently used files between the EMD and the SSD. Basically, the SDD behaves like a persistent buffer cache for the EMD. Things recently read or written are in the SDD and shadowed on the EMD.

Apple offers a 2 TB Fusion drive as base storage for the Radeon 580 iMac. This disk combines a 256 GB SSD and a 2 TB 7200 RPM EMD. The disk speed will make a difference for tasks that produce long streams of data to write to disk. As the application writes, data goes first to the buffer cache, then to the SSD and from there to the EMD. If the volume to be written exceeds the SSD free space, long sustained writes characteristic of video rendering will eventually drop into equilibrium with the EMD’s ability to put data away on disk.

Apple uses standard 3.5 inch disk drives and M.2 SSD modules but does not make them accessible for user replacement. iFixIt makes repair and upgrade kits available including the proper double sticky tape needed to close the iMac. Opening an iMac and replacing drives in the field is doable but be advised that working with the sticky tape is time-consuming and may be a bit tricky. Apple techs get lots of practice at this.

After fiddling around with the Radeon 580 5k Retina 27 inch iMac, I concluded that the standard 2 TB Fusion Drive would be adequate for my needs. This device is much bigger than the 512 GB SSD in my Mac Mini and the 256GB cache SSD was big enough that it would be a long time before I outgrew it.


Apple starts all configurations out with 8 GB of main memory. This is generally adequate for writing, drawing, and photo editing. Interestingly, Apple makes the memory accessible and field replaceable behind a trap door. I ordered the base memory and opted to add 16GB in the field should it be needed. That would give a total of 24 GB in the machine.

An Aside on SSD’s

SSD’s work their magic by eliminating rotational and seek delays but current NAND flash devices have finite but high write lifetimes. As the number of times a block has been written approaches the design life, the probability that it will fail goes up. The operating system should sense the error, mark the block bad, and write the data to a new block from the free pool. When enough blocks are bad, the disk will become unusable. I have not personally experienced an SSD failure so I can’t comment from first hand experience here as disk writes are low in my read-dominated disk workload.

This observation is important to video editors. SSD’s used for fast rendering should not be used for asset or product storage as the disk will eventually reach the end of its design life. Many video editors render to external SSD. Economics dictate the fastest sustained writing rates and replacing this device frequently is affordable for the professional video editor.


The Moocher Builds a New Server

Last week, I took the plunge and ordered bits and pieces to make a new FreeBSD based FreeNAS file server. This server consolidates Plex, my iTunes library, and Time Machine backups on a new ZFS ZRAID2 volume. I made this move for several reasons.

  • I was double maintaining my media library, once in iTunes and again to update the Shield TV external disk
  • My Drobo directly attached storage is about 10 years old. It had FireWire and USB2 interfaces and no network interface making it unfriendly to modern computers without these interfaces.

After a lot of review of the usual suspects in the market place, I was unconvinced that they were sufficiently robust to prevent bit rot. Most were built on Linux, Linux software RAID, ant the EXT4 file system. NetGear Ready NAS uses Linux with the BTRFS making it a bit more robust but was not comfortable with a Netgear solution as it I was unsure if the entire product line used BTRFS or if current products were a mix of BTRFS and EXT4. I also wanted the freedom to run other applications such as audio recording in the future, something an appliance would probably not allow.

This article describes the component selection, commissioning, and software configuration. The references give the detailed procedures used and these procedures were correct and complete. The only disappointment was that UniFi NVR does not play on FreeBSD and I elected not to install a supported OS in a jail. Ubiquity distributes the packages directly rather than through the normal distribution work flows and services. At this point, they are a year behind the community and have yet to release a Win 10 version.

In a future article, I’ll describe how I use ZFS snapshots to give some protection against user filesystem encryption malware.

Continue reading The Moocher Builds a New Server

Hi Crash and Nick are Half-Brothers

Back in the winter, I kept a friend’s greyhound while she was on holiday. Crash joined Nick and Missy as their guest. Crash was a perfect gentleman with impeccable manners in the house, in the garden, and on lead. After all, he’s a US racing greyhound and they’re indeed special.

Hi, I’m Crash

Crash enjoyed his stay with us. He and Missy had several epic chase sessions in the back garden. Missy was overjoyed to have a bouncy boy about her own age for play. Nick, he’s 11 and acting positively senior.

I’m Lord Nick

Continue reading Hi Crash and Nick are Half-Brothers

Is there a real camera in your future?

Recently, a friend asked her social media peeps for camera recommendations for a first camera that is not a point and shoot. Her expected uses are garden macrophotography, the occasional photo of the moon, and urban/country trekking photography, including wildlife photography (BellaBob?). And of course, photographing her photogenic dogs when a phone camera just won’t do.

Since I was last in the marketplace, the players have changed somewhat. Several have introduced innovative product lines and new product types. Several manufacturers now make mirrorless advanced cameras. Some are styled to mimic the rangefinder cameras of old and others to mimic single lens reflex cameras. All have an eye to camera view finder. Two things distinguish an enthusiast camera from a point and shoot, the view finder, and the shutter lag.

Rather than try to survey the market, this article will inform you of important camera design considerations and the way in which they influence a purchasing decision. After reading this article, considering how you might use an advanced camera, and consideration of personal characteristics such as hand size, vision, and fiscal health, you can venture forth into the market place. I suggest that you handle each camera and take some snapshots with it on a memory card that you bring along. This will give you a feeling for the view finder, menus, and control layout that you won’t get from reading Amazon reviews. And keep your friendly shop keeper in business by buying local rather than ordering.

Continue reading Is there a real camera in your future?

New WiFi for Chaos Manor

Apple has left the home WiFi market. Airport Express and Airport Extreme products are discontinued and the work group that was maintaining the device firmware was dispersed to other Apple work groups. One of the attractions of Apple Airport is that Apple announced device firmware updates in the same way as other software updates. The App Store applied the update and life was good. I had been spoiled since I bought my first Airport Express back in 2002 or 2003.

Revision history

  1. Revised to describe IPV6 configuration. It appears auto does not configure IPV6.
  2. Added references.

Continue reading New WiFi for Chaos Manor

Network Attached Storage

The Moocher operated his home network with host attached storage for a number of years. Two Drobo storage arrays provide storage for media and serve as a Time Machine spool volume. These machines have served well but are running into age-related limitations. It is time to consider replacing them in the near future.

IXsystems FreeNAS-mini storage array

Revision History

  1. 12/28/2016: Add references, revise summary of commercial products, revise home-brew discussion to reflect actual costs after actually adding them up.

Continue reading Network Attached Storage

nVidia Shield TV First Impressions

A few days ago, I wrote about setting up an nVidia Sheild TV set top box and configuring Plex Media Server on it. Now that I’ve had a chance to live with it for a few days, I thought it would be appropriate to share my first impressions of this piece of kit.

Left to right: game controller, media player remote control, pedestal and computer.
nVidia Sheild Android TV Components

Why nVidia Shield?

  • It runs Plex Server! It’s that simple.
  • And it is the most expansive walled garden.
  • And it is hackable with nVidia folk spilling the beans on the nVidia Shield developer forums
  • It is cheap enough to buy one to experiment on.
  • It is capable enough to use for other appliance tasks about the Moocher’s cave.

Continue reading nVidia Shield TV First Impressions

New Kid On the Block

For some time I’ve been wanting to move media serving off of my Mac Mini because the design of the available servers requires the machine to be running and logged in which vastly increases its attack surface. I’d been looking for a number of alternatives, particularly one that was energy efficient, had a low footprint, and would be doing what it was designed to do. nVidia came to the rescue about a year ago with nVidia Shield TV, an Android TV. So I’ve allowed the Android camel into my tent.


  1. https://support.plex.tv/hc/en-us/articles/221099988-Setting-Up-and-Managing-Plex-Media-Server-on-NVIDIA-SHIELD retrieved 2 December 2017.
  2. https://shield.nvidia.com/support/nvidia-android-tv/faq/1
  3. http://www.practicallyefficient.com/2011/03/18/rsync-automator.html

Before you buy

Do two things. First, read the fine manual at [1]. Go through the FAQS at [2]. I didn’t include any video links as most are long on talk and low on information density. The links above will take you to the setup screens so you can review them.

You will need internet service. Shield has both WiFi and Ethernet interfaces built in. Both work well. If you have Ethernet available in your media cabinet, wired service works well. Shield just knows what to do. A wired interface speeds firmware updates. WiFi is adequate for media playback.

What’s in the box?

nVidia Shield TV System Components

The base kit consists of a game controller (left) and the Shield machine (right but just the fin part). The nice aluminum base and the nice aluminum Android TV remote are optional extras. The kit also includes a power adapter, HDMI cable, and USB cable for recharging controllers and remotes. And there is a quick start guide and all the warranty and compliance statements.

Continue reading New Kid On the Block

The trials and tribulations of the retired moocher lifestyle