FreeRTOS Benchmarking

sindhukrishna wrote on Friday, January 23, 2015:

Greetings FreeRTOS Team !

I wish to benchmark the FreeRTOS v8.1.2. Is there any comparison document that shows the Performance Metrics results for FreeRTOS and other OS(like uCOS, RTLinux etc). Kindly share the information if available. It would be useful if the results are based on Hercules Safety TMS570 based MCUs.

Thanks in Advance !

rtel wrote on Friday, January 23, 2015:

There are no such documents, as to publish such a thing would breach
license terms of FreeRTOS (and some other OSes).

There are lots of reasons for that:

  1. There is no real way of directly comparing one with the other as the
    API functions will do slightly different things.

  2. Comparisons are always inaccurate and lead to bad feeling and
    arguments in the community.

  3. Metrics published by industry insiders are always skewed.

  4. To benchmark a system you have a very deep understanding of the
    system (how to tune it, for example in FreeRTOS turn off asserts, turn
    of stack overflow checking, select the most appropriate function [task
    notifications instead of semaphores], etc., etc.) and you cannot have
    that level of understanding of all the systems you are benchmarking.
    The fact you are looking for something that compares FreeRTOS with
    RTLinux already shows you are wanting to compare products of massively
    different scale that are designed to achieve different goals.

  5. You cannot benchmark robustness, support quality, ease of use or
    documentation standards, etc.

  6. Different systems are designed with different goals. For example
    benchmarking something designed to be as small as possible, or as
    portable as possible, or as fast as possible, then making comparisons
    between all of them makes little sense.

  7. Some RTOSes have two steps to achieve what another can do in one.

  8. Most people who ask for statistics don’t know what performance they
    actually need in the first place, so are going around things backwards
    as even the slowest fattest system might be the best choice for them if
    it is fast ‘enough’ and thin ‘enough’ and it gets their part to market

  9. You can always make something faster by removing functionality. Do
    you want to have something ultra fast that doesn’t do anything?

  10. Need I go on ;o)

FreeRTOS is free to download and use - create a scenario that is similar
to what your application is actually going to do to see if FreeRTOS
meets your requirements. If it does, great, use it, its not going to
cost you anything or earn us anything. If it doesn’t meet your needs
then also great - you learned that quickly and can move onto find
something else.