“Singularity is that point in time when all advances in technology, particularly in artificial intelligence, will lead to machines smarter than human beings” – Ray Kurzweil.
The first stirrings of artificial intelligence at Microsoft can be traced back to the launch of the auto-correct spell checker in 1993. However, the tipping point arrived 26 years later when the tech giant invested USD 1 billion in OpenAI–a dead giveaway as to where Microsoft is headed: From OS to AI. The recent acquisition of Activision Blizzard maps squarely onto Microsoft’s futuristic road map.
Microsoft is not exactly known for its moonshot projects. The company’s domination in the OS business was more distribution than a pure tech play. But now, with AI moving the goalposts, Microsoft had to step up to match the M&Ms (Mark & Musk) or risk being archaic.
Enter Singularity, again!
In the research paper titled, “Singularity: Planet-Scale, Preemptible and Elastic Scheduling of AI Workloads,” Microsoft Azure and Research teams teased the idea of a new AI infrastructure service dubbed ‘Singularity’– developed from scratch inside the labs of Microsoft.
Singularity can enable thousands of GPUs and AI accelerators to work in tandem. Devices within the infrastructure service are treated as a single cluster, ensuring max performance and no wastage of resources. The platform can also prioritise between different workloads. “While opportunistically using spare capacity, Singularity simultaneously provides isolation by respecting job-level SLAs. For example, Singularity adapts to increasing load on an inference job, freeing up capacity by elastically scaling down or preempting training jobs,” according to Microsoft.
However, this wouldn’t be the first “singularity” to make such tall claims! You may recall the Singularity codename from another Microsoft Research project from 2003.
Microsoft’s graveyard
The first decade of the 21st century was not a good time for Microsoft, with a long string of failed projects like Windows Mobile, ME, Vista, and Zune. Singularity OS was another project that never saw the light of the day.
At the time, Microsoft’s focus was solely on improving personal computing capabilities and experiences. Singularity OS was conceived as a microkernel operating system with related tools and libraries.
Singularity leveraged advancing programming languages and tools to create an environment for robust software development where programme behaviour is easier to verify and run-time errors are under check. Singularity’s extension model based on Software-Isolated Processes (SIPs) encapsulates pieces of an application or system and provides information hiding, failure isolation, and strong interfaces.
Five years later, Microsoft launched the first Singularity RDK on March 4, 2008, under a shared source license for academic use. A few months later, the RDK 2.0 was released. And then Microsoft scrapped the project. However, Singularity did spawn other operating system research projects at Microsoft. Midori, a distributed, concurrent operating system, was one of them.
Midori
Midori was more of a back-door project. In a research paper titled “Uniqueness and Reference Immutability for Safe Parallelism,” Microsoft outlined “a prototype extension to C# that extends C# so that it supports safe task and data parallelism.” Microsoft even posted a job vacancy for a software architect to “lead development of our safe concurrent programming model” aka Midori.
Midori powered all of Microsoft’s natural language search services for the West Coast and Asia, but it was never commercially released.
Singularity
“AI and machine learning is being infused into every experience in a deep way, and you’re going to see a lot of that” – Satya Nadella.
While Steve Ballmer’s Singularity focused on creating more dependable systems, Satya Nadella’s Singularity aims to drive down the cost of AI by maximising aggregate useful throughput on a given fixed pool of accelerator capacity at planet scale while providing stringent SLAs for multiple pricing tiers.
Singularity is ideal for scheduling deep learning workloads. It enables unprecedented levels of workload fungibility, allowing jobs to take advantage of spare capacity anywhere in the globally distributed fleet while still maintaining SLAs, thanks to novel mechanisms that make unmodified jobs preemptible and resizable with negligible performance overhead. Moreover, Singularity accomplishes all of this while providing a remarkably simple user experience: the user focuses solely on the ML task and is not required to consider checkpointing or elasticity; The mechanisms are infrastructure optimisations that are completely transparent to the user.While there is no word on the commercialisation use cases Singularity, the intentions are clear: Microsoft is bullish on AI.