- Download Webinar: RVS/Deos for Multicore
RapiTimeZero | Zero-footprint timing analysis for critical software
RapiTimeZero is an execution time analysis tool that requires no project source code or modification of the development environment being used. To extract execution time information, RapiTimeZero analyzes branch trace information collected from a compatible target or data collection mechanism.
As part of the RVS toolsuite, it forms part of a software verification solution that also includes tools for structural coverage analysis and functional testing.
RapiTimeZero uses two inputs from which to produce execution time results. The first of these is a branch trace collected while the program under analysis is executed, while the second is a disassembly of the executable. From these, it can understand both the program structure and the events that occurred during the program execution, allowing it to perform execution time analysis and produce execution time results.
RapiTimeZero extracts information on program execution from a branch trace that must be collected while the program under analysis is executed. This branch trace may be produced by target hardware or collected using a specific data collection mechanism such as a Lauterbach debugger.
For a list of currently supported platforms, see our RapiTimeZero Hardware support.
RapiTimeZero calculates the high and low water mark paths through your program and collects minimum, average and maximum execution times for your code.
RapiTimeZero does not currently collect worst-case execution time results, but we are developing a solution to do so. This requires more in-depth analysis of collected branch traces than that required for analysis of other execution time metrics.
For more information, contact email@example.com.
If you need to collect worst-case execution time results, you can do so using RapiTime.
If your source code is available, yes. By importing your source code and debug symbols into your RVS project, you can view your results in the context of both your object and source code, and trace between them.
As with all RVS tools, RapiTimeZero supports data collection on multicore architectures. To analyze the timing behavior of multicore architectures, RapiTimeZero simply needs to know which branches corresponded to which core during program execution. This information can either be inferred by providing an individual branch trace for each core, or a combined trace that includes information on the core on which each branch was taken.
RapiTimeZero includes a Rewind Trace utility, which lets you step through the events that occurred during program execution like you can with a debugger. This lets you set breakpoints and easily analyze the execution of your program.
As RapiTimeZero analyzes object code directly to produce results, it supports any language that targets machine code.
RVS tools are designed to handle very large code bases. Because of the efficient algorithms used by RVS tools, there is no fundamental limitation to the number of lines of code that RVS can process, and our RVS tools have been used on projects with millions of lines of code.
We offer both “Node-locked” and “Floating” licenses, and a license server to support use of our tools in your specific development environment. Floating licenses follow the “Enterprise” model, meaning that you can use our tools across geographical boundaries and different projects and users.
For more information on our licensing models, see our RVS licensing FAQs.
All RVS licenses include access to our dedicated in-house support team, who will work with you to provide a rapid fix to your issue. This is a critical part of our vision. During 2016, we responded to 97% of new support requests within one working day, closed 56% of these within 3 working days and 91% within 20 working days. We also inform our customers of known issues via our website and email.
We provide an extensive set of RVS documentation with each of our products, and offer training courses guiding you through the most effective use of RVS tools. All our users can benefit from privileged access to our website, which includes downloads for new product releases.
Zero-footprint RVS tools require that a branch trace is collected during program execution. Branch traces can be automatically generated by compatible targets or can be collected while the program operates using external devices. To interface with development environment, a Platform Support Package is needed.
Here are some examples of PSPs that we've prepared:
- No OS on x86 in QEMU
- No OS on ZCU102 with Lauterbach® TRACE32® debugger
- FreeRTOS on ARM M3 in QEMU
- FreeRTOS on R-Car Salvator-X with PARTNER-Jet2 debugger
- FreeRTOS on ZCU102 with Lauterbach TRACE32 debugger
- RV850 RTOS on RT850G4M with Lauterbach TRACE32 debugger
- eMCOS on R-Car Salvator-X with PARTNER-Jet2 debugger
For more information, and to see if we can add support for your development environment, contact firstname.lastname@example.org.