Guest Blogger Ziyad Hanna, Chief Architect and VP of Research, Jasper Design Automation
Hanna is responsible for advancing Jasper’s breakthroughs in formal verification technology, core engines and system architecture. Prior to joining Jasper he was Intel’s senior principal engineer and the main leader of the Formal Technology Research and Development Group in the Design and … More » Think Parallel First, Then Cloud for EDAJuly 20th, 2010 by Ziyad Hanna, Chief Architect and VP of Research, Jasper Design Automation
Cloud computing was the subject of much interest and discussion at this year’s DAC. While I acknowledge that the cloud will play an increasingly important role in our business, its displacement of today’s semiconductor design practices is easily a decade or more away. The attraction of the cloud is to increase one’s access to raw computing power and software. If you need more speed, or a specialized program, just grab it and go. But the hard work and differentiation for our customers is still done in the trenches, not up in the sky. They are not about to put their proprietary designs on some server, somewhere, or give up their customized and optimized design flows. What can we in EDA do for them today to help with increased design complexity and the need for higher performance? For me the answer lies in maximizing throughput by leveraging the advantages of parallel computing. This is also a subject of great debate within our community, often involving the technical difficulties of parallelizing EDA software (particularly legacy software) and its impact on traditional business models. These are real challenges, but so are the benefits to our users when we get it right.
There are myriad technical questions to address: What parts of the software to parallelize? How to avoid dead locks, live locks and race conditions? Is it possible/feasible to adapt legacy software for parallel applications and at what cost? How scalable will the parallel software be? What about resource allocation and tracking? These are in addition to many other deep technical challenges known from the parallel computing world. There are also real business implications with dramatic performance improvements such as recognizing appropriate value when tool efficiency goes up dramatically. I’ll address the business case briefly. Our job in EDA should not be to limit productivity, but to maximize it. At Jasper we always sell based on a customer’s ROI, and how much real value we add to their organization. That shouldn’t be based on volume purchasing, but on the effectiveness of our solutions. Another success for us came by moving intelligent task distribution management into the designer’s hands with our ProofGrid and ProofManager products. This has enabled the dynamic allocation of properties, proof engines and licenses over a computer network for parallelism and efficiency to significantly raise formal verification throughput and performance by leveraging the power of local machine, cluster, and computer farms. It also provides seamless and powerful distribution and collaboration management for proof engines running on the network under a unified tracking console. The result is greatly enhanced productivity as users are freed from manually separating and dispatching multiple, single runs and then collecting the results for each. It’s important to look ahead to the advent of game-changing technologies such as cloud computing, but we should not neglect the opportunity presented to us today to help our customers by speeding the adoption of parallel execution of EDA tools. |