The document discusses performance results of triple buffering built into a Raspberry Pi to optimize distribution of information from smart sensors. Triple buffering allows a frame to always be ready for sending, while double buffering sends the last frame but with some delay. Experiments showed that on an embedded system like the Raspberry Pi, triple buffering had lower delay times than double buffering when distributing sensor data to multiple client processes, though the differences were small. Future work is planned to apply triple buffering to distribute sensor data for parallel robot navigation and mapping processes.
Semelhante a Performance and results of the triple buffering built-in in a Raspberry PI to optimize the distribution of information from a Smart Sensor
How to Design Scalable HPC, Deep Learning, and Cloud Middleware for Exascale ...inside-BigData.com
Semelhante a Performance and results of the triple buffering built-in in a Raspberry PI to optimize the distribution of information from a Smart Sensor (20)
Bhosari ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For ...
Performance and results of the triple buffering built-in in a Raspberry PI to optimize the distribution of information from a Smart Sensor
1. 11th International Symposium on Distributed Computing and Artificial Intelligence.
Salamanca, 4nd-6th Juny, 2014
Performance and results of
the triple buffering built-in in
a Raspberry PI to optimize the
distribution of information
from a Smart Sensor
Jose-Luis Jimenez-Garcia, Jose-Luis Poza-Lujan,
Juan-Luis Posadas-Yagüe, David Baselga-Masia,
José-Enrique Simó-Ten
School of Engineering in Computer Science (ETSINF)
University Institute of Control Systems and Industrial Computing (ai2)
Universitat Politècnica de València (UPV) (Spain
2. 11th International Symposium on Distributed Computing and Artificial Intelligence.
Salamanca, 4nd-6th Juny, 2014
Why smart sensors?
Use of sensors in robot navigation:
Survival behaviours reactive navigation simple
sensors
Complex behaviours deliberative navigation has
been used information from reactive information
sensors
Currently, robots need sensors associated to
behaviours.
However, this information is useful to build an
environment map or to locate specific objects during
the navigation
The information that a sensor produces is interesting it
to be distributed to different behavioural processes
3. 11th International Symposium on Distributed Computing and Artificial Intelligence.
Salamanca, 4nd-6th Juny, 2014
Components
From sensor to smart (intelligent) sensor (device)
Arduino
Intel
Galileo
Raspberry
PI
Reliability
(and price)
Computing
Computing
Reliability
(and price)
Temperature
PIR RGB-D
SENSORS
CONTROLLERS
+
4. 11th International Symposium on Distributed Computing and Artificial Intelligence.
Salamanca, 4nd-6th Juny, 2014
Problems
Intelligent sensor : pre-processing and
Distributing the sensor data
Intelligent Sensor
RGB image
Depth map
Acquisition Process
···
Distribution
···
···
···
···
Clients
Smart Resource
QoS
5. 11th International Symposium on Distributed Computing and Artificial Intelligence.
Salamanca, 4nd-6th Juny, 2014
System
Real Robots
xTion
Raspberry Pi
USB
OpenNI
OpenCV
TCP Server
Ethernet
Smart Resource
Robots
TCP
Client
Control
Simulation
Real implementation
6. 11th International Symposium on Distributed Computing and Artificial Intelligence.
Salamanca, 4nd-6th Juny, 2014
Buffering techniques
Sensor acquisition
Sensor distribution
Solution
1: Wait()
2: Swap()
3: Send()
1: I 0
2: Adquisition() frame
3: while I < frame.MaxPixel
do
4: frame.Process()
5: end while
6: Swap()
7: Signal()
9. 11th International Symposium on Distributed Computing and Artificial Intelligence.
Salamanca, 4nd-6th Juny, 2014
Double buffer in front of triple buffering
Triple There is always a frame ready to be sent
Double Always sends the last frame
Optimization
Time
Triple buffer
Send
i
Acquisition
& Process
Frame delay (i+2)
Frame Period
i+2 i+5
i i+3
Double
buffer Send
i+8
i+10 i+11i+9i+8i+7i+6i+5i+4i+3i+2i+1i
Frame delay (i+3)
i+9i+6
10. 11th International Symposium on Distributed Computing and Artificial Intelligence.
Salamanca, 4nd-6th Juny, 2014
Real system to measure double vs triple
buffering methods
Experiments
Control
Distributing
11. 11th International Symposium on Distributed Computing and Artificial Intelligence.
Salamanca, 4nd-6th Juny, 2014
Smart sensor introduces a frame delay
Buffering vs number of clients
Results
1 client 2 clients 4 clients
Variables PC RPI PC RPI PC RPI
Simple buffer 67350 3176925 66936 592390 66945 1293636
Double buffer 67350 203086 66936 334824 66945 640506
Triple buffer 66940 199647 67386 332900 66930 611752
𝑇𝑓𝑟𝑎𝑚𝑒_𝑑𝑒𝑙𝑎𝑦 = 𝑡 𝑎𝑑𝑞 +𝑡 𝑤𝑝 +𝑡 𝑝 + 𝑡 𝑤𝑠 + 𝑡 𝑠
12. 11th International Symposium on Distributed Computing and Artificial Intelligence.
Salamanca, 4nd-6th Juny, 2014
Conclusions
Powerful computer (PC) differences between
the types of buffer are not significant.
An embedded system provides less efficient
results (delay times) but…
Double buffer offers the last frame with
some delay time.
In triple buffering there is always a frame
available to be sent.
13. 11th International Symposium on Distributed Computing and Artificial Intelligence.
Salamanca, 4nd-6th Juny, 2014
Future work
How the buffer used affects to robot navigation?
Reactive behaviours require information as quickly as
possible so the triple buffer seems the most appropriate
method. However, the immediacy of the double buffer,
can improve certain non-critical behaviours as tracking
paths, due to they provide latest information, but with
less immediacy.
As future work, it is planned to adapt the triple buffer to
a system where the obtained data from the intelligent
sensor would have several distinct parallel processes, in
example, locating free paths to the robot trajectory at
the same time that interesting objects to surrounding
maps generation are detected like corners, walls or door
steps.
14. 11th International Symposium on Distributed Computing and Artificial Intelligence.
Salamanca, 4nd-6th Juny, 2014
Thanks for your attention