Forth Benchmarks
Execution times for math functions on the QED Board or QCard Controller
The following are the execution times of common integer and floating point operations within the Forth programming language on the QED Board or QCard Controller using a clock speed of 16 MHz.
Operation | Execution time |
---|---|
Integer + or - | 4.5 μsec |
Integer * | 22 μsec |
Integer / | 49 μsec |
F+ F- F* or F/ | 90 μsec |
FSQRT | 840 μsec |
FSIN | 1.67 msec |
FLN | 1.3 msec |
3x3 Matrix* | 9 msec |
10x10 Matrix* | 0.325 sec |
10x10 Matrix inversion | 0.515 sec |
64-point complex FP FFT | 0.335 sec |
64-point real integer FFT | 0.024 sec |
128-point real FP FFT | 0.42 sec |
Task switch | 30 μsec |
Interrupt latency | 9 μsec |
Interrupt exit | 5 μsec |
The above table illustrates the raw speed of individual operations. In mixed code the speed is less. For example, the raw speed of floating point operations is about 11,000 flops, but it is typically 7300 flops in chained operations and about 6000 flops when operations are combined with fetch and store operations.
Likewise, integer operations can be done at about 38,000 operations per second, but in mixed code with operands fetched from variables and results stored to variables the speed is about 15,000 operations per second.
This page is about: Benchmarks for Math Functions in Forth Language – Execution times for floating point operations in the Forth Language on the QCard Controller or QED Board floating point execution times, Forth Language