Your browser does not support JavaScript! Skip to main content
Free 30-day trial Customer portal Contact
 
Rapita Systems
 

Industry leading verification tools & services

Rapita Verification Suite (RVS)

  RapiTest - Unit/system testing   RapiCover - Structural coverage analysis   RapiTime - Timing analysis (inc. WCET)   RapiTask - Scheduling visualization   RapiCoverZero - Zero footprint coverage analysis   RapiTimeZero - Zero footprint timing analysis   RapiTaskZero - Zero footprint scheduling analysis

Multicore verification

  CAST-32A Compliance   Multicore Timing Solution   RapiDaemons

Services

  V & V Services   Qualification   Training   Tool Integration  Support

Industries

  Aerospace (DO-178C)   Automotive (ISO 26262)   Space

Other

  RTBx   Mx-Suite   Software licensing   Product life cycle policy

Latest from Rapita HQ

Latest news

Rapita hosts SCADE webinar with ANSYS
FACE Virtual Technical Interchange Meeting
RVS 3.14 Launched
Propelling the next generation of scientists
View News

Latest from the Rapita blog

Software verification on the Solar Orbiter
Metrowerks CodeTest - How and why to upgrade
Leveraging FACE Conformance Artifacts to Support Airworthiness
Assured Multicore Partitioning for FACE Systems
View Blog

Latest discovery pages

matlab_simulink MATLAB Simulink MCDC coverage and WCET analysis
code_coverage_ada Code coverage for Ada, C and C++
amc-20-193 AMC 20-193
embedded_software_testing Embedded Software Testing Tools
View Discovery pages

Upcoming events

Future Airborne Capability Environment (FACE) Exihibition
2021-09-14
FACE Technical Interchange Meeting
2021-09-14
Aerospace TechWeek 2021
2021-11-03
Safe Use of Multi-Core Processors Seminar
2021-11-10
View Events

Technical resources for industry professionals

Latest White papers

Multicore Timing Analysis for DO-178C
Seven Roadblocks to 100% Structural Coverage (and how to avoid them)
Eight top code coverage questions in embedded avionics systems
View White papers

Latest Videos

Efficient testing with RVS and ANSYS® SCADE® Test™
Enabling cost-effective modular avionics with FACE
Streamlined software verification thumbnail
Streamlined software verification with RVS 3.14
Qualification guidance thumbnail
Clear qualification guidance with RVS qualification kits
View Videos

Latest Case studies

Cobham Aerospace Connectivity: RapiCover continues to deliver on the most challenging targets
DO-178B Level A Embraer FCS
Validation of COTS Ada Compiler for Safety-Critical Applications
View Case studies

Other Downloads

 Webinars

 Brochures

 Product briefs

 Technical notes

 Research projects

Discover Rapita

Who we are

The company menu

  • About us
  • Customers
  • Distributors
  • Locations
  • Partners
  • Research projects
  • Contact us

Careers

Careers menu

  • Current opportunities & application process
  • Working at Rapita

US office

+1 248-957-9801
info@rapitasystems.com
41131 Vincenti Ct.
Novi, MI, 48375
USA

UK office

+44 (0)1904 413945
info@rapitasystems.com
Atlas House
York, YO10 3JB
UK

Back to Top

Breadcrumb

  1. Home
  2. RVS
  3. RapiTime
RapiTime

In-depth execution time analysis for critical software

Why choose RapiTime?

  •  Timing analysis (inc. WCET) for Ada, C & C++ on-target & host
  •  Identify code to optimize for worst-case behavior
  •  Debug rare timing events
  •  Simplify verification through integration with your CI tool
  •  Produce evidence for DO-178 and ISO 26262 certification
Multicore timing white paper Request a demo
  • Overview
  • Features
  • Resources
  • Compatibility
  • FAQs

Timing analysis (inc. WCET) for Ada, C & C++ on-target & host

By automating code instrumentation and the collection of timing metrics on target, RapiTime reduces the effort needed to understand and verify your code’s timing behavior. Flexible integration strategies ensure efficient verification, regardless of your target hardware.

RapiTime’s hybrid worst-case execution time (WCET) calculation leverages the benefits of static analysis and measurement-based approaches to produce WCET results that represent behavior on the real system and provide a safe upper bound on WCET while minimizing pessimism.

Automatically analyze timing
Optimize for worst-case behavior

Identify code to optimize for worst-case behavior

Optimizing code to improve average case performance often has little effect, and may even have a negative effect, on worst-case timing behavior.

RapiTime helps you identify the code elements that have the highest contribution to your system’s worst-case timing behavior. This helps you focus your optimization efforts on the sections of code that are most likely to affect your code’s worst-case behavior.

Debug rare timing events

During program execution, many events occur, and debugging the source of issues like rare timing events can be like searching for a needle in a haystack.

RapiTime helps you debug rare timing events in your code by letting you step through your program execution step by step as you would with a code debugger.

Debug rare timing events
continuous integration

Simplify verification through integration with your continuous test tool

Keep your verification on track by using RapiTime alongside your continuous integration tool. Collect timing results and track your project’s progress over time with our plugins for Jenkins and Bamboo.

By analyzing your code with RapiTime on every new build, you can easily identify anomalies in execution time results as they happen.

Produce evidence for DO-178 and ISO 26262 certification

Get ready for DO-178C certification with our qualification kits. Our off-the-shelf qualification kits and qualified target integration service help you on the road to qualifying your use of RVS.

Many features of RVS are qualified, including our instrumentation, which has saved customers like Collins Aerospace a huge amount of manual effort.

produce certification evidence

Product features

  • Timing analysis
  • Integrated testing environment
  • Project navigation
  • Integration with build systems
  • Integration with embedded targets
  • Integration with third party tools
  • Language support
  • Licensing
  • Support and training
  • Qualification
  • Execution time analysis Analyze the execution time behavior of code as tested on the embedded hardware.
    Discover this feature
  • Worst-case execution time analysis Produce WCET metrics through a hybrid measurement-based/static analysis approach.
    Discover this feature
  • Optimize code for timing performance Easily identify code with the the greatest impact on timing performance.
    Discover this feature
  • Produce certification evidence Produce evidence for certification by following a recommended workflow that focuses analysis.
    Discover this feature
  • Capture values from performance counters Capture and view values from performance counters on your multicore platform.
    Discover this feature
  • Automate testing on host and target Run tests on host computers and test rigs in continuous build environments.
    Discover this feature
  • Efficient integration workflow Configure integrations of RVS into your development environment quickly and easily.
    Discover this feature
  • RVS Project Manager Take your test project from creation to completion with an intuitive user-interface. 
    Discover this feature
  • Efficient, configurable analysis Apply instrumentation based on your functions' expected execution frequencies.
    Discover this feature
  • Shared integration with instrumentation-based RVS tools After integrating one RVS tool to work a development environment, it is trivial to use others. 
    Discover this feature
  • Portable test environments Multiple users can share the same test environment.
    Discover this feature
  • Easily configurable analysis Apply analysis settings easily using a friendly user interface.
    Discover this feature
  • Compare reports Compare reports from different builds to track project progress over time.
    Discover this feature
  • Customizable workflow Customize the RVS workflow to best meet your needs.
    Discover this feature
  • Template integrations Create and use template integrations to reduce your effort integrating RVS with your system.
    Discover this feature
  • Customizable color scheme Customize the color scheme used to display your results.
    Discover this feature
  • Comprehensive verification toolsuite One tool to meet all your software verification needs.
    Discover this feature
  • Configurable export formats Export timing results in a variety of formats.
    Discover this feature
  • Timing analysis during unit testing Collect execution time metrics during unit testing to support timing optimization throughout the software life cycle. 
    Discover this feature
  • View detailed timing metrics at a glance Specialized charts and tables make it easy to focus your analysis.  
    Discover this feature
  • Execution Time Profile Chart View a histogram of your software's timing behavior to easily identify patterns.
    Discover this feature
  • Invocation Timeline Chart A timeline of your invocations helps you visualize the order of calls and how long each took to execute.
    Discover this feature
  • Aggregate Profile Chart A configurable chart helps you visualize timing data in the context of your code's call tree.
    Discover this feature
  • Rewind Trace Step through execution traces to investigate timing events using a debugger-like interface.
    Discover this feature
  • Code viewer View code with syntax highlighting and color-coding of results.
    Discover this feature
  • Easily filter results Easily filter results to focus your analysis.
    Discover this feature
  • Advanced search function Search reports for specific elements using advanced queries. 
    Discover this feature
  • Treemaps View coverage and hierarchy of code at a glance.
    Discover this feature
  • Integrate with existing build systems Collect data from almost any build system.
    Discover this feature
  • Compiler wrappers The recommended build integration strategy requires little if any change to the development environment.
    Discover this feature
  • Clone integration Copy the build system to build and test code with RVS.
    Discover this feature
  • Multicore support Verify critical multicore systems.
    Discover this feature
  • Low target overheads Fit more tests on your target and reduce the number of builds you need to run.
    Discover this feature
  • Flexible integration strategies Collect data from almost any embedded target with flexible collection strategies.
    Discover this feature
  • iSYSTEM debugger Collect verification data from iSYSTEMTM debuggers.
    Discover this feature
  • Lauterbach debugger Collect verification data from Lauterbach debuggers.
    Discover this feature
  • Jenkins Run RVS automatically through Jenkins to collect and archive results.
    Discover this feature
  • Bamboo Run RVS automatically through Bamboo to collect and archive results.
    Discover this feature
  • C Support for C, Visual StudioTM, GCCTM, DiabTM and TASKINGTM compilers among others.
    Discover this feature
  • C++ Support for C++, Visual StudioTM, GCCTM, DiabTM and TASKINGTM compilers among others.
    Discover this feature
  • Ada Support for Ada 95, 2005 and 2012, GNAT ProTM and Green HillsTM compilers among others.
    Discover this feature
  • Mixed language support Support for mixed languages in the same code base.
    Discover this feature
  • Assembly Support for testing Assembly code.
    Discover this feature
  • Compiler extension editor Manage extensions to support non-standard programming languages with an interactive editor.
    Discover this feature
  • Flexible licensing options Select floating or node-locked licenses with annual or perpetual duration.
    Discover this feature
  • Floating licenses Floating licenses support multiple users and shared working environments.
    Discover this feature
  • Node-locked licenses Node-locked licenses support use of RVS within a limited geographical area.
    Discover this feature
  • Perpetual licenses License RVS for use indefinitely.
    Discover this feature
  • Annual licenses License RVS in annual increments.
    Discover this feature
  • FlexNet Publisher compatible export format License usage data is exported in a format compatible for tracking using FlexNet Publisher.
    Discover this feature
  • Easy to get started Integration and learning resources help you get started verifying your code in no time.
    Discover this feature
  • Support Dedicated support service to resolve technical issues quickly.
    Discover this feature
  • Tutorials Learn how to get the most from our verification solutions with simple, interactive tutorials.
    Discover this feature
  • Training Get up to speed with custom training courses delivered by skilled field application engineers.
    Discover this feature
  • Documentation Learn how to use RVS features with comprehensive documentation in both printed and electronic formats.
    Discover this feature
  • DO-178B/C qualification kit Qualification kits for RVS qualification in DO-178B/C projects.
    Discover this feature
  • Qualified target integration service Additional evidence to qualify the use of RVS in your development environment.
    Discover this feature
  • Qualified instrumenters Qualified instrumentation that doesn't require manual review.
    Discover this feature
  • Assurance issue notification We notify you of issues that may affect the validity of your results as soon as we identify them.
    Discover this feature

Videos

Execution time analysis with RapiTime Thumbnail
Execution time analysis with RapiTime
00:01:08 | Overview
 

Downloads

Pagination

  • First page « First
  • Previous page ‹
  • Page 1
  • Page 2
  • Page 3
  • Page 4
  • Current page 5
  • Page 6
  • Page 7
  • Page 8
  • Next page ›
  • Last page Last »

News & Blog

News
Rapita launches RapiTime DO-178B/DO-330 tool qualification pack for WCET
News
WCET analysis of on-board space software system by RapiTime
News
New C++ support product launched
News
Step back in time with RapiTime
News
Verify Real-Time Performance of VxWorks with RapiTime
News
Iterate faster: timing analysis improves productivity for embedded real-time systems development

Pagination

  • First page « First
  • Previous page ‹
  • Page 1
  • Page 2
  • Page 3
  • Page 4
  • Current page 5
  • Page 6
  • Page 7
  • Page 8
  • Next page ›
  • Last page Last »

Operating Systems

Type Operating System
On-target deployment RapiTime can be used to analyze software run on any host operating system or embedded target (as long as a communication channel is available).
On-host tool Windows 7+
Windows Server 2008 R2+
Variety of Linux distributions (including Ubuntu and Red Hat)
For older operating systems, contact us.
RapiTime can be qualified for use on all supported platforms.
 

Programming languages

Language
Ada
C
C++
Mixed languages

Compilers

RVS tools can be used on projects built with almost any compiler.

The non-exhaustive list below shows some of the compilers we have worked with:

Vendor Compiler
AdaCore GNAT GPL
GNAT Pro
Arm DS-5
armcl
Borland Borland C++
Cosmic Software --
GNU GCC
G++
Greenhills Ada MULTI
C Multi
IAR Systems Embedded Workbench
Keil C51
Microsoft Visual Studio
NXP CodeWarrior HCS12
TASKING CC166
Texas Instruments CCSv6
CL500
CL2000
C6X
C28X
Wind River Diab
CCPPC

CPUs

Due to their flexible integration strategies, RVS tools can collect data from almost any target CPU.

The non-exhaustive list below shows some of the architectures that RVS tools can be used with:

Vendor Platform
Arm ARM7
ARM9
ARM10
ARM11
Cortex-M
Cortex-R
Cortex-A
Analog Devices Blackfin
SHARC
SigmaDSP
TigerSHARC
ADSP-21xx
Atmel AT90CAN128
Cobham Gaisler LEON3
Freescale (NXP) 68000
680x0
ColdFire
M-CORE
Power Architecture (MPC5xx, MPC55xx, MPC56xx)
ARM Cortex-M microcontrollers (Kinetis E series, Kinetis K series, Kinetis L series, Kinetis M series, Kinetis W series).
56k DSP family
QorIQ (P2010, P2020, P4080, P5010, P5020, P5021, P5040)
IBM PowerPC (PPC) implementations:
G1 (601)
G2 (602, 603, 604, 620)
G3 (740/750)
7xx/750 family
G5/970 series
401
403
405
440 range
Infineon
XE166 family
XC 2000 family
C166 family
TriCore
Tricore Aurix
Tricore Aurix Gen2
XMC1000

Frequently asked questions

  • General
  • Qualification and certification
  • Compatibility
  • Licensing and support
Expand All
  • What is RapiTime? 
  • How does RapiTime work? 
  • Which types of timing data does RapiTime calculate? 
  • How does RapiTime calculate the worst-case execution time of my software? 
  • Can I determine timing metrics on my target, which has limited RAM and/or ROM? 
  • Can I use RapiTime to analyze the timing behavior of multicore architectures? 
  • How does RapiTime help me investigate timing behavior? 
  • In addition to guaranteeing that timing deadlines are met, how else can I use RapiTime? 
  • How does RapiTime help me select the instrumentation to apply to my code? 
  • How do I determine the execution time overhead from instrumenting my source code? 
  • Can statistical modeling approaches be used to provide support for timing measurements? 
  • How is my data presented? 
  • My software is part of a product that must be certified against a safety guideline. Can RapiTime be qualified for use in my project? 
  • How do I verify my software’s functional and temporal behavior when instrumentation has been applied? 
  • Which languages does RapiTime support? 
  • How large a code base can RVS tools handle? 
  • Which host operating systems can RVS be used on? 
  • Can I use RapiTime with my build system? 
  • Can I use RVS tools with my continuous integration environment? 
  • Which hardware architectures do RVS tools support? 
  • How are RVS products licensed? 
  • What happens if I encounter an issue while using an RVS tool? 
  • How do you support RVS users? 
  • How long has RVS been used for software verification? 
  • How do I learn more about RapiTime? 
  • How do I learn more about RapiTime?

    You can request a trial version of RVS, which includes RapiTime. You can also arrange a demonstration, where a member of our team will work with you to show the benefits RapiTime can offer you.

    If you're interested in RapiTime in academia, you can search for it in the academic press. 

  • What is RapiTime?

    RapiTime is the leading tool for worst-case execution time analysis of critical software.

    Used globally in the aerospace and automotive industries, it reduces the cost of analyzing the worst-case timing behavior of critical software.

    As part of the RVS toolsuite, it forms part of a software verification solution that also includes tools for functional testing and structural coverage analysis. 

  • How does RapiTime work?

    RapiTime works by injecting instrumentation code into source code and executing the native build system so that timing results are collected during program execution. Data can be collected from almost any target hardware by a variety of approaches.

  • Which host operating systems can RVS be used on?

    RVS tools support Windows 7 or newer, Windows Server 2008 R2 or newer, and a variety of Linux distributions including Ubuntu and Red Hat.

    RVS tools can be used on projects with unsupported operating systems by using a clone integration to split the process and delegate parts of it to the unsupported machine.

  • Which hardware architectures do RVS tools support?

    RVS tools can be integrated to work with almost any embedded target. Our engineers can work with you to determine the optimal strategy for integrating the tool with your target, even for multi-core architectures. For more information on the hardware architectures we have integrated RVS tools with, see the compatibility information on our RVS product pages.

  • Can I use RapiTime with my build system?

    RapiTime can be integrated to work with almost any compiler and target hardware. Our integration service promises to deliver a robust integration of RapiTime into your build system.

  • Which languages does RapiTime support?

    RapiTime supports C, C++ and Ada projects, including mixed-language ones.

  • My software is part of a product that must be certified against a safety guideline. Can RapiTime be qualified for use in my project?

    RapiTime is designed to meet the most stringent needs of certification processes, such as the DO-178B/C process used in the aerospace industry and the ISO 26262 process used in the automotive industry. We can provide developer qualification documents, a template integration qualification report and on-site tests to support you in qualifying RapiTime tools in projects requiring certification.

  • How do I determine the execution time overhead from instrumenting my source code?

    RapiTime includes inbuilt functionality to let you determine the execution time overhead of adding instrumentation to your source code. This overhead can then be automatically subtracted from the timing metrics reported by the tool. 

  • In addition to guaranteeing that timing deadlines are met, how else can I use RapiTime?

    You can use timing metrics to optimize your code for timing behavior. RapiTime highlights the costliest functions in terms of execution time, guiding you towards the best optimization candidates. By running RapiTime again after you optimize your code, you can determine performance improvements.

  • Can I use RapiTime to analyze the timing behavior of multicore architectures?

    As with all RVS tools, RapiTime supports data collection on multicore architectures. RapiTime achieves this by suspending data collection during a task interrupt and reinitializing collection when the task on the current core resumes execution. You can also use RapiTime to identify the interference produced by other cores on your system under test.

  • How does RapiTime calculate the worst-case execution time of my software?

    The worst-case execution time reported by RapiTime is pessimistic, meaning the actual worst-case execution time of your code could not be higher than that reported by RapiTime. This satisfies the stringent requirements of embedded system certification. 

  • Which types of timing data does RapiTime calculate?

    When you run your code on-target, or on-host using a simulator, RapiTime collects several timing metrics. These include worst-case execution time, high and low water mark paths, and minimum, average and maximum execution times for each test of your code. 

  • How is my data presented?

    All RVS tools include a friendly user-interface that presents your data in both tabular and graphical formats. Using this interface, you can filter your results to zoom in on target functions, making it easy to find the information you are looking for.

    RapiTime includes charts designed to help you easily understand your data:

  • How does RapiTime help me investigate timing behavior?

    RapiTime 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.

  • Can I determine timing metrics on my target, which has limited RAM and/or ROM?

    The instrumentation overheads for RapiTime tools are very low, and zero-instrumentation overhead can even be supported in some cases, depending on your target hardware and data collection strategy. This means that you can use RapiTime with virtually any target. 

  • How large a code base can RVS tools handle?

    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.

  • How are RVS products licensed?

    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.

  • What happens if I encounter an issue while using an RVS tool?

    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. 

  • How do you support RVS users?

    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. 

  • Can I use RVS tools with my continuous integration environment?

    RVS integrates with continuous integration tools including Jenkins and Bamboo. By integrating RVS with your existing continuous integration tool, you can collect unit test, coverage, and execution time results with every new build, letting you easily identify anomalies in your software’s behavior as they happen.

  • How do I verify my software’s functional and temporal behavior when instrumentation has been applied?

    We recommend that, when producing timing evidence for certification, you use RapiTime to improve your test data so that the high watermark path and predicted worst-case path align as closely as possible and then perform task boundary only instrumentation to measure the high-watermark execution times. These values will be representative of the estimated worst case times, and the minimal level of instrumentation applied will have a negligible effect on the application's timing behavior.

  • How does RapiTime help me select the instrumentation to apply to my code?

    RapiTime automatically applies instrumentation based on a default instrumentation profile that you select. You can easily configure the instrumentation applied to specific functions or areas of your code using the RVS Project Manager.

  • How long has RVS been used for software verification?

    The Rapita Verification Suite (RVS) has been used in the critical embedded industry for over 15 years and supported a number of avionics projects globally. Qualification kits for qualified RVS products have supported more than 20 DO-178B and C certification projects up to and including DAL A.

  • Can statistical modeling approaches be used to provide support for timing measurements?

    In general, statistical modeling approaches are not applicable to timing analysis of software as software timing behavior does not fit standard statistical assumptions.

    In some cases, software timing behavior may fit standard statistical assumptions, but this is the exception rather than the rule and must be proven before relying on results from statistical modeling.


RapiTime success stories

RapiTime has been used by aerospace and automotive companies in the world for timing analysis projects.

Learn how RVS tools measured and improved the overall execution time of the flight control system on the M-346 Master.
Learn how RVS tools created a measurement-based analysis of Solar Orbiter on-board software for schedulability.
Learn how RVS tools identified major worst-case execution time optimizations on the Hawk Trainer mission computer system.
How our tools captured worst case timing and stack usage data for DO-178B Level A Embraer Flight Control Systems (FCS).
 

Request Demo

Times are in GMT

What happens next?
We aim to respond to demo requests within 1 working day. 

  • Solutions
    • Rapita Verification Suite
    • RapiTest
    • RapiCover
    • RapiTime
    • RapiTask

    • CAST-32A Compliance Package
    • Verification and Validation Services
    • Qualification
    • Training
    • Integration
  • Latest
  • Latest menu

    • News
    • Blog
    • Events
    • Videos
  • Downloads
  • Downloads menu

    • Brochures
    • Webinars
    • White Papers
    • Case Studies
    • Product briefs
    • Technical notes
    • Software licensing
  • Company
  • Company menu

    • About Rapita
    • Customers
    • Distributors
    • Industries
    • Locations
    • Partners
    • Research projects
    • Contact
  • Discover
    • AMC 20-193
    • What is CAST-32A?
    • Multicore Timing Analysis
    • MC/DC Coverage
    • Code coverage for Ada, C & C++
    • Embedded Software Testing Tools
    • Aerospace Software Testing
    • Automotive Software Testing
    • Certifying eVTOL
    • DO-178C Testing
    • WCET Tools
    • Worst Case Execution Time
    • Timing analysis (WCET) & Code coverage for Matlab Simulink

All materials © Rapita Systems Ltd. 2021 - All rights reserved | Privacy information Subscribe to our newsletter