Typical output from this sketch, when running on an isolated cell (connected only via USB-serial to sfbprog), is:
143 2477 9837132 119 2465 9837152 182 2308 9837263while typical output from this sketch running on a cell that is connected to another cell, and also via USB-serial, is:
339 1767 9837721 239 1684 9837964 250 1682 9837980
Note that packet-handling time rises a bit, which makes sense, but that alarm load actually decreases! Why? It turns out, because 'test packets' are sent on inactive faces to check for connections more often than 'keep-alive packets' are sent on active faces!
// Demonstrate the low-level 'Ticker' profiler // // Note that in many cases the 'Profile' object is more useful than // the 'Ticker' object, but since Profile is built on top of Ticker, // the latter is shown first. void setup() { // Nothing to do } void loop() { Ticker.reset(); // Reset low-level counters delay(10*1000); // Wait ten seconds to collect some data pprintf("%d %d %d\n", // Report microseconds in selected categories -- Ticker.getUsec(TICKER_PACKET_HANDLER), // packet handling Ticker.getUsec(TICKER_ALARM_HANDLER), // alarm handling Ticker.getUsec(TICKER_BACKGROUND)); // loop, etc delay(200); // Wait a bit for that output to ship.. }