FlowTracer™ : Design Flow Infrastructure Software

FlowTracer™ is versatile and powerful infrastructure software (with built-in job scheduling) for design flow development, management, and parallel execution.  Any engineer, programmer, or IT professional who is used to implementing and managing flows with scripts or GNU Make will find FlowTracer™ a superior solution. Through its visualization and troubleshooting capabilities, complex design flows can be easily understood, maintained, and expanded.  In conjunction with its job scheduling capabilities, parallelism within a flow is automatically identified, resulting in optimal execution with potentially dramatic speedup. 

Use FlowTracer™ to accelerate builds, to speed up regressions, and to accelerate converted Make builds.  Speedup of 10x-20x for converted flows is common.

FlowTracer™ allows its users to describe design flows in a simple and readable format. The tool captures the design flow, identifying all inputs and outputs, and determines the dependencies between them. Dependencies can be files, other jobs, or of an artificial nature.  FlowTracer™ manages the design flow in its entirety, providing powerful visualization, debugging, and control capabilities. Drive design flows with the click of a mouse, or via the command-line interface.

Features

  • FlowTracer dependency graphPowerful GUI with dependency graph visualization capabilities and design flow controls.
  • Describe flows in FlowTracer's™ flow description language (FDL), a format that is easily readable and maintainable, unlike Makefiles.
  • Interfaces with job schedulers, such as our NetworkComputer™ and Platform Computing's LSF™.
  • Automatically capitalizes upon parallelism opportunities.
  • Ability to import Makefiles, allowing for the use of existing design flows. Discover problems with your Make-based design flow with FlowTracer's™ powerful visualization capabilities.
  • Using our patented runtime propagation control (RPC), FlowTracer™ detects and updates your design flow status as tools execute. Unlike Make-based design flows, you do not have to describe 100% of the dependency information up front to achieve efficient and accurate design flows.

Performance

FlowTracer™ is the industry's first and only general purpose design flow dependency management tool of this caliber. Whether you are working with lengthy EDA tool flows, massive software builds and test suites, or complex mathematical analysis flows, FlowTracer™ can get the job done in the most efficient manner possible. Our customers have reported up to 10x speedup in total design flow execution time over using Make.

The FlowTracer™ server stores design flows in memory. This allows for quick detection of dependency changes, obsoleting the requirement to run a command that crawls through countless directories and files to determine just to determine if something has changed. Changes are detected automatically and shown in the design flow visualizer as they occur. Failed jobs are stopped and can easily be re-executed without impacting valid jobs in the rest of the flow. This reduces design flow execution times and unnecessary utilization of hardware and software resources.

Unprecedented visibility and control of your design flow

The FlowTracer™ console provides a hierarchical view of the desing flow, push-button control of the design flow execution, and powerful debug capabilities for problematic jobs. View job output with just a couple of mouse clicks to pinpoint failure reasons. View and traverse the dependency tree to see how the design flow is related. Perform an impact analysis, which provides an estimate of execution time for a proposed file change.

FlowTracer console

Sensitive project information can be organized and tracked in hierarchical sets, allowing for visualization and control of specific portions of your design flow. For example, separate your large ASIC design by functional sets -- synthesis, static timing analysis, simulation, and more. Control jobs individually, in sets, or globally. Search massive design flows for jobs and files, and view the status of connected computing resources and jobs that are waiting on resources.

FlowTracer browser interface

FlowTracer™ also includes a web browser interface so you can monitor and control your design flow remotely, regardless of your current platform. Allow your manager or other team members to view your progress quickly and easily. See how many jobs and how much execution time is left in a running design flow, on-demand and in real-time. Delegate control of your design flow to a team member if you are unavailable. A full command line interface acts as the primary interface with the system. All of the power of the tool is available via self-documented commands. FlowTracer™ provides a powerful and flexible environment management mechanism to ensure that jobs are always executed in the proper environment. Using parameterized, named environments allows users to setup a tool to run in a design flow, or in an interactive shell, in seconds with a simple command. Also, named environments enable cross-platform job submission.

No third-party software is needed. FlowTracer™ includes all of these features out of the box, no additional installations are required.

FlowTracer™ in action

Video best viewed in full screen mode

Documents

FlowTracer™ datasheet
FlowTracer™ whitepaper by RTDA
FlowTracer™ whitepaper by RockwellCollins

External links

LinkedIn FlowTracer™ Users Group
LinkedIn Presentation about FlowTracer™
The Art of Flows Book on Lulu.com (hard and soft copies available)