Will an ATmega2560 board be faster than a Uno for hard real-time data logging? I am designing a hard real-time data logger. The Uno is a bit marginal in processing speed.

a) Would it be faster if I changed to an ATmega2560?

b) On the datasheet, ATMEGA2560 has 135 instructions; it is 4 instructions more than the ATmega328p.

What are the extra 4 instructions for?

Are they involved in floating point maths? 

c) How to select compiler option for fastest code at the expense of bigger code size, longer compilation time, etc.?

The system is:


Receive data from wireless transceiver chip via hardware SPI port.
A good portion of the time is spent on data calculation using floating point maths.
Output processed data on serial port (then to PC via the Arduino board USB to Serial chip).
Code and RAM size is not an issue, Uno has plenty space left.
No, it will not be any faster. The extra instructions are to access the extra flash memory of the 2560. Instructions like EIJMP - Extended indirect jump, EICALL - Extended indirect call, etc.

The compiler option -O3 optimises the most, but there are other options you can enable, such as -funroll-loops which will cause major code bloat but speed things up.  Read the GCC manual pages to boggle at all the millions of optimisation options.

Or... use a faster chip, like an ARM or PIC32.