When you see a new product announcement from an EDA company, it is always put in terms that make it seem as if the engineer is sitting at his or her desktop with a big server and is running the new tool to wondrous effect. But the reality in the real world is that most companies have a computing infrastructure of server farms, often several in different geographical locations, and some way of scheduling jobs. The infrastructure that makes all of this work is not as sexy as the latest FinFET extraction or double-patterning aware router. But it is just as important and can actually have as big an effect on the turnaround time for jobs and on the utilization of those server farms.
Runtime Design Automation’s NetworkComputer (NC) is the fastest of the job schedulers out there. For example, other schedulers take 40 minutes to dispatch 300,000 jobs but NC can do it in 11. The theoretical maximum, based on network latency, is 9 minutes so NC is close. In fact it is 4-10X faster than LSF and UGE with latency going from 1.6ms to 24ms.
OK, that is nice but it is probably not going to get your VP engineering to salivate. But the implications are huge. With other less smart schedulers, often many tool licenses lie unused. Simply by switching to NC the usage gets close to 100%, all of the licenses in use all of the time. To get that effect using the old scheduler requires doubling the number of licenses, which is obviously very expensive. But if you can afford those new licenses and you use NC too, then you immediately get about multiples of the capacity that you had before.
Another problem is that you are in, say, San Jose. All those licenses in Bangalore are going unused since it is the middle of the night or something. But they don’t want you to use them because when they get into work in the morning they don’t want to find the licenses have all been stolen by California. What is required is the capability to both use those licenses but still give priority to the locals so that when they want them, the jobs that are “borrowing” them are pre-empted.
What is required is a system that allows you to configure per-site allocations, and when a site is idle let other sites use that pool. But then when the idle site wakes up, usage shifts back to the defined allocations. NC can do exactly this, ensuring that a license never sits idle if someone, somewhere wants it.
For example the above graph shows this in action. The bottom of the three graphs shows jobs running in Austin and Sunnyvale. Then in the middle, India takes all those licenses for several hours. But when Austin and Sunnyvale come back at the right hand side, the Indian jobs are pre-empted and the license use returns to the US.
More information on NetworkComputer is here.