Temporary suspension of comments
Due to an attack by a comment spammer, I regret that I have suspended commenting to posts here, for all who aren’t logged in.
I hope to resume them later, when the spammer has poked off to annoy someone else.
Due to an attack by a comment spammer, I regret that I have suspended commenting to posts here, for all who aren’t logged in.
I hope to resume them later, when the spammer has poked off to annoy someone else.
Since the dawn of civilisation in the cities of the Fertile Crescent in what’s now the Middle East, epidemics of infectious diseases have been a curse of those concentrations of people, as well as in armies. In classical times, both Athens and Rome were struck by epidemics of what’s likely to have been bubonic plague.
Michiel Sweerts’ painting of Plague in an Ancient City from about 1652-54 is believed to show Athens during one of these epidemics. The moribund and the dead litter the streets, and normal life has collapsed.
The pandemic known as the Black Death that started in about 1338 was different, though. Changing climate in the grasslands of Asia led to the movement of rodent populations into cities, and those rodents brought with them fleas carrying highly infectious diseases for humans, notably Yersinia pestis, the cause of bubonic plague.
Doubt has been cast that Boccaccio’s description of the Black Death in Florence was based on his personal experience, but few alive at the time could have escaped witnessing its deadly consequences. Much later, in the early nineteenth century, Luigi Sabatelli made this undated engraving to illustrate an edition of the Decameron, in The Plague of Florence in 1348.
Venice was particularly prone to outbreaks of plague, and developed procedures and establishments for coping with cases. In Tintoretto’s painting of Saint Roch Heals Plague Victims from 1559, those suffering from plague have been brought to this small chapel, where the saint is healing them. The dark room is already collecting a disarray of bodies, some seemingly close to death. Without the miraculous work of the saint, this would quickly have become the waiting room for hell. There were twenty-two outbreaks of plague recorded in Venice between 1361-1528, and a single epidemic in 1576-77 killed almost a third of its population.
Goya’s painting of a Plague Hospital from his disturbing series The Disasters of War (1808-10) shows management of an outbreak that occurred during the Peninsular War of 1808-14.
Arnold Böcklin reminds us that the spectre of death is never far away in The Plague, painted in 1898. This coincided with the late stage of a pandemic that had started in China in 1855, and in the last years of the century was circulating through different ports around the world, in Hong Kong in 1894, and Mumbai in 1896. That reached San Francisco in 1900-04.
As plague became less of a problem in the cities of Europe and North America in the nineteenth century, so other diseases took hold, including cholera, influenza and tuberculosis. Six pandemics of cholera swept cities across the world in the century from 1817. Spread largely in drinking water contaminated by human faeces, improvements in sanitation introduced by redevelopment of cities like London and Paris were decisive in bringing it under control.
Carlos Schwabe’s painting titled Crepuscule in the French original is more likely to refer to Dawn rather than dusk. This giant female figure of “dawn, shivering in her green and rose garment, was moving slowly along the deserted Seine”. This was an illustration for a 1900 edition of Les Fleurs du Mal (Flowers of Evil) by Charles Baudelaire.
Edvard Munch completed two versions of Hearse on the Potsdamer Platz in 1902. These depict a horse-drawn hearse in this famous square in the heart of Berlin. Amid its bright hues is the hearse, covered in a black pall, and drawn by a single black horse. Munch’s father was a doctor, and both his mother and older sister died of tuberculosis during the artist’s childhood in Oslo.
Finally, here’s a glimpse of one of the obsessions of the nineteenth century: the fear of being buried while still alive.
After his mother’s death, the eccentric artist Antoine Wiertz became increasingly obsessed with death. Premature Burial (1854) visits a not uncommon dread in the nineteenth century: that of being presumed dead, buried, then recovering to find yourself in a coffin.
This did happen, particularly during cholera epidemics, as indicated by the lettering on the opening coffin. The profound shock resulting from choleric dehydration could make the pulse and breathing so feeble as to escape detection; with hundreds or thousands of dead, many were dumped hurriedly into mass-produced coffins and so into mass graves. And a very few managed to survive.
Coffins were designed with bells which could be rung by a recovered person. Wiertz’s victim is left with the nightmare scenario of trying to make it back to the land of the living.
It has been a long time since I last compared performance between CPU cores in Intel and Apple silicon Macs. This article compares six in-core measures of CPU performance across four different models, two with Intel processors, an M3 Pro, and an M4 Pro.
If you’re interested in comparing performance across mixed code modelling that in common apps, then look no further than Geekbench. The purpose of my tests isn’t to replicate those, but to gain insight into the CPU cores themselves, when running tight number-crunching loops largely using their registers and accessing memory as little as possible. This set of tests lays emphasis on those run at low Quality of Service (QoS), thus on the E cores of Apple silicon chips. Although those run relatively little user code, they are responsible for much of the background processing performed by macOS, and can run threads at high QoS when there are no free P cores available, although they do that at higher frequencies to deliver better performance.
Testing was performed on four Macs:
Six test subroutines were used in a GUI harness, as described in many of my previous articles. Normally, those include tests I have coded in Arm Assembly language, but for cross-platform comparisons I rely on the following coded in Swift:
for
loops on Floats.simd_float4
calculation of the dot-product using simd_dot
in the Accelerate library.Source code for the last four is given in the appendix to this article.
Each test was run first in a single thread, then in four threads simultaneously. Loop throughput per second was calculated from the average time taken for each of the four threads to complete, and compared against the single thread to ensure it was representative. Results are expressed as percentages compared to test throughput at high QoS on the iMac Pro set at 100%. Thus a test result reported here as 200% indicates the cores being tested completed calculations in loops at twice the rate of those in the cores of the iMac Pro, so are ‘twice the speed’.
User threads are normally run at high QoS, so getting the best performance available from the CPU cores. In Apple silicon chips, those threads are run preferentially on P cores at high frequency, although that may not be at the core’s maximum. Results are charted below.
Each cluster of bars here shows loop throughput for one test relative to the iMac Pro’s 3.2 GHz 8-core Xeon processor at 100%. Pale blue and red bars are for the two Intel Macs, the M3 Pro is dark blue, and the M4 Pro green. The first three tests demonstrate what was expected, with an increase in performance in the M3 Pro, and even more in the M4 Pro to reach about 200%.
Results from vDSP matrix multiplication are different, with less of an increase in the M3 Pro, and a reduction in the M4 Pro. This may reflect issues in the code used in the Accelerate library. That contrasts with the huge increases in performance seen in the last two tests, rising to a peak of over 400% in BNNS matrix multiplication.
With that single exception, P cores in recent Apple silicon chips are out-performing Intel CPU cores by wider margins than can be accounted for in terms of frequency alone.
When expressed relative to loop throughput at high QoS, no clear trend emerges in Apple silicon chips. This reflects the differences in handling of threads run at low QoS: as the Intel CPUs used in Macs only have a single core type, they can only run low QoS threads at lower priority on the same cores. In Apple silicon chips, low QoS threads are run exclusively on E cores running at frequencies substantially lower than their maximum, for energy efficiency. This is reflected in the chart below.
In the Intel Xeon W of the iMac Pro, low QoS threads are run at a fairly uniform throughput of about 45% that of high QoS threads, and in the Intel Core i9 that percentage is even lower, at around 35%. Throughput in Apple silicon E cores is more variable, and in the case of the last test, the E cores in the M4 Pro reach 66% of the throughput of the Intel Xeon at high QoS. Thus, Apple appears to have chosen the frequencies used to run low QoS threads in the E cores to deliver the required economy rather than a set level of performance.
My apologies for omitting legends from the first version of the two charts, and thanks to @holabotaz for drawing my attention to that error, now corrected.
Some of our most popular furniture is primarily intended for storage and display. This article looks at paintings of cupboards, and their specialist relatives sideboards and (Welsh) dressers. Although of ancient origins, cupboards reached a peak during the Dutch Golden Age, when the middle classes became highly acquisitive. Dressers have been traditional in some areas, including Wales, and Brittany in France, while sideboards came of age in the nineteenth century dining room.
The cupboard standing behind Jean-Baptiste Greuze’s Laundress (1761) was commonplace in many European households, and is here in the dilapidated servants’ area, probably in a cellar, where this provocative and flirtaceous young maid is washing the household linen. This was painted for Greuze’s patron, Ange-Laurent de La Live de Jully, when the artist was enjoying great success at the Salon. His reputation faded after 1780, and he lost everything in the French Revolution, dying a pauper.
Edward Burne-Jones’ Cinderella from 1863 shows her reverted to her plain clothes after the ball, but still wearing one (the left) glass slipper. She is seen in a scullery or similar area, with a dull, patched, and grubby working dress and apron. Behind her is a densely packed display of blue crockery in the upper section of a large dresser.
A decade later in New York, the American genre artist Eastman Johnson painted an open narrative work that only makes any sense when you know its title of Not at Home (c 1873). This apparently shows the interior of the artist’s home, where there’s a small dresser in the parlour with a more modest display of plates and mementos.
Briton Rivière’s Cupboard Love, from 1881, is a visual and verbal pun. The phrase refers to affection in return for gain, shown well in the two dogs whose interest lies in the food which the young woman is about to produce from the heavy wooden cupboard behind them.
William Merritt Chase’s many paintings of his studio became something of a shop window for prospective customers. In his Studio Interior from about 1882, a fashionably dressed young woman is glancing through a huge bound collation of Chase’s work, sat by a grand carved wooden sideboard, decorated with almost outlandish objects including a model ship, a lute, and sundry objets d’art.
Some cupboards have highly specialised roles, such as that in Joaquín Sorolla’s Kissing the Relic from 1893. At the end of Mass in the church of Saint Paul in Valencia, close to Sorolla’s childhood home, the congregation have been invited to kiss a reliquary containing an alleged relic of a revered saint, drawn from the cupboard behind the priest.
Laurits Andersen Ring’s wife Sigrid sits reading the newspaper Politiken At Breakfast (1898), with a modern sideboard behind her. This houses a mixture of tableware and personal mementos rather than serving as a buffet.
Further north in Sweden, Carl Larsson’s wife Karin is Getting Ready for a Game (1901) as she prepares a tray of refreshments in her dining room. At the left is a tall glass-fronted display cabinet containing glassware, while at the right is a simple sideboard with separate shelving to display decorated crockery.
Free-standing cupboards are nothing compared to those you can walk into.
Félix Vallotton’s Woman Searching through a Cupboard (1901) uses its gloomy repoussoir to frame a woman crouching low over its contents. On the shelves above her are thick bundles of papers, such as those used in law and public administration.
A couple of years later, in his Interior, Woman in Blue Searching in a Cupboard (1903), Vallotton painted his wife Gabrielle from behind as she stood searching in a free-standing cupboard of books.
Elizabeth Nourse’s painting of a Breton Interior from about 1907 shows a well-stocked dresser beside this young girl’s bed. As dressers were unusual in bedrooms, this combination suggests the family home is very cramped, and the child has to sleep in the same room as the family eats.
In case you missed it, Apple has just announced that a “future version of macOS” will no longer support AFP, Apple Filing Protocol. This is included in the Enterprise release notes for macOS 15.5 Sequoia. This article looks at how that could affect those using network backups and shares, to Time Capsules, NAS and other Macs running old versions of macOS.
Network storage requires network file-sharing protocols like AFP and SMB to perform file transactions using packets transmitted over the network. AFP is one of the oldest, and originated in AppleShare back in Classic Mac OS System 6, in 1988. Version 3.0 was introduced in Mac OS X Server 10.0.3 Cheetah in 2001, and the latest is 3.4, from OS X 10.8 Mountain Lion in 2012. Because of its early popularity in Macs, it has long been available in third-party implementations including the open source Netatalk, and those have been widely included in NAS system software.
In OS X 10.9 Mavericks, Apple made SMB (Server Message Block) its primary file-sharing protocol, and AFP has been in decline ever since. When APFS was introduced in High Sierra, it wasn’t supported by AFP and has required SMB, although Time Machine backups have continued to work over AFP through their use of sparse bundles. Earlier versions of SMB haven’t worked particularly well with macOS, but in recent years SMB version 3 has improved substantially, and should be supported by all recent NAS systems.
Greatest problems come with Apple’s old Time Capsules, most of which are still used with AFP, as they can only support SMB version 1, not versions 2 or 3. If you’re still using a Time Capsule, or an old NAS that doesn’t support SMB version 3, then access to your network storage may well still be reliant on AFP.
Apple hasn’t announced when AFP will no longer be supported, and when it does, it won’t apply retrospectively. This makes it almost certain that Macs running macOS Sequoia will be able to continue using AFP if they are currently doing so.
Given the timing of this announcement, it seems most likely that AFP will be dropped from macOS 16, to be announced early next month at WWDC and released this coming autumn/fall. If your Mac can’t or won’t be upgraded to macOS 16, then it shouldn’t lose AFP.
Apple discontinued its last Time Capsule model in April 2018, just over seven years ago. If yours is still using its original hard disk, then it’s living on borrowed time, and needs replacement sooner rather than later. If you have recently installed a new hard disk inside an old Time Capsule, then this might be a good time to rehouse that disk in a more modern NAS or other enclosure if you want to continue to use it.
I’m regularly asked to suggest a suitable replacement for Time Capsules, incorporating both their Wi-Fi base station and NAS features. Although there are some products that come close, you’re better off separating those two functions, and getting a good NAS with Mac and SMB 3 support, and a separate Wi-Fi base station or router with support for the latest standards.
For other NAS, first check whether you can update its system software to a current version. If you can, that should give it a new lease of life, and full support for your Mac to run SMB 3 to it. If it’s no longer supported, then this is the best time to consider replacing it, or even moving to backing up to local storage instead.
Macs are now well-supported by most NAS manufacturers, among which my favourite is Asustor, whose products I regularly test and review. Together with other established products from Synology and QNAP, you shouldn’t go far wrong.
Parrots, parakeets, cockatoos and the humble budgerigar (a small parakeet) have long been popular domestic pets in Europe, and are featured in many paintings. In this second look at a selection of paintings including these birds, I start with still lifes from the Dutch Golden Age.
From the days of the Northern Renaissance, artists in the Low Countries had pursued the accurate depiction of optical effects in their paintings. Pieter Boel’s Still Life with a Globe and a Parrot from about 1658 continues that tradition, with its outstanding three-dimensional effects in the plate and goblet in the foreground.
The globe shows the Pacific Ocean and the north-west coast of America, with the ‘Dutch’ East Indies at its left edge. The bas-relief plate shows a scene from mythology, in which male and female deities are riding in a chariot. The two porcelain bowls at the far right appear Chinese, and there’s a white parrot or cockatoo, together with a small dog at the bottom left corner.
After Hungaro-British painter Jakob Bogdani (1658–1724) moved to London via Amsterdam in 1688, he painted several works featuring animals and birds. Those included Capuchin squirrel monkey, two guinea pigs, a blue tit and an Amazon Saint Vincent parrot with Peaches, Figs and Pears in a landscape towards the end of his career, in 1710-20.
Johann Amandus Winck’s Still life with a Parrot, Game Fowl, Guinea Pigs and Fruit must have been painted in the late eighteenth century.
Parrots also appear in some more curious contexts.
Painters have long been attracted to the spectacle of humans who look different. In Agostino Carracci’s case, he combined three strange examples in his Hairy Harry, Mad Peter and Tiny Amon, completed between 1598-1600, not long before his death. From the left are Tiny Amon (Rodomonte) the dwarf, Arrigo Gonzalez the hirsute (Hairy Harry) from the Canary Islands, and Mad Peter (Pietro the buffoon). Accompanying them are a large parrot, a couple of dogs, and two monkeys.
Since then, parrots and their relatives have continued to appear sporadically in paintings.
In 1876, Frank Duveneck and William Merritt Chase painted a young boy carefully posed with a parrot, in Chase’s Munich studio. Duveneck’s The Turkish Page, above, is technically brilliant, and an ambitious work for someone within seven years of starting their training. It was exhibited at the National Academy of Design in New York the following year, but had a mixed response. Viewers found its still life approach lost narrative, and were puzzled by the depiction of the child. By the time it was displayed at the Pennsylvania Academy in its 1893-4 exhibition, changing taste brought it acclaim, and it sold.
Chase’s version, below, was surprisingly different in many respects. I leave it to you to decide which you prefer, although I think the parrot seems happy with both.
Henry Tonks’ Summer (1908) is a dazzlingly rich and intricate view of the garden at Arfleet, near Corfe Castle, Dorset, England. Using a real mother and her son as models, the boy’s rocking horse and a cockatoo are unusual objects to see in an English garden in summer.
The expatriate New Zealand artist Frances Hodgkins painted Wings over Water during the winter of 1931-32. It shows a view from her rooms in Bodinnick, Cornwall. Carefully placed in the foreground is a still life consisting of three large seashells with floral and plant arrangements. Sitting on the fence in the middle of the view is her landlady’s parrot, beyond which is the expanse of the nearby River Fowey.
Finally, for Pierre Bonnard parrots came by chance. His Woman with Parrot is set in le Midi in 1910, with intensely bright and hot colours, against which the large blue parrot, some pots, and foliage make contrast. This was painted in Saint Tropez during Bonnard’s visit in September that year, and was based on an experience that the artist wrote about in a letter to his mother, in which he had passed a young dark-haired girl with an enormous blue parrot. As you do.
Apple pre-releases some of the components for the next major version of macOS in the previous version. For example, when macOS Monterey 12.3 was released on 14 March 2022, a new XProtect.app bundle appeared in /Library/Apple/System/Library/CoreServices, and passed almost unnoticed until it was updated to version 2 in macOS 12.4 on 16 May 2022. By June that was being updated frequently, and is now a significant part of macOS protection against malware.
This article looks back at versions of Sequoia that have brought new components to identify those we might see more of next month, when the first betas of macOS 16 reach developers.
One new feature that Apple has already made available in macOS 15.4 and later is privacy control of access to the pasteboard, described here. It’s likely that a new Pasteboard item will be added to Privacy & Security settings in macOS 16, allowing you a choice between:
This appears complicated, and I expect may need simplification during beta-testing, or users could be baffled. Apple’s note details a default setting you can use to preview this behaviour in macOS 15.5 for individual apps in testing.
To celebrate the 40th birthday of its accessibility support, Apple has announced some new features we can expect in macOS 16. Among them is a Magnifier app that will use an iPhone running iOS 19 through Continuity Camera as a live video magnifier. Others include:
macOS 15.5 introduces a new app in CoreServices named Apple Diagnostics. This is currently non-functional, but appears to give access to some form of online diagnostic service in the future.
Three kernel extensions to watch for in macOS 16 are:
Two were added to 15.4, and remain at version 1.0, for CLLogEntry which appears to be part of Core Location, and SecurityUI which hasn’t yet been mentioned anywhere.
Many new private frameworks have been added by updates to Sequoia. Although most of these remain at their initial build of 1.0, some have seen surprising increases, including:
Among the new private frameworks with intriguing names that remain at their initial version are: Bosporus, Morpheus and MorpheusExtensions, an OnDeviceStorage group, and most recently CodableSwiftUI.
Your guess is no doubt better than mine as to what these all do, but I expect some of them will appear in macOS 16, in one guise or another.
Apple has just released an update to XProtect for all supported versions of macOS, bringing it to version 5297. As usual, Apple doesn’t release information about what security issues this update might add or change.
This version adds a single new rule for MACOS.SOMA.L.
You can check whether this update has been installed by opening System Information via About This Mac, and selecting the Installations item under Software.
A full listing of security data file versions is given by SilentKnight, LockRattler and SystHist for El Capitan to Sequoia available from their product page. If your Mac hasn’t yet installed this update, you can force it using SilentKnight, LockRattler, or at the command line.
If you want to install this as a named update in SilentKnight, its label is XProtectPlistConfigData_10_15-5297
.
This update has now been released for Sequoia via iCloud, as of 1930 GMT. If you want to check it manually, use the Terminal commandsudo xprotect check
then enter your admin password. If that returns version 5297 but your Mac still reports an older version is installed, you may be able to force the update usingsudo xprotect update
I have updated the reference pages here which are accessed directly from LockRattler 4.2 and later using its Check blog button.
Updated 1940 GMT 13 May 2025
Parrots, parakeets, cockatoos and the humble budgerigar (a small parakeet) have long been popular domestic pets in Europe, and haven’t escaped the attention of artists. According to Richard Verdi, who has written a monograph on the subject, they appear in many paintings, often being symbols of the Virgin birth of Christ, or witnesses of the Fall of Man. In this week’s two articles considering the reading of paintings, I show a selection of works featuring these birds in different roles.
Parrots have been added to mythological paintings to supplement their original story.
In Tintoretto’s Leda and the Swan, from about 1578-83, there are two caged birds, a duck being taunted by a cat in the left foreground, and a parrot in the background. These allude to one of the most bizarre of Jupiter’s many rapes of mortal women, here in the form of a swan, resulting in his victim Leda laying eggs.
Tiepolo’s magnificent Death of Hyacinthus from about 1752-53 was inspired by an Italian translation of Ovid’s Metamorphoses from 1561, where the fatal discus is replaced by what looks like a tennis ball, actually taken from the popular game of pallacorda. This classical story is told in the right foreground, with the pale Hyacinthus visibly bruised on his cheek, Apollo swooning above him, and Cupid to the right. Above that group is a grinning Pan in the form of a Herm, and at the top right a brightly coloured parrot, who appears oddly out of place.
Peter Paul Rubens’ version of The Fall of Man painted in 1628-29 changes Titian’s original depiction of Adam and adds a parrot as witness to Eve taking the apple from the serpent with a child’s head and body.
Alfred Stevens was an early enthusiast for Japonisme as it swept Paris, and provided insights into his life in his Psyché or My Studio from about 1871. The French word psyché refers to the full-length mirror seen in this apparently informal view of Stevens’ studio, the name deriving from the legend of Cupid and Psyche. For this painting, Stevens doesn’t use a genuine psyché, but has mounted a large mirror on his easel, suggesting that art is a reflection of life. A Japanese silk garment is draped over the mirror to limit its view to the model, and breaks up her form in an unnatural way. At the lower right, the artist indicates his presence with a cigarette, and there’s a small parrot who might imitate his speech.
The association between parrots and beautiful women has a long history.
Tintoretto’s Summer (c 1546) poses a reclining Titianesque nude before she removed her clothes against the summer harvest ripening behind her. She is joined by three birds, one an exotic parrot, with flowers of the dog rose, and hanging bunches of grapes.
In 1858, a popular translation of tales in Persian by Ṭūṭī-nāma of Żiyā’ al-Dīn Naḫšabī, who died around 751/1350-51, was published in Britain. Valentine Cameron Prinsep’s Lady of the Tooti-Nameh, or The Legend of the Parrot (c 1865) refers to that book, and was first exhibited at the Royal Academy in 1865, where it must have caused quite a sensation with its fleshly glimpses inside the woman’s blouse. The parrot perched on her hand is a hint of the exotic, but couldn’t have anticipated the painting shown by Gustave Courbet in the Paris Salon the following year.
Courbet’s model for his erotically charged Woman with a Parrot from 1866 was Joanna Hiffernan. The structure behind and to the right is a perch and feeder for the bird. This inevitably brought scandal, but didn’t deter others from painting pretty women with parrots. Édouard Manet’s A Young Lady in 1866, nicknamed Woman with a Parrot, was shown at the Salon two years later, and Auguste Renoir’s Woman with Parakeet followed in 1871, although at least their models were decently dressed.
Henry Tonks’ early portrait of A Girl with a Parrot from about 1893 provides an intimate glimpse into the private world of a young girl.
A brilliant green parakeet with its bright red bill adds colour to John William Godward’s Dolce Far Niente from 1897.
Painted late in his career, Émile Friant’s The Birds (1921) is a brilliantly colourful and detailed erotic fantasy demonstrating his great technical skills, but has drifted far from his earlier Naturalism and social concerns.
APFS has several ways of creating copies or links to files that can be confused. These are:
Symlinks and Finder aliases are easy to distinguish, as their icons have an arrow superimposed, and Get Info tells you they’re an Alias. While symlinks take almost no space at all, Finder aliases take a bit more. But at first sight, copies, clones and hard links all look identical. This article explores how you can tell them apart without resorting to Terminal’s command line.
First, a warning of a longstanding problem in the Finder: it can’t tell them apart, and can’t account correctly for the space they take on disk. To see what I mean, create a folder and a chunky file inside it, which I’ll call MyBigFile.tiff. In Terminal, create five hard links to it, numbered 2-5, using commands likeln MyBigFile.tiff MyBigFile2.tiff
Then for good measure, clone MyBigFile.tiff twice by duplicating it in the Finder to create MyBigFileclone.tiff and MyBigFileclone2.tiff.
Select all seven files, and press Control-Command-I or Option-Command-I to Get Info on multiple items, and you’ll see the Finder thinks each of those seven files takes the same space on disk, in my case totalling 70 GB, even though we know that there’s only 10 GB of data stored between them. This has been a persistent shortcoming in the Finder since long before the introduction of APFS, and applies to both clone files and hard links.
When we make a conventional copy of a file, a new inode is created for it, and each of the items that make up that file are copied, including the data stored in its file extents. This requires the same amount of additional disk space as used by the original file, as there’s nothing in common between the two files.
Instead of duplicating everything, only the inode and its attributes (blue and pink) are duplicated to create a clone file, together with their file extent information. You can verify this by inspecting the numbers of those inodes, as they’re different, and information in the attributes such as the file’s name will also be different. There’s a flag in the file’s attributes to indicate that cloning has taken place.
In hard links, exactly the same file is accessed through two different file paths. Although other file systems may handle this differently, according to Apple’s reference to APFS, this is how it handles hard links.
When you create a hard link to a file (blue), APFS creates two siblings (purple) with their own IDs and links, including different paths and names as appropriate. Those don’t replace the original inode, and there remains a single file object for the whole of that hardlinked file. Inode attributes keep a count of the number of links they have to siblings in their link (or reference) count. Normally, when a file has no hard links that’s one, and there are no sibling files. When a file is to be deleted, if its link count is only 1, the file and all its associated components can be removed, subject to the requirements of any clones and applicable snapshots. If the link count is greater than 1, then only the sibling being removed is deleted.
As the Finder can’t tell us which are hard links and which are clone files, we can resort to a utility like my free Precize. Drop the file onto its app icon, and these are what you should see.
This is the original file, which has now got four hard links and has two clones as well. If you drop any of those hard links onto Precize, you’ll see they’re the same file, with the same inode number given at the top in the volfs path and FileRefURL, in this case 8513451. Look at the bottom, and their Ref count is given as 5, because all five are hardlinked together to the same file. Because we’ve also cloned this file, the Clone checkbox at the bottom is ticked.
This is one of the two clone files made from that original. Because this is a different file that just happens to point to the same data, it has a different inode number in the volfs path and FileRefURL. Its Clone checkbox is ticked, as it is a clone, but it only has a single Ref count, as none of the hard links point to this clone file.
The same goes for the second clone, with its own inode number, ticked as a Clone, and single Ref count.
The final question you might ask is whether files are identical. In the case of hard links, the answer is simple: as they’re the same file in disguise, yes, they are absolutely identical.
Clones require a bit more work, as they will continue to be shown as clones even though their contents may be quite different by then. The best answer is to compute the SHA-256 hash of the file’s data, and compare that between two clones. If you’re interested in any of their metadata contained in their extended attributes, then you’ll need to check those as well.
The update to macOS Sequoia 15.5 is likely to be the last to include remaining enhancements and fixes before engineers are more committed to the beta-releases of macOS 16.0 from early June onwards. It’s therefore unfortunate that Apple chose to provide only limited information about what it addresses.
Correlating the general release notes with those for Enterprise results in a short list of:
Most important for many is that AFP is now deprecated and “will be removed in a future version of macOS”, according to notes for Enterprise.
Security release notes for Sequoia 15.5 are here, and list 46 vulnerabilities fixed, none of which are believed to have been exploited already. Eight of those vulnerabilities are in WebKit.
The macOS build number is 24F74. Firmware in Apple silicon Macs is updated to iBoot version 11881.121.1, while that in T2 Macs is updated to 2075.120.2.0.0 (iBridge 22.16.15072.0.0,0).
Version changes seen in bundled applications include:
Those in /System/Library are more extensive, and include:
The new Apple Diagnostics app looks particularly interesting, but appears to attempt a remote connection that is denied, so reports the error and does nothing else.
Overall, this appears to be a substantial update with many fixes included. It’s a pity that Apple hasn’t been prepared to tell us more in its haste to move on to 16.0.
Apple has just released the update to macOS Sequoia to bring it to version 15.5, and security updates for 14.7.6 and 13.7.6.
The Sequoia update for Apple silicon Macs is just under 3 GB in size, and just over 2 GB for Intel Macs.
Apple’s general release notes for Sequoia 15.5 only mention one new feature, that parents now receive a notification from a child’s device when its Screen Time passcode is used. Otherwise, it’s the usual “enhancements, bug fixes, and security updates”.
Security release notes for Sequoia 15.5 are here, and list 46 vulnerabilities fixed, none of which are reported as believed to have been exploited already. Those for 14.7.6 are here, and for 13.7.6 are here.
One important entry in the Enterprise release notes concerns the future of AFP: “Apple Filing Protocol (AFP) client is deprecated and will be removed in a future version of macOS.” I can hear the howls of anguish already.
Developer release notes claim three bugs are fixed:
The macOS build number is 24F74. Firmware in Apple silicon Macs is updated to iBoot version 11881.121.1, while that in T2 Macs is updated to 2075.120.2.0.0 (iBridge 22.16.15072.0.0,0).
Safari is updated to version 18.5 (20621.2.5.11.8), and there are 8 security bugs fixed in WebKit (15.5).
Last updated at 1845 GMT 12 May 2025.
After the delightful tale of Vertumnus and Pomona, King Proca dies, and Ovid’s narrative rushes through the founding of Rome by Romulus, so bringing Book 14 of his Metamorphoses to a close.
Ovid tells us that the walls of the city of Rome were founded on the feast day of Pales, 21 April.
Romulus yoked a plough with a bronze ploughshare to a bull and a cow, and drove a deep furrow around the city’s boundary. This is shown in Annibale Carracci’s fresco in the Palazzo Magnani of Romulus Traces the Boundaries of Rome (1589-92). The bronze ploughshare is at the left, being fixed to a wheeled plough, with Romulus at the right, ready to lead the bull and cow around the boundary.
Next Ovid mentions war with the Sabines led by Tatius, and the Vestal Virgin Tarpeia’s infamous betrayal of the citadel itself. The intruders entered through a gate unlocked by Juno, which Venus couldn’t secure because gods aren’t allowed to undo what other gods have done.
Naiads living next to the shrine of Janus tried to block the intrusion by flooding their spring, but the torrent of water sent down to the open gate didn’t help. So they put sulphur under the spring, and turned it into a river of smoking, molten tar, holding the intruders back until Romulus was able to attack. After a bloody battle, the Romans and Sabines agreed peace, but their king Tatius died (in a riot at Lavinium) and Romulus thus came to rule over both peoples.
Even in Ovid’s time, war with the Sabines and the rape of the Sabine women were controversial, and not a subject that his Metamorphoses dwelt on.
Jacques-Louis David’s The Intervention of the Sabine Women (1799) is unusual among depictions of the episode of the Sabine women in showing its resolution, rather than the seizure of the women that brought the conflict about.
After the overwhelmingly male population of the nascent city of Rome had seized the wives and daughters of their neighbours the Sabines, the two groups of men proceeded to fight. David shows Roman and Sabine men joined in battle before the great walls of Rome, with the Sabine women and their children mixed in, trying to restore peace. Looming over the city is the rugged Tarpeian Rock, from which traitors and other enemies of Rome were thrown. Named in dishonour of the treacherous Tarpeia, she wasn’t its first victim: she was crushed to death by the shields of the Sabines she had let into the citadel, and is reputed to have been buried in the rock.
Highlighted in her brilliant white robes in the foreground, and separating two of the warriors, is the daughter of the Sabine king Tatius, Hersilia, whom Romulus married. The warriors are, of course, her father and her husband, and the infants strategically placed by a nurse between the men are the children of Romulus.
David started this painting when he was imprisoned following his involvement in the French Revolution. He intended it to honour his estranged wife, who had continued to visit him during his incarceration, and to make the case for reconciliation as the resolution of conflict.
Guercino’s Hersilia Separating Romulus and Tatius (1645) concentrates on the three figures of Tatius, Hersilia, and Romulus, and tucks the rest of the battle away in the distance behind them.
The time came for Romulus to hand on the new Roman state to his successor; Mars therefore called a council of the gods, and proposed that the founder of Rome should be transformed into a god, which Jupiter approved. With that Mars descended to the Palatine hill in Rome, where he found Romulus laying down laws for the city. The body of Romulus dissolved into thin air and he was carried up to the heavens to become the Roman god Quirinus.
Only Jean-Baptiste Nattier painted the apotheosis of the founder of Rome, in his Romulus being taken up to Olympus by Mars from about 1700. Mars is embracing Romulus, with the standard of Rome being borne at the lower left, and the divine chariot ready to take Romulus up to the upper right corner, where the rest of the gods await him.
When his queen Hersilia mourned the loss of Romulus, Juno sent Iris to invite her to join her husband. Hersilia then rose with a star to become the goddess Hora. This sets the stage for the opening of the fifteenth and final book of Ovid’s Metamorphoses.
I hope that you enjoyed Saturday’s Mac Riddles, episode 307. Here are my solutions to them.
Workshop (a studio) exhibition (a display) with thunder and lightning from the A13 (it contains an Apple A13 Bionic chip with CPU cores named Thunder and Lightning) in 68.58 cm (27 inches).
First person (I) seed vessel (a pod) contact (touch) takes music wherever (it does). (The first model came with a Samsung S5L8900 ARM SoC.)
Notes (in a pad) of brief communication (a message) from a pioneering mathematician (Sir Isaac Newton). (It came with an ARM 610 processor running at 20 MHz.)
They have all used ARM processors.
I look forward to your putting alternative cases.
I’ll be the first to admit that I’m sceptical of AI, and seldom use ChatGPT or Writing Tools. One of the conditions imposed by the magazines that I write for is that none of my contributions use AI in any way, either to research topics or to manipulate the text. Besides, I’d far rather all the mistakes I make are mine, and not introduced by AI. But I am impressed by Writing Tools, and think you might find them useful when trying to extract information from and understand the log, when using LogUI.
I’m therefore delighted to announce a new build of LogUI that gives access to summarisation features in Writing Tools to analyse and clarify log entries.
Most obviously, this build reworks the interface by promoting the button commands to its toolbar. From the left, these are:
Following those is the popup menu to select the field to be used for search, and at the right end the Search box itself.
A more subtle change is aimed at making it less confusing when using multiple windows and search criteria on log extracts from the same time. The title shown in each window now appends any search term in use. That’s shown in the window, and in the Window menu, but isn’t included in the default file name if you save the extract in Rich Text.
Currently, LogUI supports two ways of moving log extracts to other apps: you can save the whole extract as a formatted Rich Text file, or copy the most important fields in selected entries as text. Build 46 adds a third as the bridge to Writing Tools, in what I term a gloss. This is generally used for words added to a text, either in between its lines or in the margin, that explain words in the main body of that text, and can be gathered together in a glossary. In LogUI this functions as a special pasteboard and plain text editor, the Gloss window.
The message field of some log entries is very large, containing a lot of information some of which may be of importance. The example I use here gives the registration details of an app being launched through RunningBoard. To copy those into a Gloss, select that log entry and click on the Gloss button in the toolbar. The contents of the selected message field(s) are then displayed in the Gloss window, a basic text editor, where you can manually format them if you wish, copy and paste the contents into a text document in another app. This works fully on all Macs running macOS 14.6 or later.
As this window contains a SwiftUI TextEditor view, you can also use Writing Tools on any selection you make within its text (Apple silicon Macs only). Select all using Command-A, hover the pointer over the selected text and you’ll see the Writing Tools blue button appear to the left of the window. Click on that, or use the contextual menu on the selected text, and you can now apply any of those Writing Tools to the contents.
If you try to use a Writing Tool that can’t cope with the text contents, you’ll see the error Writing Tools Unavailable.
In that case, open the contextual menu and try a different tool that can cope. Some log messages don’t contain much English, and in those cases Writing Tools might try another language such as German before reporting that the language isn’t recognised or supported.
Text in that Gloss window persists, and is saved into LogUI’s preferences. Only one Gloss window is available, and it contains the text from those entries selected the last time you clicked on the Gloss button. When you do that, the new gloss replaces the old. If you want to save the previous gloss, copy and paste it before clicking on the Gloss button.
Writing Tools can’t interpret log entries or diagnose problems from the log, but its summaries can make complex lists more comprehensible, and sometimes provide additional information that can be helpful. Always check its output against the original, as it can make mistakes.
To illustrate how this might help, here are examples taken from an original RunningBoard registration for the Pages app, starting'app<application.com.apple.iWork.Pages.6871230.6871236(501)>' Constructed job description:
<dictionary: 0x910d117a0> { count = 23, transaction: 0, voucher = 0x0, contents =
"Platform" => <int64: 0x94ab1b6b9872cd77>: 1
"ProcessType" => <string: 0x910c2dc20> { length = 3, contents = "App" }
"EnableTransactions" => <bool: 0x1fb02aba0>: false
and running on for many more lines after those.
Writing Tools’ Summary reads:
The job description for the Pages application is provided. It includes details about the platform, process type, environment variables, and more. The description also specifies the program arguments and the path to the Pages executable.
Key Points start:
List starts:
I think the first item there is a minor misreading, as I would understand that the text reports that a job description has been constructed for the application, not that the application is somehow constructed. However, other items listed appear to be faithful to the contents of the original message.
In some cases I have seen Writing Tools spell out an abbreviation, and in most it lays out the contents of long lists and dictionaries more accessibly. Try it out and see what you think.
LogUI 1.0 build 46 is now available from here: logui146
and from its Product Page.
Enjoy!
From the opening to the public of the Museo Nacional del Prado in November 1819, it has drawn a steady succession of aspiring painters to Madrid to study the works of Hieronymus Bosch, El Greco, Peter Paul Rubens, Titian, Diego Velázquez, Francisco Goya, and others. This weekend I show a small selection of landscape paintings made of the interior of Spain by visitors and natives, and in this second article have reached the start of the twentieth century.
The founder of the School of Fine Arts at Yale University, John Ferguson Weir, had studied in Europe, and his brother Julian Alden Weir was a student at the École des Beaux-Arts in Paris. Later in his career, John Ferguson Weir returned to Europe on several trips, and in about 1901 painted this fine view of The Alhambra, Granada, Spain.
As far as I can tell, Laurits Tuxen was the first Danish artist to paint a View of the Alhambra. He did so in 1902, the year after marrying his second wife. He was one of the leading members of the Skagen painters, Nordic Impressionists, and completed this en plein air on 4 May, in wonderfully fine weather.
James Dickson Innes, a painter from Wales who was a member of the Camden Town Group, visited Spain in 1912-13, where he painted this Spanish Landscape in oils on a wood panel.
Innes had a particular affection for dusk, as seen in his Deep Twilight, Pyrenees, painted in 1912-13.
Muñoz Degrain’s view of the Alhambra from Albaicin District is remarkable for the rhythm established by the poplar trees around its base, which become an integral part of the fortified ridge.
His View of the Alhambra is one of my favourite paintings of this motif, for its intriguing foreground details, and the poplars lit as white-hot pokers in the fiery light of sunset.
Joaquín Sorolla, best known for his figurative works, also painted fine landscapes. This undated view of Albaicin looks down from one of the Alhambra’s towers at the bleached white buildings below.
In 1917, when he was exhausted after completing fourteen large murals for the Hispanic Society of America building in Manhattan, Sorolla recovered by painting landscapes. In his Sierra Nevada, Granada, the mountains dominate, with patches of cloud adding uncertainty to their forms.
This canvas by the Spanish artist Enrique Simonet shows a thoroughly Spanish motif: Autumn in the Dehesa, a type of landscape characteristic of southern and central Spain and Portugal, where it’s known as montado. This is a traditional mixed, multifunctional environment providing grazing for cattle, goats, sheep and pigs, mixed trees centred on oaks, and support for many endangered species such as the Iberian lynx and Spanish imperial eagle.
Simonet’s La Moncloa Landscape from 1918-20 shows another rural area, with its ancient woodland and open plains. There may also be a pun intended, as the term La Moncloa can be used to refer to the central government of Spain.
Most of Simonet’s later paintings, such as Reflections on the River (1918-23), are pure landscapes.
During 1921-22, Simonet was director of landscape painting courses held in El Paular, to the north-west of Madrid. There he painted some of the finest of these late works, such as his El Paular Landscape from 1921.
His Hiruela Waterfall (1921-23) is set in dense woodland to the north of Madrid.
Around 1920, the Japanese artist Torajirō Kojima appears to have visited Spain, where he painted the Alhambra, and this wonderful view of a mountainous Landscape in Spain スペインの風景.
Late in his distinguished career, when he was teaching Winston Churchill to paint, the British painter, print-maker and illustrator Sir William Nicholson travelled to Andalucia in Spain. There he met the novelist Marguerite Steen (1894-1975), and she became his companion for the remaining fifteen years of his life. She had a passion for bullfights, and Nicholson found himself working up a study of the Plaza de Toros, Malaga into a major painting. This finished version shows his distinctive use of colour as a result of the intense light in southern Spain. This was exhibited in London the following year.
La Malagueta, as this bull ring is known, was a lifelong inspiration for Pablo Picasso (1881-1973), who was born and brought up in the city. Unlike Picasso, though, Nicholson’s interest was more distant, in the bullring’s form and position, rather than the thrill and spectacle of bullfights.
With Apple’s annual Worldwide Developers Conference less than a month away, speculation about what’s coming in macOS 16 is starting to warm up. So far that has concentrated on increasing consistency in interfaces across the different platforms, which could mean almost anything. As far as macOS is concerned, that’s largely up to AppKit and SwiftUI, its two major interface libraries.
AppKit remains widely used, and is still the more complete of the two. Descended from the UI framework in NeXTSTEP, it was in the core of Mac OS X at the start, and has been the mainstay for the Finder and Apple’s own apps for the last 25 years. It has a close relative in UIKit for iOS and iPadOS, although they are less comprehensive in their features.
SwiftUI is an interesting experience for the macOS developer, and is currently an archipelago of delights in a sea of disappointment. Some of its features are powerful, but a great deal is still lacking. Support for views and features widely used in modern iOS and iPadOS apps is impressive, and it opens up features such as the List View that I praised recently. But when it comes to essentials that are confined to macOS, such as menus, a great deal of work remains as it comes up to its sixth birthday on 3 June.
This is demonstrated in one of the best tutorials I’ve seen on using SwiftUI for macOS, in this case to develop a Markdown editor, written by Sam Rowlands of Ohanaware. No sooner has he set up a split view to accommodate both the Markdown source and its preview in the same window, than he writes: “The TextEditor in SwiftUI ticks the box of offering a way to edit a large volume of text, but that’s about all it does. Apple have a much more powerful text editor already in the macOS as part of their AppKit framework, so we’re going to wrap that instead.”
This was my experience a while ago when I looked at a range of document formats. Open the Help book in LogUI and what you see there is cast not in SwiftUI, which still doesn’t offer a PDF view, but reaches back to AppKit. While creating a useful Rich Text editor using AppKit is amazingly quick and simple, even plain text editing in SwiftUI is feeble. There are plenty of experts who will advise you “SwiftUI’s text editor is very limited. It doesn’t support much more than entering large amounts of plain text. If you want rich text editing, you will have to use either NSTextView or UITextView.”
These are fundamental features that should by now be easy going for any macOS interface library that’s six years old.
Continuing dependence on both AppKit and SwiftUI presents Apple with the problem of having to update both to reflect changes it intends making to improve interface consistency, then for iOS there’s also UIKit. Not only that, but all three libraries have to integrate and work together.
SwiftUI has undergone constant change over those six years. One of its most substantial changes has been the move from the Observable Object protocol to the Observable macro. Apple describes how to migrate in this article, complete with sample code. But that poses the developer a problem, as adopting the latter is only possible in apps written for macOS 14 or iOS 17 or later. That’s why LogUI requires a minimum of macOS 14.6, as do many of the better SwiftUI apps. Writing SwiftUI apps to support macOS older than Sonoma and Sequoia is thus a serious undertaking, and whatever macOS 16 and its new version of SwiftUI bring, you can be sure they’ll make backward compatibility even more impractical.
Documentation for SwiftUI is also broken. Apple seems to have stopped writing conceptual explanations about ten years ago, and structured guides have been replaced by terse and usually uninformative references to individual functions and other details of the macOS API. The only way to try to gain understanding of SwiftUI is to turn to third-parties, who are more interested in the lucrative iOS market rather than macOS, and think a series of example projects are a substitute for a systematic guide.
If there’s one sound investment for the future that Apple could make from its much-vaunted half trillion dollar investment in the US, it would be to hire a large team of technical authors and catch up with its ten-year backlog of documentation.
Whether you gasp with horror or delight when Apple reveals what’s coming in macOS 16 next month, spare a thought for all the changes that have to take place in AppKit, UIKit and SwiftUI, all the documentation that won’t get written, and how code is going to struggle to be compatible with macOS 16 and Sequoia or earlier. Then for good measure throw in the inevitable load of new bugs. So you still want to beta-test macOS 16?
On Christmas Eve 1734 Europe came close to losing many of its greatest paintings, when the Royal Alcázar of Madrid caught fire. At the time it housed much of the Spanish royal collection; although some were lost, many survived to form the core of the Museo Nacional del Prado, which opened to the public in November 1819. Since then a steady succession of aspiring painters have made their way to Madrid to study the works of Hieronymus Bosch, El Greco, Peter Paul Rubens, Titian, Diego Velázquez, Francisco Goya, and others in the Prado.
Although few of its masterworks depict landscapes, the Prado has drawn many landscape artists who have also taken the opportunity to paint Spanish views. This weekend I show a small selection of landscape paintings made of the interior of the country by visitors and natives.
The French animalière Rosa Bonheur seems to have visited the Pyrenees, the mountain range forming the north-east border of Spain, on at least two occasions. Her Spanish Muleteers Crossing the Pyrenees from 1857 incorporates one of her most spectacular landscapes, some of which were painted in collaboration with her father. At the time mules like these were still an important means of trade over the Pyrenees, via traditional routes over passes that had been used by animals and humans for millennia.
While Martín Rico was studying at the prestigious Real Academia de Bellas Artes de San Fernando in Madrid, he painted a series of watercolour landscapes of his home town and its environs. Among them is this View of the Village of El Escorial with the Church of Saint Barnabus (1852-58). This appears to have been painted in front of the motif, and for the rest of his career, Rico was an enthusiastic painter en plein air.
Rico progressed to oils by 1858, when he painted Guadarrama Landscape, shown at that year’s National Exhibition. This rugged area is now a national park, and is to the north-east of El Escorial. The mountains shown are the Sierra de Guadarrama. This dramatic view shows the influence of his Professor of Landscape Painting at the Academy, who was a renowned Romantic.
His landscape painted Near Azañón in 1859 places a Wanderer figure in arid country in his native Spain. Unusually, this Wanderer faces the viewer rather than looking away. This is in the province of Guadalajara in central Spain.
Country View from 1861 is another of his landscapes from the early years of his career, before he discovered Venice and devoted his later life to painting its canals.
Antonio Muñoz Degrain’s early Landscape of El Pardo as the Fog Clears from 1866 is set in El Pardo Mountain Reserve, the hunting grounds of the Spanish royal family, where one of its rangers is taking his horse to water. The mountain in the background is Guadarrama, which is surprisingly alpine and rugged. This is close to the location seen in Rico’s Guadarrama Landscape above.
In 1867, Franz von Lenbach and a student of his travelled from Munich to Madrid to copy the Masters there for his patron Baron Adolf von Schack. The following year, von Lenbach painted two works in Granada: The Alhambra in Granada (1868) is a magnificent sketch including the backdrop of the distant mountains, and appears to have been painted in front of the motif.
Mariano Fortuny’s Granada Landscape from 1871 is a plein air oil sketch painted when the artist was living in Granada between 1870-72.
Ferdinand Hodler travelled from Geneva in Switzerland to Madrid in 1878 to study the works of the masters there for several months. While he was there his landscapes became brighter, higher in chroma, and increasingly artistic rather than just representational, as shown in this Landscape Near Madrid (1878).
When the great American landscape artist and teacher William Merritt Chase was in Europe in the summer of 1882, he painted Sunny Spain (1882).
The German artist Edmund Ludwig Eduard Wodick painted this view of Granada in 1886; shortly afterwards he developed pneumonia and died at the age of 69. He located himself just outside the city walls, looking across at the Alhambra and its towers, down towards the lush green plain and the snow-capped peaks in the far distance.
This is a contrasting view of the Alhambra painted by Hernandez Miguel Vico, a local artist. The Cuesta de los Chinos is the steep road seen here, and forms one of the pedestrian accesses to the palace.
Here are this weekend’s Mac riddles to entertain you through family time, shopping and recreation.
1: Workshop exhibition with thunder and lightning from the A13 in 68.58 cm.
2: First person seed vessel contact takes music wherever.
3: Notes of brief communication from a pioneering mathematician.
To help you cross-check your solutions, or confuse you further, there’s a common factor between them.
I’ll post my solutions first thing on Monday morning.
Please don’t post your solutions as comments here: it spoils it for others.
From the outset, the Macintosh was a single integrated unit, at a time when other personal computers came with separate displays.
It took three years for Macs to diverge into the all-in-one SE and the modular Macintosh II with its conventional case and separate colour monitor. The meteoric rise of desktop publishing demanded large, deep and heavy cathode-ray tube (CRT) colour displays that only came separately, and needed long graphics cards that had to be fitted inside the computer’s chassis.
Although the Mac SE weighed up to almost 10 kg (22 pounds), many lugged them around in soft cases slung over their shoulders, providing a degree of portability. There are some folk whose backs still bear witness to those days of the luggable Mac.
Integral CRT displays hardly changed over this period. The Macintosh 128K came with a 9 inch screen displaying a mere 512 x 342 pixels in monochrome. Ten years later, the Color Classic was the first all-in-one to come with a 10 inch colour screen, and that only increased resolution to 512 x 384 pixels. Neither was there any support for external displays, until the LC 520 in July 1993, with its 14 inch colour CRT at 640 x 480 resolution and display port.
During the 1990s, Apple offered various Power Macintosh, Performa and LC all-in-one models featuring integral or piggybacked displays, culminating in the Power Macintosh 5500 in 1997, with its 15 inch CRT of which less than 13 inches were viewable, and supporting up to 832 x 624 pixels.
Apple’s next innovative all-in-one was the Twentieth Anniversary Macintosh (TAM), released a year late in 1997. It came with a 12.1 inch backlit active-matrix screen rather than the traditional CRT, in this unique design. Although a limited edition intended to be a collector’s item, it was overpriced and sold poorly, and has since been eclipsed by the most innovative model since the original 128K.
In May 1998, Apple announced the first iMac, based on a PowerPC G3 processor and a 15 inch CRT, of which 13.8 inches are viewable at resolutions of up to 1024 x 768 pixels. The design wrapped the case around the bulk of the display in the form of a ‘gumdrop’, using coloured translucent plastic later offered in a range of bright colours.
It was also technically innovative, featuring novel USB ports and discarding the traditional floppy disk drive in favour of optical and hard drives. This shipped in August 1998, with hardware revisions that October and the following January.
A few months later Apple quietly slipped out the Power Macintosh G3 All-in-One, but that proved to be a dead-end and has been largely forgotten in favour of the iconic iMac.
By January 2002, flat-panel displays were starting to displace bulky CRTs, and Apple made use of them in its first flat-panel iMac. This featured a PowerPC G4 processor, and a 15 inch TFT active-matrix LCD delivering up to 1024 x 768 pixels. The computer components were assembled into a heavy hemispherical base on which the display was mounted using a hinged stainless steel arm resembling an Anglepoise desk lamp, which had been designed in 1932 by George Carwardine and is still in production.
This ‘Anglepoise’ mount remains the best adjustable mechanism used with a display, ensured effortless positioning to suit each user, and eventually supported 20 inch flat-panel displays.
With displays now thin enough to allow computer components to be integrated behind the screen, the next step was to eliminate the heavy base. Apple achieved that in August 2004 with the iMac G5, in its 17 and 20 inch models. With the switch to Intel processors and further integration in computer components, display size rose to 24 inches in 2007, and 27 inches two years later.
For many, the zenith of the iMac came in Retina 5K displays first offered in 2014, and the most powerful Intel iMac of all, the 27 inch iMac Pro released at the end of 2017. The latter features Intel Xeon processors with 8 or 10 cores together with the new T2 security chip. Although it doesn’t appear to have sold well, it was popular with developers and others during the hiatus between the Mac Pro models of 2013 and 2019.
Although the iMac Pro was the first Mac to feature a T2 chip, their inclusion in other iMacs was delayed until Apple had already announced its move to Apple silicon models. The last Intel iMac with a 27 inch Retina 5K display was released in August 2020, three months before Apple shipped the first M1 Mac mini and others.
Since May 2021, Apple has offered a succession of three iMacs powered by its M-series chips, all with a 24 inch Retina 4.5K display. They follow in the line of the original iMac from 1998, and come in a range of colours. But there are many who are still clinging onto ageing Intel iMacs in the hope that, one day, Apple will offer an all-in-one in the spirit of the iMac Pro, with a Pro grade chip and a 27 inch Retina 5K display.
Many artists are considered to have been part of the Pre-Raphaelite Movement in the latter half of the nineteenth century, and even more adopted Pre-Raphaelite style, but there were only ever seven members of the original Pre-Raphaelite Brotherhood that started it all. Three weren’t even painters, but the other four included William Holman Hunt, John Everett Millais, Dante Gabriel Rossetti, and someone named James Collinson who’s hardly mentioned.
James Collinson was born two centuries ago today, on 9 May 1825, to a Nottinghamshire bookseller and his wife. He made friends with Hunt and Rossetti when they were students together in the Royal Academy Schools in London, and in 1848 they formed the Pre-Raphaelite Brotherhood with the other four.
Most of the paintings by members of the Brotherhood at that time were religious in theme. Collinson painted a few works before the group started to fragment in 1850, as the result of controversy surrounding John Everett Millais’ Christ in the House of His Parents shown at the Royal Academy that year.
Millais’ painting, also known as The Carpenter’s Shop appeared with a quotation from the Old Testament book of Zechariah 13:6: “And one shall say unto him, What are those wounds in thine hands? Then he shall answer, Those with which I was wounded in the house of my friends.” It shows an entirely imagined scene, one not even alluded to in the Gospels, in which the young Jesus Christ is being comforted by his kneeling mother, after he has cut the palm of his left hand on a nail.
The figures and objects are depicted with great and meticulous realism, and were painted from nature. Nevertheless the composition abounds with symbols of Christ’s life and future crucifixion: the cut on his palm is one of the stigmata, and blood dripped from that onto his left foot is another. The young Saint John the Baptist has fetched a bowl of water, indicating his future baptismal role. A triangle above Christ’s head symbolises the Trinity, and a white dove perched on the ladder is the Holy Spirit. A flock of sheep outside represents the Christian flock.
Among its harshest critics was the great novelist Charles Dickens, who claimed that the Holy Family had been made to look like alcoholics and slum-dwellers. Collinson felt that the Brotherhood was bringing the Christian religion into disrepute, and resigned. The group failed to agree on a replacement, and disbanded later that year.
Late that summer, it’s thought that Collinson stayed on the Isle of Wight with Richard Burchett, as both painted views across the same bay from similar locations.
Collinson’s Mother and Child by a Stile, with Culver Cliff, Isle of Wight, in the Distance was painted along a path that still runs between the eastern end of Cliff Copse down to what was then Saint John’s Church (now known as Saint Blasius’) in Shanklin. It’s claimed that either or both the views were made from above or beyond Shanklin Down, which is incorrect: they were both made to the north-east of that down, which towers above those locations, about a mile from our house.
For some time, I believed that there were two significant discrepancies between these paintings and the views these artists would have seen: the distant white tower, the Earl of Yarborough’s Monument, appeared too far to the left in both, and in Burchett’s painting, Saint John’s Church looked incorrect. Although I still have my doubts about the church, and the exact site from which Collinson painted his view, I have since discovered that the distant monument is placed correctly, as it was moved from there to its present location in the 1860s.
That year Collinson also painted one of a series of three works on the theme of reading and writing, Answering the Emigrant’s Letter (1850). These may have had their origins in the contemporary campaign for literacy inspired by Dickens’ novel The Old Curiosity Shop (1841). This may be a humble working class family, but both the father and the oldest of their children are writing with quills.
The Emigration Scheme (1852) is the second in this series, with another older boy demonstrating his reading skills to two families. Emigration was a theme adopted by other Pre-Raphaelites, and many in Britain seized the opportunity to migrate to North America or Australasia.
Collinson painted Home Again after the end of the Crimean War in 1856, to show the problems faced by returning veterans and their dependents. A soldier in the Coldstream Guards here rejoins his family after he was blinded in the war. His large extended family now face the future without the income he had brought in.
In 1858, Collinson married and concentrated his painting on further secular themes, apparently becoming quite popular.
His undated painted oval To Let is perhaps a little too subtle today. This pretty young woman stands at a window in which she’s advertising an apartment to let. She’s wearing black suggesting that she might be a widow, but there’s no sign of a wedding ring on her left hand. Maybe she intends her tenant to take up more permanent residence.
This study for a finished painting titled For Sale also has subtle open narrative and gives even fewer clues as to the artist’s intent.
Collinson served as secretary to the Society of British Artists between 1861-70, then went to live in Brittany. He died in 1881, and has since been almost entirely forgotten, the only one of the four painters among the Pre-Raphaelite Brotherhood who has vanished.
In computing, the term Quality of Service is widely used to refer to communication and network performance, but for Macs it has another more significant meaning, as the property that determines the performance of each thread run on your Mac, most importantly in Apple silicon chips.
Each process running on your Mac consists of at least one thread. Threads are single flows of code execution run on one CPU core at a time, sharing virtual memory allocated to that process, but with their own stack. In addition to the process’s main thread, it can create additional threads as it requires, which can then be scheduled to run in parallel on different cores. As all recent Macs have more than one core, processes with more than one thread can make good use of more than one core, and so run faster.
Take the example of a file compressor. If it’s coded so that it can perform its compression in four threads that can be run simultaneously, then it will compress files in roughly a quarter of the time when it runs on four CPU cores, compared with running on a single core (ignoring input and output to disk).
That only works when those four cores are all free. If your Mac is also trying to build its Spotlight indexes at the same time, the threads doing that will compete with those of your compression app. That’s where the thread’s Quality of Service (QoS) settings come in, as they assign priority. On Apple silicon Macs, a thread’s QoS will also help determine whether it’s run on its Performance or Efficiency cores.
QoS is set by the process, and is normally chosen from the standard list:
There’s also a ‘default’ value of QoS between 17 and 25, an unspecified value, and in some circumstances you might come across others used by macOS.
These are the QoS values exposed to the programmer. Internally, macOS uses a more complex scheme with different values.
When running apps on Intel Macs, because all their CPU cores are identical, QoS has more limited effect, and is largely used to determine priority when there are threads queued for execution on a limited number of cores.
Apple silicon Macs are completely different, as they have two types of CPU core, Efficiency (E) cores designed to use less energy and normally run at lower frequencies, and Performance (P) cores that can run at higher frequencies and deliver maximum performance, but using more energy.
QoS is therefore used to determine which type of core a thread should be run on. Threads with a QoS of 9 (background) are run on E cores, and can’t be promoted to run on P cores, even when there are inactive P cores and the E cores are heavily loaded. Threads with a QoS of 17 and above will be preferentially run on P cores when they’re available, but when they’re all fully occupied, macOS will run them on E cores instead. In that case, the E cores will be run at higher frequencies for better performance with less economy.
If your Apple silicon Mac has a base variant chip with 4 E and 4 P cores, this results in the following:
As QoS is normally either set by the process for its threads, or for services in their LaunchDaemon or LaunchAgent property list, the user has little direct control. A few apps now provide settings to adjust the QoS of their worker threads. Among those in the compression utility Keka, together with a couple of my own utilities such as the Dintch integrity checker.
In Keka’s settings, you can give its tasks a maximum number of threads, and even run them at custom Quality of Service (QoS) if you want them to be run in the background on E cores, and not interrupt your work on P cores.
Dintch has a simple slider, with the green tortoise to run it on E cores alone, and the red racing car at full speed on the P cores.
taskpolicy
The great majority of threads run at low QoS on the E cores are those of macOS and its services like Spotlight indexing. When a thread has already been assigned a low QoS, there’s currently no utility or tool that can promote it so it’s run at a higher QoS. In practice this means that you can’t accelerate those tasks.
What you can do, though, is demote threads with higher QoS to run at low QoS, more slowly and in the background. The best way to do this is using St. Clair Software’s excellent utility App Tamer. If you prefer, you can use the taskpolicy
command tool instead. For instance, the commandtaskpolicy -b -p 567
will confine all threads of the process with PID 567 to the E cluster, and can be reversed using the -B option for threads with higher QoS (but not those set to low QoS by the process).
That can be seen in this CPU History window from Activity Monitor. An app has run four threads, two at low QoS and two at high QoS. In the left side of each core trace they are run on their respective cores, as set by their QoS. The app’s process was then changed using taskpolicy -b
and the threads run again, as seen in the right. The two threads with high QoS are then run together with the two with low QoS in the four E cores alone.
Although Game Mode does alter the effects of QoS and core allocation, its impact is limited. The one significant exception to the way that QoS works is in virtualisation.
macOS Virtual Machines running on Apple silicon chips are automatically assigned a high QoS, and run preferentially on P cores. Thus, even when running threads at low QoS, those are run within threads on the host’s P cores. This remains the only known method of electively running low QoS threads on P cores.
taskpolicy
let you demote high QoS threads to be run with low QoS on the E cores, but can’t promote low QoS threads to run faster on P cores.Apple’s Energy Efficiency Guide for Mac Apps, last revised 13 September 2016, so without any mention of Apple silicon.
Apple silicon: 1 Cores, clusters and performance
Apple silicon: 2 Power and thermal glory
Apple silicon: 3 But does it save energy?
Before the arrival of railways in the middle of the nineteenth century, travel was slow, and holidays were optional. Most of the working class in cities were grateful to get one day off each week, and in many cases that was Sunday to be spent in church. Most employers allowed their workers as little time off as they could get away with, and those who weren’t there simply weren’t paid.
By the 1870s, cotton workers in Lancashire saved all year and took a week’s unpaid leave to travel by train to stay on the coast, in what were known as Wakes Weeks. These allowed mill and factory owners to shut production down for that week in the summer to perform maintenance, while their workers recuperated by the sea.
Public holidays, officially known as Bank Holidays because banks were allowed to close for the day, weren’t introduced in England until 1871, and even then consisted of just four days a year, and remained that few for the next century. Workers had no right to any paid holiday until 1938, when employers were required to provide them with one week a year in addition to Bank Holidays.
Eugène Lepoittevin’s Bathing, Étretat Beach shows French families enjoying the beach in 1864, and their first tentative steps in the development of beach and swimwear. Those shown are all middle class, well-dressed and hardly taking unpaid time away from the factory.
Similar groups are shown visiting the bathing resort of La Grenouillère in the summer of 1869, in one of Auguste Renoir’s masterworks from early Impressionism. This is located a short distance downstream on the River Seine from Paris, and easily reachable by train.
In 1882 at Le Tréport on the Channel coast of France near Dieppe, Évariste Carpentier’s Le Tréport, Bathing Time again shows members of the middle class dressed in the latest beachwear. The young woman to the right of centre may still have her head wrapped in a bonnet, but you can see her lower legs and all her arm, almost to the shoulder. It’s noticeable that several heads have turned to look at her, as she walks in her sandals along the wooden walkway.
The railway came to Ramsgate in 1846, and with it the masses from London in search of a ‘cure’ from its waters. William Powell Frith holidayed there in 1851, when he made his first preparatory sketches for his painting of Ramsgate Sands (1854). On its beach is a more eclectic mixture of classes, reflected in their clothing and activities, although I still can’t see many from London’s factories or market-barrows.
In 1920 William S Horton painted this Punch and Judy show taking place on the beach at Broadstairs, Kent, a traditional family beach resort at the extreme eastern tip of the south-east coast of England. Most if not all are visibly well-dressed and hardly working class.
In 1902 Lovis Corinth visited the south coast of the Baltic, where he painted Swimming in Horst – Ostsee, now the Polish resort of Niechorze.
There are a few paintings showing lower classes in America away from their labours, though.
George Bellows’ Forty-two Kids from 1907 shows unruly youths at play by the water near a dilapidated wharf on New York City’s East River. These are from poor migrant families inhabiting overcrowded neighbourhoods in Manhattan’s East Side.
App architectures can enable or constrain. My previous log browsers, Consolation and Ulbow, have been document-based, so each window represents a different log extract. As there seemed little reason to open two document windows on a single extract from the log, I’ve normally tweaked and fiddled with each window to display the entries I want to browse, an inevitable compromise that usually leaves me scrolling through thousands of entries.
LogUI is lighter in weight and not based on documents, merely windows and views. Although they’re backed by the data of a log extract, there’s no reason that you shouldn’t open several windows on the same data if that makes analysis easier. And it does, particularly when used with Search. Here’s an example.
Over the last couple of weeks, I’ve been looking at many log extracts covering app launch, one of the busiest events in macOS. In the first few seconds following a double-click to run an app, the log can accumulate well over 25,000 entries. No matter how experienced you are in dealing with them, or how efficiently you can look for milestones marking progress, it can take hours to read the launch process thoroughly in the log. This is partly because of the sheer volume of entries, but most of all because so many subsystems in macOS are involved. Any given period of tens of milliseconds can have long volleys in TCC, interspersed with a series of RunningBoard assertions, and occasional progress reports from LaunchServices. They’ll suddenly be interrupted by DAS dispatching an unrelated background activity, Wi-Fi updates, and other everyday tasks.
Try this instead.
Watch your Mac’s clock until it’s about to change minute. Just as the seconds count changes to 00, double-click the app and take your hands away from mouse/trackpad and keyboard. Once the clock reaches 10 seconds, assuming the app launch is complete, quit that app and start up LogUI. Its new window should show the time when you launched the app, so ensure its time period is correct, say anything between 5 and 30 seconds, and allow it to collect up to the 5-10 seconds required. When that’s ready, click on its Get Log button and check that it contains all the entries you require. Open second, third, fourth, and fifth windows likewise, with the same start times and settings. Once they’re all open, Get Log in each of them, and check that the number of entries is identical, indicating that each has the same log entries.
In my case, launching Pages brought over 40,000 log entries in the first 5 seconds, ending with the app running and prompting me to open a document. Even if you speed-read those at one entry every second, that would take you nearly 12 hours to work through. Let’s reduce that to a few minutes to see each of its important phases.
In a second window, type sendaction:
into the Search box at the top right and press Return. That will find all entries marking the clicks/taps you triggered the launch with.
There are two paired entries 0.237 seconds apart, representing my double-tap. So we now know that we can safely ignore everything in the log that happened before the time 11:55:00.767. Leave that window open with just those entries showing, as a reminder.
Normally the first subsystem on the scene to handle those actions is LaunchServices. In the third window, change the search field popup menu to Subsystems, type
launchservices
in the Search box, and press Return.
Sure enough, from a time of 00.779 seconds, only 0.012 seconds after the second tap, LaunchServices reports that it’s getting ready to launch Pages through RunningBoard, and constructs its EnvironmentDictionary for the purpose. This is the cue to move onto the fourth window, where we set the popup menu to Subsystems again, enter runningboard
into the Search box, and press Return.
This details the launch request being handled by RunningBoard, which a few moments later constructs and reports an extensive job description for Pages. Another early arrival during the launch process is TCC to check the new app’s privacy access. In the fifth window, set Subsystems again, and search on tcc
.
So far we’ve ignored another group of subsystems and processes that are more interesting than the drudgery of TCC, security. For a first look at how this is checked, switch the popup to Processes and search for amfid
, the service for Apple Mobile File Integrity (AMFI) checking.
This shows its check entering first the path to the main executable at 00.805 seconds, two immediate security checks being called, then entering the path for one of the frameworks inside the Pages app bundle 0.05 seconds later. We can readily trace each framework check through the rest of the launch process in this view.
A more general summary of security checking milestones is provided by com.apple.syspolicy.exec
, so switch the popup to Subsystems, and search on syspolicy
.
This reveals how syspolicyd
called a Gatekeeper process assessment on Pages, showed that the code had already been evaluated (despite it not having been run previously in this session), and allowed the launch to proceed without any further checks like an XProtect scan being made.
Finally, for a permanent record of this launch, in any of the windows click on the Save button to write all 41,712 log entries to a Rich Text file. That turned out to be 9.3 MB in size, so I’m glad I’m not still trawling through that trying to make sense of its contents.
To do this, LogUI will require a little more memory: in this case, working with five windows, each with over 40,000 log entries, LogUI took 520 MB. I think the convenience is worth that small cost, but I am going to return to Xcode to see if that can’t be managed better and reduced in size.
At the moment, LogUI doesn’t use any tricks to share a single log extract across different windows, and I’m wondering why and how that could be improved. One approach might be to obtain a single log extract as a Project, from which you can open individual windows for different searches. Although that shouldn’t be difficult to code, it would make LogUI more complex to use, and limit the flexibility of each window. Please try this out yourselves and let me know what you think. For now, I’m surprised at how useful search can be across several open windows.
In two-dimensional visual art, particularly painting, the term frieze is used to describe an arrangement of figures that are flattened into a plane parallel to the plane of the picture, thus resembling those seen in architectural friezes. These returned to fashion in the late nineteenth century for their unusual visual effect.
John Roddam Spencer Stanhope’s Why seek ye the living among the dead? (St Luke, Chapter 14, verse 5) (1896) refers to the account of the Resurrection in which Mary Magdalene and companion(s) return to Christ’s tomb, only to find its door open and the tomb empty. They are then greeted by two men who inform them that Christ has risen from the dead. Stanhope depicts this in the style of a frieze, the four figures arranged across the painting in a single parallel plane. Although part of a complex narrative, he depicts only a limited window from the story, and in doing so makes his painting simpler and more direct.
In 1902 Gustav Klimt painted a frieze of 24 metres in length for the fourteenth exhibition of the Vienna Secession, his Beethoven Frieze, of which the above is a section known as The Hostile Powers, and that below is Nagging Grief. This is not only a frieze in the sense of a flat wall painting, but its composition is flattened as well.
Another frieze or mural painted at this time is Hodler’s Unanimity from 1913, in the Neue Rathaus in Hanover, Germany. This has survived adverse criticism, the Nazi regime, and the bombing of the city during the Second World War. At its centre is the figure of Dietrich Arnsborg (1475-1558), who on 26 June 1533 brought together an assembly of the (male) citizens of Hanover in its market square, by the old town hall. Together they swore to adhere to the new Reformation doctrine of Martin Luther, as shown here in their unanimous raising of right hands.
Evelyn De Morgan’s Cadence of Autumn from 1905 shows five women in a frieze against a rustic background. From the left, one holds a basket of grapes and other fruit, two are putting marrows, apples, pears and other fruit into a large net bag, held between them. The fourth crouches down from a seated position, her hands grasping leaves, and the last is stood, letting the wind blow leaves out from each hand.
There are also a few paintings in which a frieze forms the background rather than figures in the foreground.
Frederick Sandys shows Medea (1866-68) at work, preparing a magic potion for one of Jason’s missions. In front of her is a toad, and other ingredients. Behind her, in a gilt frieze, is Jason’s ship the Argo.
Dante Gabriel Rossetti’s painting of Arthurian legend, How Sir Galahad, Sir Bors and Sir Percival Were Fed with the Sanct Grael; but Sir Percival’s Sister Died by the Way from 1864, awards haloes to what at first appear to be secular women. In fact he has stretched this legend to include the Virgin Mary, in the left foreground with her white lilies, also given haloes, and a host of angels with wings forming a background frieze.
Finally, paintings may incorporate a frieze above or below a more conventional three-dimensional image.
Félicien Rops’ notorious Pornocrates (1878) shows a blindfolded and nearly-naked woman being led by a pig tethered on a lead like a dog. Below is a frieze containing allegories of sculpture, music, poetry and painting. Make of them what you wish.
This coming autumn it’ll be five years since Apple started shipping its first Apple silicon Macs, and it’s already four years since the first M1 iMac. As prices of used Intel Macs are tumbling, more Apple silicon models are coming onto the used market. With a total of 15 basic M-series chips now available, this article tries to help you decide which new or used Apple silicon model to buy.
With such a wide choice, this is perhaps the most complex feature to understand, and it’s likely to make the biggest difference to what your Mac will do. M-series chips have anything from 2-8 Efficiency (E) cores, and 4-24 Performance (P) cores across four different families.
Although folk are usually more concerned with the number of P cores, E cores are responsible for doing much of the routine work, and shouldn’t be ignored. They run most of the background tasks in macOS, from Time Machine backups to indexing all your images and documents for Spotlight. P cores are largely responsible for running the code in your apps, so determine how fast it feels in use.
Most M-series chips have at least 4 E cores, but two, the M1 Pro and M1 Max, have only 2. They compensate for that by running those E cores at higher frequencies when working on heavy background tasks, but subsequent designs have set the comfortable minimum at 4, and the latest base M4 comes with 6. Of the two core types, E cores are the more versatile, as they can run all types of task, background or user, and when running at their maximum frequency can deliver a high proportion of the processing power of a P core. As an E core’s energy use is much lower than that of a P core, they’re a better option when running a laptop Mac on its battery.
The four E cores in this M4 Pro are kept fully occupied in the minutes after starting up, leaving the P cores free for running apps smoothly.
P and E core performance has increased with each new family. This is illustrated in different types of computation, when running one thread on a single core.
The Y axis here gives loop throughput per second for my four basic in-core performance tests, a tight assembly code integer math loop, another tight assembly code loop of floating point math, NEON vector processor assembly code, and a tight loop calling an Accelerate routine run in the NEON unit. Pale blue bars are results for the M1, purple for the M3, and red for the M4, the higher the bar the faster.
Maximum core frequencies have increased from 3.2 GHz in the M1’s P cores to 4.5 GHz in the M4. One crude comparative measurement of overall computing capacity is to total the maximum frequencies for each of the CPU cores in each chip. Those are shown as Σfn in the table below, and the chart that follows it.
These are also complicated by sub-variants and binned versions, where one or two cores have been disabled by Apple, to produce a cheaper chip.
If you’re looking for CPU performance, the M3 Max, and M4 Pro and Max stand out and approach the performance of Ultra chips. But those assume that the software running is able to make full use of all the cores available. There’s no point in paying for the 32 cores in an M3 Ultra if the app you run most can’t use many of them.
Another detail that’s easily overlooked is the instruction set (ISA) supported, notably that of the M4, which includes new features for accelerated matrix and other computation. In this respect, the M2 family has been underrated, as I’ve explained here.
For most, the choice of CPU cores determines the GPU provided, and for general use they’re well matched. Exceptions to this are when high GPU performance is essential, and to support external displays. In either case you’ll need to check carefully with Apple’s specifications or Mactracker to ensure support. That’s particularly important when driving multiple high-resolution displays.
Memory options are determined by the chip, with some starting at only 8 GB, which is insufficient even for the lightest use. There was a myth that the use of Unified memory would result in substantial economy in memory use, but in practice that doesn’t work out, and demand for memory has increased with the introduction of new features such as AI.
The danger with this is that using substantial amounts of swap storage is deceptively fast because of the high speed of the internal SSD. As models with 8 GB memory often have small SSDs as well, this is likely to lead to rapid ‘wear’ of the SSD, and some early adopters saw worryingly rapid changes in wear indicators. Fortunately, Apple has recognised this problem, and all M4 models now come with a minimum of 16 GB.
If you’re interested in buying an older model with only 8 GB, at least check its SSD size and wear indicators before parting with your money. Further information about memory requirements is here.
While it’s possible to enjoy using an Apple silicon Mac with only 256 GB internal SSD, unless you’re frugal in its use you’ll find yourself buying a more substantial external SSD to supplement that. You can start up an Apple silicon Mac from macOS on an external SSD (or even a hard drive, if you must), but that’s more fussy than with an Intel Mac. If you want to consider relying on external storage, this article explains how best to do that.
For most users, a minimum internal SSD requires 512 GB for comfort and a long life.
Until recently, all Apple silicon Macs have been stuck with the CPU cores, GPU, memory and internal SSD that they came with. That may be changing with some now offering SSD upgrades for the M4 Mac mini. However, those are likely to invalidate your warranty, and aren’t likely to be available for other popular models, apart from the Mac Pro.
Enjoy your new Mac!
In architecture, a frieze is a section of a building above the columns or walls and below the roof, commonly the location of decorative sculpture or a bas-relief.
This is the monumental hall of Walhalla, commissioned in the nineteenth century as a memorial to the great figures of German history. On its north side is this pediment frieze showing the victory of Arminius and the Germanic tribes over the Romans at the Battle of Teutoburg Forest. This is an unusual frieze as it adds more depth to the figures than would appear in a normal relief.
The most famous is shown in Lawrence Alma-Tadema’s beautiful painting of Phidias Showing the Frieze of the Parthenon to his Friends (1868), whose admiring figures include Pericles (at the right), Aspasia, Alcibiades and Socrates.
In two-dimensional visual art, particularly painting, the term frieze is also used to describe an arrangement of figures that are flattened into a plane parallel to the plane of the picture, thus resembling those seen in architectural friezes.
Among the most spectacular wall-paintings of Pompeii are those in the Villa of the Mysteries showing Dionysian Rites from before about 62 CE. Room 5 contains a frieze of 29 figures at nearly life size, apparently depicting a sequence of ritual events involving a mixture of Pompeiians and deities.
In the period before three-dimensional linear projection became widely adopted in European art, many paintings adopted a similar approach for groups of figures. But long afterwards the frieze continued to be used in the right circumstances.
Masaccio’s Adoration of the Magi (1426-7) delivers a frieze-like view of this popular subject. The Virgin Mary is sat on a golden portable folding chair decorated with lion heads and paws, the infant Christ on her knee. To the left of her is the standard group of ox and ass in a shed, and behind her is Joseph, holding one of the gifts from the Magi. Hints at depth are given in the heights of some figures, but they are confined to a shallow plane parallel to the picture plane.
When Raphael painted The Marriage of the Virgin known by its Italian name of Il Sposalizio (‘the marriage’), in 1504, he combined the frieze of figures in the foreground with grand architecture expertly projected in depth. This demonstrates the contrast between the flat frieze in the foreground and the depth of the building behind.
Some motifs are prone to creating frieze effects, and painters have gone out of their way to avoid that.
William Blake Richmond’s An Audience in Athens During Agamemnon by Aeschylus from 1884 is a study of the enraptured audience of a play. Its classical setting has strong formal symmetry, with its central figure perhaps representing the playwright himself. Richmond uses greatly exaggerated aerial perspective, with intense chroma in the foreground falling off rapidly towards the back of the theatre, to give depth to what would otherwise have appeared flat and frieze-like.
Late in the nineteenth century some artists like Ferdinand Hodler adopted frieze effects.
Hodler’s World-Weary (1891-92) was an important early work in the development of his style of Parallelism, with its emphasis on the symmetry and rhythms seen in society. He painted this frieze from models who sat for him in a local cemetery during the autumn of 1891.
The Disappointed Souls (1892), another in this series, also shows five older men, this time dressed in black robes and sat on a bench in barren fields.
The biggest shortcoming of the first versions of LogUI has been their lack of search or find. If you needed to look for anything, the best approach was to save an extract as Rich Text and search through that. I’m delighted to offer a solution in LogUI 1.0 build 42.
Ulbow already supports Find for its log extracts, but that just searches the text contents regardless of which field the text appears in. Sometimes that works well, but if you want to look for specific field entries it’s highly inefficient. When working with its Lists, SwiftUI is different, and its regular Search doesn’t just find text, but only displays those items in the list that contain the text in a given field.
What I’ve attempted to do here is follow the SwiftUI model, so search returns only those log entries that contain the search text, but provide support for searching four different fields:
All searches are performed as case-insensitive for simplicity and speed.
The best way to see how this works is to try it.
Here I’ve simply obtained a 20 second period of recent log, with Max entries set to accommodate them, a total of over 13,000 entries, far too many to search through manually.
I left the search field, in the popup menu next to the magnifying glass symbol , set to Messages, then typed
cfprefsd
into the search box at the top right, and pressed the Return key to initiate the search. This returns all the entries in that log excerpt that contain the text cfprefsd
in their message field.
SwiftUI can perform live incremental search, so that as you type characters into the search box, the search is performed. While that can be impressive on shorter lists, and minimises the number of characters you have to type in for a useful result, it’s costly when performed on large lists, and with log extracts can be quite distracting. If you want to see live search in action, I’ve used that in AppexIndexer, where it only has to deal with a few hundred rows at a time.
I then select one of those.
Having found all those entries containing cfprefsd
in the messages, I switch the popup menu to Processes and press the Return key again. If the search box has lost the focus, the Mac will ‘beep’, so all you do is click on the search box and press Return to perform the search.
Now the window contains all those log entries containing cfprefsd
in their process name. Note how the previously selected entry is still highlighted: selections in log entries should be preserved throughout searches.
For the final search I set the popup menu to Senders, and press the Return key.
This time there are no log entries that meet the search criterion, and the window informs you of that.
To return to the full log extract at any time, empty the search box, perhaps using its 🅧 tool, and press Return.
When you save a log extract in the midst of searching, the file should still contain the whole of the extract, not just what’s currently visible in the search. You should be able to copy only selected entries from a search, though.
As it stands, LogUI now has a toolbar containing the search box and two rows of settings and controls below that. I’m open to suggestions as to how that could be changed or reordered, ideally to reduce it to two rows without increasing minimum window width.
LogUI 1.0 build 42 is now available from here: logui142
and from its Product Page.
I hope you find it useful and more productive.
Following the apotheosis of Aeneas, Ovid lists a succession of rulers of Latium and Alba, the city founded by Aeneas, until he reaches King Proca, who prompts his next stories of transformation, starting with the delightful cautionary tale of Pomona and Vertumnus, who lived during that king’s reign.
Pomona is a devoted and highly capable gardener, who cares for her plants with passion; shunning male company, she has no interest in the many men who seek her love. One, Vertumnus, god of seasons, gardens, and plant growth, loves Pomona more than any other, but is no more successful in attracting her. He is able to change his form at will, and in his quest for Pomona’s love he has posed as a reaper, a hedger, and in various other gardening roles. Through these he had been able to gain entry into her garden, but made no progress in winning her hand.
One day Vertumnus comes up with a new disguise as an old crone with a bonnet over her white hair, leaning on her walking stick. This too gets him into the garden, and he is able to engage the beautiful Pomona in conversation. Vertumnus almost gives himself away when he kisses her over-enthusiastically, but manages to control himself and tries giving Pomona some womanly advice about marriage by encouraging her to wed Vertumnus.
The Roman god Vertumnus was most famously painted by Giuseppe Arcimboldo, in his idiosyncratic portrait of Rudolf II of Hamburg from 1590. Given the nature of the god, Arcimboldo’s choice of fruit and flowers couldn’t have been more appropriate.
Most paintings of this story show Vertumnus in his disguise as an old crone, chatting up a beautiful, and quite fleshly, Pomona.
Francesco Melzi’s Vertumnus and Pomona (c 1518-28) follows Ovid’s account carefully, giving Vertumnus quite masculine looks to ensure the viewer gets the message. In the background is a wonderful Renaissance fantasy landscape with heaped-up hills similar to those seen in ancient Chinese landscapes.
Hendrik Goltzius gets close up in his Vertumnus and Pomona from 1613, and arms Pomona with a vicious-looking pruning knife. There is a wonderful contrast between the two women’s faces and hands here, making this a fine study of the effects of ageing.
Abraham Bloemaert’s Vertumnus and Pomona (1620) uses gaze to great effect: while the persuasive Vertumnus looks up at Pomona, her eyes are cast down, almost closing their lids.
Anthony van Dyck and Jan Roos collaborated in painting Vertumnus and Pomona in about 1625, which is remarkable for its rich symbolism and visual devices. Pomona has her left arm around Vertumnus, but in her right hand holds a silver sickle. She gazes wistfully into the distance, as if in a dream. Vertumnus is again looking up, pleading his case with the young woman, and his left hand (on a very muscular and masculine arm) is behind Pomona’s left knee, between her legs. At the right, Cupid grimaces at the deception, his back turned, pointing at what is going on with apparent disapproval. Then at the lower left corner is a melon cut open to reveal its symbolic form, with its juice and seeds inside as an overt anatomical allusion.
Adriaen van de Velde’s fine Vertumnus and Pomona from 1670 has been marred by the fading of the yellow he used to mix some of his greens, turning some of its foliage blue. He avoids any dangerous allusions, and returns to a more distant view of the pair talking together.
Jean Ranc’s startlingly contemporary Vertumnus and Pomona (c 1710-22) clothes the pair in the fashion of the day, but loses all reference to Pomona as a passionate gardener. At least Vertumnus’ hands are those of a man.
Seemingly influenced by the earlier painting of van Dyck and Roos, François Boucher puts the pair into an embrace in his Earth: Vertumnus and Pomona (1749), and Cupid’s mask play alludes to the deception.
Having cunningly promoted his own cause, Vertumnus tells Pomona the cautionary tale of Iphis and Anaxarete to press his case.
Iphis was a young man of humble origins, and unfortunately fell in love with the high-born Anaxarete. Knowing the hopelessness of his love for her, Iphis told her nurse, and persuaded her maids to take notes and flowers for her. Anaxarete’s response was iron-hearted and cruel: she laughed at him, and shut him out. Iphis was broken by this, and after a brief soliloquy, he hung himself from her door. Her servants cut his body down, but it was too late, he was dead. They carried his body to his widowed mother, who led it in funeral procession to the pyre. As she watched this from a window in an upper room in her house, Anaxarete was transformed into the cold stone of a statue.
Antonio Tempesta’s etching of Anaxarete Seeing the Dead Iphis (1606) condenses the story into a single image, in which Iphis hangs dead, and Anaxarete has just been transformed into stone in front of him, in what is really a form of multiplex narrative.
Virgil Solis adheres more rigorously to Ovid’s account, in his Iphis and Anaxarete, which must have been engraved before Solis’ death in 1562. His multiplex narrative incorporates two separate scenes: in the left foreground, the body of Iphis has been discovered hanging outside the door to Anaxarete’s house. In the right distance, Iphis’ corpse is carried to his funeral pyre, with his mother in close attendance, as Anaxarete looks on from her balcony, and is turned to stone.
Having tried trickery and his cautionary tale, Vertumnus is still getting nowhere with Pomona, so he transforms himself back into his own form, as a young man, which finally wins her heart. This brings Ovid’s conclusion that deception will fail, and success can only come through honesty.
It’s that outcome that Peter Paul Rubens hints at in his late oil sketch of Vertumnus and Pomona of 1636. There is now no pretence that Vertumnus is a woman: he lacks breasts, and even has heavy beard stubble. However, the embrace of his right arm still brings Pomona to push him away with her left arm.
Perhaps the outstanding depiction of this wonderful story is Rubens’ earlier and finished Vertumnus and Pomona from 1617-19. Vertumnus has assumed his real form, that of a handsome young man. Pomona looks back, her sickle still in her right hand, and her rejection of his advances is melting away in front of our eyes. Rubens even offers us a couple of rudely symbolic melons, and provides distant hints at Vertumnus doing the work in the garden while Pomona directs him, at the upper left.