The easiest part of verification is buying the right capacity... The most expensive part is getting it wrong
Companies lose millions by overspending, or underspending on hardware verification
Overspend on your engineering platform erodes return on investment and business performance, while underspend threatens delivery confidence, product quality, and reputation.
​
Both are costly. Both are avoidable.
​
Silicon Insights' CAPACITY Manager™ shows clearly which side of the line your organisation is on — and how to optimise before decisions become irreversible.
​
Click here for an overview of CAPACITY Manager™.
​​
The capacity management problem
Good resource forecasting is critical to achieving predictable verification for modern hardware semiconductor development projects and programs.
​
Such projects can consume vast amounts of computer hardware & infrastructure plus EDA design and verification tool license resources.
​
Good forecasting allows engineering teams to plan and provision resources so that projects deliver on schedule, and meet quality targets, within expected costs.
​
However, forecasting can be time consuming and hard to do well, and if the forecasts turn out to be mostly inaccurate, then the benefits to effort ratio is low.
​
​
​
​
​
​
​
​
​
​
​Too often, teams use spreadsheets driven by incomplete data, where re-spins take ages to be generated, often creating spurious results nobody can quite believe.
​
Introducing Capacity Manager™
CAPACITY Manager™ is a web-based app that can be served from any server running standalone, within an on-prem compute estate, or within a cloud service. The application is
deployed using Docker and Kubernetes. The application enables users to quickly generate highly plausible and analysable forecast data, using a stochastic layered bottom-up approach.
​​
The Main Table​ contains all project details, including run times for hardware or tools running tests, and hardware characterisation information. Show Chart allows users to pop-out charts for specific projects, then dynamically change views by clicking in the key legend.
​​
​
​
​
​
​
​
​
​
​
​
​
​
Main Chart is the visualisation of all projects chosen by the user and features a pop-out capability to allow for generation and visualisation of mutliple scenarios for visual comparison purposes.
​
​The Console gives real-time information​ about extraction and loading of data by Forecast Manager.​​​
​
​


​Forecast generator
CAPACITY Manager™ uses YAML files as the primary input source for forecast table generation. Dataframes are generated and stored in the internal PostgreSQL database. YAML input files follow a defined structure.
Users have full control over the characteristics of the resource, names and dates of phases, the numbers of jobs per phase and the input lists of activities and targets applicable for each resource. The generator allows users to choose activity and target for each job depending on the user defined weights. This flexibility gives the user total control over the output of the generator and enables the user to generate “highly plausible” forecast scenarios for consideration.​
​
Four different resource classes are supported for forecasting: -
-
Compute – CPU Server estate used running of EDA D&V tools.
-
Emulation – Emulator/s used for hardware accelerated verification activities, software development, design power analysis.
-
FPGA – FPGA Prototyping system used for hardware accelerated verification, software development.
-
People – forecast the number of different engineer skill sets required over the product development lifecycle by building a bottom-up activity-based forecast.
Import actuals data
Capacity Manager™ comes with a pre-installed demo library of YAML forecast bias files. Users can explore these demo bias files, generate forecasts and experiment with different bias settings using the built-in YAML editor.
​
In addition, Capacity Manager™ can import data from the users’ product development environment so the user can improve forecasting by basing scenarios on actuals or legacy data. These can be imported to the tool for analysis and comparison against forecasts.
Capacity Manager™ will reverse-engineer a bias input file from the imported actuals data, giving users an excellent starting point for new forecasts and an easy way to build the layered forecast models that are unique to their product development workflows.
​​Compares actuals vs forecastsnerator
​Capacity Manager allows comparison of acutal/ legacy vs forecast data so users can visually check one against the other as part of scenario generation process.
​
​
Process and governance
CAPACITY Manager™ has a built-in workflow capability allowing users to promote favourite scenarios for further investigation. These can then be approved, rejected or saved. Each is given a unique id so it easily identified for future consultation and auditing.
​
Capacity planning
Capacity Manager™ offers an aggregated view of all projects within the current and future roadmap, allows project leaders to visualise and understand what platform and tool capacities will be required to meet the roadmap demands.
​
​
​
​
​
​
They can see where the demand peaks are likely to arise, and plan how to meet those capacity demand peaks, or how to re-baseline product plans to align with infrastructure budgets. Understanding the overall compute/tool costs will help product teams to reason about product ROI.



Planning
Add project milestones to the forecast scenario to generate more plausible views that align with engineering resource planning.
​
​​​

Forecast capacity shortfalls​
Generate a current capacity graph overlaid on forecasted requirements to illustrate when a capacity crunch is likely to hit - a "do nothing" scenario. This demonstrates the size of capacity shortfall, so the user can generate proposed scenarios to hypothesise what extra resource investment is required over the forecast period. Balance investment against timescales and acceptable quality of product.

If you would like to learn more...
Silicon Insights have written a paper "Plausible Forecasting" which is in "Whitepapers", here.

