Note: This is an obsolete section of the FreeRTOS website. If you want to view these pages but cannot see the menu frame then click here. Otherwise click here to visit the main FreeRTOS website.

Results - x86 Open Watcom
[Open Watcom + R8822 (186)]

Time measurements were obtained using an oscilloscope attached to a digital output. See the "Tests Performed" section for more details.
Results are with the development tools using optimization for speed unless otherwise stated.



16bit addition


16bit multiplication


16bit division

38.4μs with optimization, 70.4μs with no optimization.

32bit multiplication


32bit subtraction

52μs with optimization, 77.6μs with no optimization.

Bubble sort

1.07ms with optimization, 2.8ms with no optimization.

Block memory move and compare

1.65ms with optimization, 1.72ms with no optimization.

Conditional branch to procedure

132.8μs with optimization, 432μs with no optimization.

Scheduler tick function

45.6μs with optimization, 62μs with no optimization.

PUSH’ing and POP’ing


The same inline assembler was used to perform this test with both the Open Watcom and Borland compilers. The very slight discrepancy in the results obtained with the different development tools can be attributed to the setting and clearing of the digital output - which used a C function.

Copyright (C) 2004-2010 Richard Barry. Copyright (C) 2010-2015 Real Time Engineers Ltd.
Any and all data, files, source code, html content and documentation included in the FreeRTOS distribution or available on this site are the exclusive property of Real Time Engineers Ltd.. See the files license.txt (included in the distribution) and this copyright notice for more information. FreeRTOSTM and FreeRTOS.orgTM are trade marks of Real Time Engineers Ltd..