Free Memory : pas le même résultat

Pour ce qui est de la charge CPU, comme le dit Skywodd ce n'est pas aussi immédiat.
Mais normalement, une application Arduino tourne avec loop()
Donc on peut considérer que plus souvent on fait des tour de loop(), moins le CPU est chargé.
Plus longtemps dure l'exécution de loop() (et donc moins de tour on effectue) plus le CPU est chargé.

Dans une application j'ai fait une estimation de la charge CPU à l'aide de la LED de la carte (PIN13) en éteignant la LED à l'entrée de loop() et en l'allumant sur la dernière ligne.
Plus l'exécution de loop() est courte, plus la LED est allumée.
Plus l'éxécution de loop() s'allonge, plus la LED diminue d'intensité.

On pourrait aussi faire une estimation en mesurant le nombre de tour de loop() par unité de temps.

Ca ne reste qu'une estimation et considère de programmer l'Arduino d'un façon absolument non bloquante (pas de delay, pas de boucle bloquante ou d'attente).
Mais c'est de toute façon la seule manière de programmer efficacement une plateforme telle que l'Arduino sans ordonnanceur de tâches.