Daniel7
Posts: 4
Joined: Mon May 04, 2015 7:14 am
Location: Niederrhein, Germany
Contact: Website

Reaction test: Windows 10 Preview vs Mono vs NetMf, Arduino

Thu May 14, 2015 12:59 pm

Hi!

i wanted to know how fast the Raspberry Pi 2 with Windows 10 Insider Preview and an Universal App will react on a signal on an input port. I built a test scenario where an arduino is the stopwatch and a device has to react as fast as possible to a falling edge from an input port (generated by a manual push button) with a low signal to an output port. This falling edge will receive the arduino stopwatch and it will stop the measurement.

I measured some other configurations, too.

Image

All values are in micro seconds.

The "Ausreißer" column means that there were rarely some measurements that were very high. Maybe because the operating system has done another task at the same time.

In the "Schleife" columns there are the results from an endless loop code whereas in the "Interrupt" columns the results from interrupt or event based code are.

Of course, the Arduino was the fastest - with the least powerfull processor. :)
I think it's because there is no operation system and no other things that will slow done the execution.

It is good to know how long the reaction time is with the different technologies. Even the slowest reaction time of 0,026 Seconds may be fast enough for most applications - but not for everything.

Keep in mind that i tested the Insider Preview of Windows 10. The results will not show the performance of the final Windows 10 version!

I made a more detailed posting on my page:
http://netmf-tutorial.de/reaktionszeit- ... n-arduino/

Hope that helps someone.

Bye,
Daniel

Update 2015-08-15: Today I measured the Pi with the final Version of Windows 10. It is eight times faster then the CTP-Version if you poll the ports directly. :D I updated the image, too.
Last edited by Daniel7 on Sat Aug 15, 2015 3:29 pm, edited 3 times in total.
http://netmf-tutorial.de

Heater
Posts: 15838
Joined: Tue Jul 17, 2012 3:02 pm

Re: Reaction test: Windows 10 vs Mono vs NetMf vs Arduino

Thu May 14, 2015 1:24 pm

You are not comparing like with like. You are using different languages all over the place.

The only common language on these platforms is C so I would like to see the results for C on all of them.

You should be able to reduce maximum response times by setting a higher priority on the process.
Memory in C++ is a leaky abstraction .

GerritV
Posts: 91
Joined: Fri May 01, 2015 4:16 pm
Location: St Catharines, ON
Contact: Website

Re: Reaction test: Windows 10 vs Mono vs NetMf vs Arduino

Thu May 14, 2015 2:12 pm

I think the bigger question (to me at least) is whether the python test is using the same device driver as the other tests.
E.g. if python on Raspbian is using GPIOmem as the Mono/GPIOMem example does, then it illustrates the driver performance impact. If so then a second choice of GPIO device driver for WinIoT seems indicated/desirable for high performance gpio work. Regardless, still have to live with the ausreissers on both OS's :-(

My reading of performance tests comparing the various languages supported by Visual Studio show that there is only a relatively small gap in performance. C#, C++, VB all end up using the same library and driver underneath for access to Gpio.

Gerrit

Daniel7
Posts: 4
Joined: Mon May 04, 2015 7:14 am
Location: Niederrhein, Germany
Contact: Website

Re: Reaction test: Windows 10 vs Mono vs NetMf vs Arduino

Fri May 15, 2015 6:31 am

Hi,

oh yes, the comparison is not to prove something scientifically. :)

It's just to get an answer whether technology X is fast enough for a specific application.

And i think Arduinos where typically coded in Arduino C, .Net Micro Framework devices in C# and RPi's on Windows 10 in... okay, don't know if there will be more C++ then C# applications.

Heater, thank you for your tip with the higher process priority.

Daniel
http://netmf-tutorial.de

Return to “Windows 10 for IoT”