The ATtiny is probably indeed faster with some float math. A lot depends on the compiler and optimizations and the float library. This test does not just test the cpu, but it is a test for the float library as well.

Did you see that float multiplication with ATtiny takes

22.61 seconds and it takes

9.81 seconds for the ATmega2560. Looking at the average of the tests I say the ATmega2560 is faster than the ATtiny

For the Arduino Uno, the numbers are almost the same as for the Arduino Mega 2560.

`time for 1 mio. plus calculations in s: 9.08`

time for 1 mio. minus calculations in s: 9.17

time for 1 mio. multiplications in s: 9.69

time for 1 mio. divisions in s: 30.83

time for 1 mio. analog reads in s: 112.00

Adding a delay after Serial.println() does not change a lot. The interrupts by the serial output have little effect.

The actual numbers themself determine the time to calculate as well.

`result = result / (dataType)1.00001; // takes 30.83 seconds`

result = result / (dataType)1.1; // takes 74.70 seconds !

That 74.70 seconds can be lowered to 9.05 seconds with: #pragma GCC optimize ("-ffast-math")

It was hard to lower the 9.08 seconds for a float add.

Using a 16-bits loop variable with two seperate for-loops to 50000 got it down to 8.90 seconds. With three for-loops in each other and byte loop variables (up to 10, 100 and 100) got it down to 8.85 seconds. That is still not as fast as the ATtiny.

Everything is as expected, the time to call analogRead() is the most interesting number.