Exploiting Safe Parallelism in Wireless Sensor Networks: A Generic - - PowerPoint PPT Presentation

exploiting safe parallelism in wireless sensor networks a
SMART_READER_LITE
LIVE PREVIEW

Exploiting Safe Parallelism in Wireless Sensor Networks: A Generic - - PowerPoint PPT Presentation

Exploiting Safe Parallelism in Wireless Sensor Networks: A Generic and Reconfigurable Approach J Ueyama , Danny Hughes, Paul Grace, Edmundo R. M. Madeira Institute of Mathematics and Computer Science University of Sao Paulo (USP) Liverpool, 14


slide-1
SLIDE 1

Exploiting Safe Parallelism in Wireless Sensor Networks: A Generic and Reconfigurable Approach

Jó Ueyama, Danny Hughes, Paul Grace, Edmundo R. M. Madeira

Institute of Mathematics and Computer Science University of Sao Paulo (USP)

Liverpool, 14th December ,2012

slide-2
SLIDE 2

2

Why Parallelism?

 Parallelism is widely utilized in a diverse range of devices, such as:

  • Desktop computers
  • Smartphones
  • Sensor motes (mPlatform – by Microsoft)

 Parallelism is implemented with the aid of several tools

  • Java Threads
  • Pthreads
  • MPI
slide-3
SLIDE 3

3

How to help developers?

Generic tool?

slide-4
SLIDE 4

4

How to help developers?

Generic tool?

MPI

slide-5
SLIDE 5

5

Any problem with parallelism?

 Parallelism can bring race conditions and deadlock problems  This can be problematic particularly in critical systems such as:

  • Wireless sensor networks (WSN) monitoring

nuclear reactor

  • or for healthcare (e.g. real-time heart rate)
slide-6
SLIDE 6

6

Is parallelism a problem in all applications?

 However, not all applications would face problems with concurrency problems

  • E.g. non critical systems – WSN for car parking

 Solution?

  • We need a reconfigurable and generic approach

to handle the real world problems

  • Using a single tool
  • Advantages?
  • Less learning curve and transferable skills
slide-7
SLIDE 7

7

Our Approach: FlexPar Middleware

  • FlexPar Architecture consists of:

– Microkernel style (ensures deployment in resource constrained devices) – Extensions

  • Loaders (enables deployment of a particular style of

parallel software)

  • Binders (connects processes of a particular style)

– Parallel deadlock-free systems

slide-8
SLIDE 8

8

Essentially, a unique tool for parallel environments

slide-9
SLIDE 9

9

Diving into details of our approach

  • Some implementation issues
  • We implemented two plugins based on:
  • CSP (Communicating Sequential Processes)

– in a nutshell:

– CSP Processes (e.g. functions, methods) do not share data – Each process do not invoke functions implemented in other processes – This avoids concurrency problems such as deadlocks and race conditions.

Bob Alice

slide-10
SLIDE 10

10

The first plugin

  • The first plugin was based on
  • Transterpreter (Transputer Interpreter)
  • Virtual machine for parallel applications written in occam
  • Highly portable (~2000 lines of code in pure ANSI C)

gcc

slide-11
SLIDE 11

11

Other Tools at UKC

 JCSP (Java CSP)

– CSP library for Java programmers – One can use the CSP disciplines where JVM is supported – Advantage: CSP is reachable by the large community of Java programmers – Drawback: performance

JCSP CSP in Java

Java Developers

slide-12
SLIDE 12

12

Why not use those tools?

 The above mentioned tools have the following

limitations:

– Static configuration

  • Transterpreter, KroC (occam compiler)
  • CSP processes cannot be connected and disconnected at

runtime

  • Dynamic reconfiguration can tailor the software to the

desired target domain

– Sensor nets, routers

– Limited interoperability

  • Processes in occam and JCSP cannot interoperate
slide-13
SLIDE 13

13

FlexPar Quantitative Evaluation

 We performed evaluation such as memory

footprint, performance and overhead

– This was carried out on the Gumstixs

 Commstime Benchmark evaluation

– Measure context switch, iteration between processes and communtion overhead

 We ported FlexPar to two platforms

– Gumstixs – Sun SPOTs

slide-14
SLIDE 14

14

FlexPar Qualitative Evaluation

 This is still under construction  Evaluate FlexPar on our river monitoring

system which has three processes

– Monitors floods – Reads water poluttion – Sends data to base station

 The river monitoring system is considered to

be critical because...

slide-15
SLIDE 15

15

 Flash floods takes places particularly on rainy

seasons (December from March)

 Our urban rivers are highly polluted

Why is it critical?

Floods Pollution

slide-16
SLIDE 16

16

 The full prototype deployed at Monjolino urban river  Base station at the porter's lodge

Port FlexPar to the deployed node?

slide-17
SLIDE 17

17

Acknowledgements

We would like to thank FAPESP, CNPq and RNP for funding our research project

slide-18
SLIDE 18

18

Thank you for your attention!

Email: joueyama@icmc.usp.br

slide-19
SLIDE 19

19

We are all waiting for your visit to Brazil