Never miss a story from Breakfast Bytes. Subscribe for in-depth analysis and articles.
At the recent CadenceLIVE Silicon Valley, Scott Chang, the CEO of M31 Technologies, and Cadence's Philippe Hurat presented 5X Faster Library Characterization in the Cloud.
When you think of tasks in the design process that are ideally suited to the cloud, then library characterization has to be number one on the list. It involves hundreds or thousands of cells, and tens or hundreds of process corners. Each of these has to be simulated, but apart from contention over resources like machines, each of those simulations has no bearing on any other. Statistical models for on-chip variation just add to the workload. This is very different from, say, any type of simulation since, one way or another, the global concept of time has to be maintained, and there are risks of violating causality if one part of the simulation gets too far ahead of another. Even physical verification (DRC), where a large chip can be broken up into smaller tiles, has to worry about how adjacent tiles interact at their edges.
A further challenge with library characterization is that it has to be completed before the design can start, at least seriously. Many PVTs and views are needed to start the design, and all are needed for signoff Obviously, the turnaround time depends on the number of libraries, cells, corners, and so on. That means that library characterization is on the critical path for the overall design, and so cutting the time required accelerates the whole design cycle all the way through to tapeout.
With that preamble, there are millions of simulations to be done, leveraging the cheapest hardware resources, but to get the job done as quickly as possible. With that many jobs to be run, one challenge is that the system needs to be fault-tolerant and be able to recover if (or more likely, when) jobs fail. In practice, this means growing the number of CPUs that are used. It is unlikely that there are enough on-premises (on-prem) machines available since they will be tied up for weeks. Obviously, you can add on-prem hardware capacity, but that doesn't really make sense for what is an intermittent peak demand. So the cloud is obviously the answer. Again, you can roll your own and set up and install your own EDA environment. Or you can just leave it to Cadence CloudBurst, which handles everything automatically from a single menu button. For a general overview of CloudBurst see my post CloudBurst: The Best of Both Worlds.
Liberate and CloudBurst allows scaling of library characterization to literally hundreds of thousands of CPUs. This maximizes the utilization of compute resources, even though simulations vary in run-time. Since jobs are either short or can be restarted, this allows the cheapest compute resources to be used, such as AWS or Microsoft Azure spot instances, which have a huge discount but might be pre-empted. The job manager in Liberate, BOLT, can handle jobs failing or being pre-empted, and organizes incremental runs. There is also a streamlined license checkout so that that does not become a bottleneck.
Liberate has some features, such as a unified flow that enables nominal and statistical characterization together and the capability to run multiple PVTs per session, which reduces overhead by not repeating pre-processing. Liberate Trio is production-proven at all major foundries and is trusted by 22 of the top 25 semiconductor companies.
Liberate on CloudBurst addresses the three big problems in the above graphic: keeping the price of characterization down, getting the whole library characterized fast, and handling the fact that using thousands of CPUs has to cope with the inevitable failures.
Digging a bit deeper, here are the advantages of Liberate on Cloudburst:
Before looking at what Scott of M31 Technologies had to say about their experience, here is a high-level summary of the advantages of this approach, in particular, the BOLT job-scheduler that can handle an unlimited number of cores and deals with any inevitable failures where jobs crash or freeze.
Here is the video of the CEO of M31 Technologies, Scott Chang, talking about their experience with Liberate and CloudBurst.
First, the setup time was 25X faster! Installing a 10-thousand core on-prem farm is not a simple task. This was estimated to require about six months to choose the hardware, get it delivered, and have it installed. This is a highly risky and costly project. On the other hand, CloudBurst took about one week to set and was risk-free and worry-free. It was also very cost-efficient since no huge capex investment was required to enable this peak-demand project.
Second, the run itself was faster by a factor of 5X. LVF runs in their on-prem farm was evaluated to require over seven months. But using a 10-thousand CPU CloudBurst chamber allowed them to run in six weeks and still use their on-prem for nominal characterization. The fact that CloudBurst is a turnkey service reduced effort to the minimum; they just had to upload their data and launch their jobs.
M31 had extremely tight market requirements, and combining the optimal scalability, speed, and reliability of Liberate with the easy access, secure, ready-to-use, and scalable cloud solution of CloudBurst, was the right solution for them. It reduced the risk of the overall project and the burden on M31. The cost was reduced because no capex investment was needed. Plus, it was an easier and safer solution than having to install their own machines or cloud solution and minimized the disruption to their library characterization team (and other groups that would be competing with them for shared resources).
By choosing Liberate on CloudBurst where the setup of the compute environment was 25X faster and the characterization runs 5X faster, M31 was able to speed up the delivery of their silicon IP and meet their market requirements.
Sign up for Sunday Brunch, the weekly Breakfast Bytes email