SlideShare a Scribd company logo
INTER-TASK COMMUNICATION ON VOLATILE NODES Masters in Science (Computer Science) Thesis Presented by NAGARAJAN KANNA Advisor: Dr. Jaspal Subhlok Committee: Dr. Edgar Gabriel Dr. Margaret S. Cheung
OUTLINE INTRODUCTION MOTIVATION DATASPACE PROGRAMMING MODEL IMPLEMENTATION EXPERIMENTS RESULTS CONCLUSION
OUTLINE INTRODUCTION MOTIVATION DATASPACE PROGRAMMING MODEL IMPLEMENTATION EXPERIMENTS RESULTS CONCLUSION
INTRODUCTION Parallel & Distributed computing Multi-processor, Multi-core, Multi-computer (Cluster, Grid, Volunteer) Idle desktop computers Immense pool of unused resources Utilized by: BOINC, Condor Volatile nodes Varying computation, communication, storage  Availability is unpredictable Handling Volatility Check point/ Restart Process Migration Process Replication
OUTLINE INTRODUCTION MOTIVATION DATASPACE PROGRAMMING MODEL IMPLEMENTATION EXPERIMENTS RESULTS CONCLUSION
MOTIVATION Under 1% of available PCs are being harnessed (BOINC generates > 1PetaFLOPS) Ordinary desktop PCs not utilized for running parallel applications  Many scientific applications have low degree of  communication between processes Lack of a good ‘programming model’ to utilize volatile resources for parallel application
RELATED WORK BOINC Middleware for Volunteer computing Lack of support for communication parallel programs CONDOR Job scheduler, Support parallel programs Uses check pointing: Not suitable for volatile systems  CLUSTERS Expensive: Resources, Maintenance Our Goal:   Execution of communicating parallel programs on volatile ordinary desktops
OUTLINE INTRODUCTION MOTIVATION DATASPACE PROGRAMMING MODEL IMPLEMENTATION EXPERIMENTS RESULTS CONCLUSION
DATASPACE New ‘DATASPACE’ modeled  ~LINDA [1]  tuplespace A robust communication layer that facilitates data exchanges between tasks Abstract dataspace that acts as (intermediary) for data exchange between tasks Asynchronous one-way communication: Tasks that exchange data need not be alive at the same time Use of  process replication  to handle volatile nature of nodes Integration with existing volunteer computing systems [1]  N. Carriero and D. Gelernter. The s/net’s linda kernel. ACM Trans.  Comput. Syst., 4(2):110–129, 1986
COMMUNICATION MODEL Client machine running User application Dataspace Server (DSS) 1. Initialize application with DSS info 2. Establish connection with DSS 3. Put data (101, ABCD) 4. Read data (101) 5. Get data (101) 6. Terminate connection with DSS ABCD 101 DATA TAG DATA TAG
DATASPACE - ‘PUT’ Dataspace Server Client – Replica 1 Client – Replica 2 PUT Meta info from process 1 Tag & Data Status for PUT operation PUT Meta info from process 1 Status - SUCCESS DATA TAG PutCount ProcessId 1 1 PutCount ProcessId
DATASPACE - ‘READ’ and ‘GET’ Dataspace Server GET (Meta info & Tag)  from process 1 Data matching the Tag from Dataspace GET (Meta info & Tag) from process 1 Corresponding  Data Client – Replica 1 Client – Replica 2 ABCD 101 DATA TAG GetCount ProcessId 1 1 GetCount ProcessId DATA TAG 2 1 READ Buffer 2 ABCD 1 READ Buffer
OUTLINE INTRODUCTION MOTIVATION DATASPACE PROGRAMMING MODEL IMPLEMENTATION EXPERIMENTS RESULTS CONCLUSION
PROGRAMMING MODEL Library supports C/C++/Fortran applications One instance of dataspace server per application DATASPACE API int  volpex_put ( const   char*  tag,  int  tagSize,  const void*  data,  int  dataSize) int  volpex_get ( const   char*  tag,  int  tagSize,  void*  data, int dataSize) int  volpex_read ( const   char*  tag,  int  tagSize,  void*  data, int dataSize) SUPPORTING API int  volpex_init ( int  argc,  char * argv[]) int  volpex_getProcId ( void ) int  volpex_getNumProc ( void ) void  volpex_finish ( void )
OUTLINE INTRODUCTION MOTIVATION DATASPACE PROGRAMMING MODEL IMPLEMENTATION EXPERIMENTS RESULTS CONCLUSION
IMPLEMENTATION Implemented on C/C++ with UNIX TCP Sockets All communications with DSS initiated by client DSS: Single threaded; Uses TCP select to switch Dataspace In memory storage of data Hash table indexed on tag Fixed #entry READ BUFFER to serve processes replicas PUT: Request from replica check only for data size > 2KB On connectivity failure, fixed number of retries with exponentially increasing time interval Dataspace does not differentiate process replicas BOINC : Linking with dataspace library @ compilation
OUTLINE INTRODUCTION MOTIVATION DATASPACE PROGRAMMING MODEL IMPLEMENTATION EXPERIMENTS RESULTS CONCLUSION
EXPERIMENTS APPLICATIONS Replica Exchange Molecular Dynamics (REMD) Parallel Sorting by Regular Sampling (PSRS) Sieve of Eratosthenes TEST CASES  Micro benchmarks Scalability Redundancy Failure TEST BED Clients:  Atlantis Itanium2 1.3GHz dual core with 4GB RAM DSS:  AMD Athlon 2.4GHz dual core with 2GB RAM
REMD A approach for studying the folding thermodynamics of small to modest size proteins in explicit solvent Simulations alternate between phases of conformational sampling and swapping Relatively small communication requirements – Ideally suited for Dataspace API Use of Dataspace Synchronization of processes Store/Read energy values between neighbors Exchange temperate values for next simulation run
PSRS 27 23 22 16 13 10
SIEVE OF ERATOSTHENES Simple algorithm for finding all prime numbers up to specified integer Using Dataspace Total set (till specified integer) is divided equally between all the processes MASTER processes identifies candidate prime number and writes it onto the dataspace All other processes reads candidate primer numbers and knocks of all multiples from its list MASTER process collects local sum from all processes
OUTLINE INTRODUCTION MOTIVATION DATASPACE PROGRAMMING MODEL IMPLEMENTATION EXPERIMENTS RESULTS CONCLUSION
REMD – Temperature swapping between replicas Application run with 8 replicas (8 temperatures) Parameters: nstlimit=4000; nsteps=5 Processes that swap temperatures at a step have same background color
REMD: Using Dataspace vs. PERL Disk IO needs to reduced for improving performance
ROUND TRIP TIME MEASUREMENT Case 1 Case 2 Dataspace Server Start time Dataspace operation Status End time Client process Start time End time PUT (101, ABC) GET (102) GET (101) PUT (102, XYZ) Process 1 Process 2 Dataspace Server ABC 101 DATA TAG DATA TAG XYZ 102 DATA TAG
RTT: DATASPACE OPERATIONS PUT only marginally faster
RTT: WITH 2 PROCESSES
BANDWIDTH: DATASPACE OPERATIONS
BANDWIDTH / HOP: WITH 2 PROCESSES
RTT: ‘PUT’ WITH REPLICAS No impact of replicas on Dataspace PUT
RTT: ‘READ’ WITH REPLICAS
RTT: ‘GET’ WITH REPLICAS
BANDWIDTH: ‘PUT’ WITH REPLICAS
BANDWIDTH: ‘READ’ WITH REPLICAS
BANDWIDTH: ‘GET’ WITH REPLICAS
SCALABILITY: PSRS
SCALABILITY: SoE
REDUNDANCY: PSRS
REDUNDANCY: SoE ~25% increase in execution time with each replica
FAILURE: PSRS
FAILURE: SoE Drop in execution time for  2 node failures: ~3%
PSRS: WITH BOINC & WITHOUT BOINC Variations due to BOINC scheduler
OUTLINE INTRODUCTION MOTIVATION DATASPACE PROGRAMMING MODEL IMPLEMENTATION EXPERIMENTS RESULTS CONCLUSION
SUMMARY OF RESULTS REMD: Use for Dataspace API in real world apps Micro benchmarks : On adding replicas PUT: Execution time remains constant READ, GET: Execution time increases with data size Scalability: PSRS & SoE PSRS scales till 32 processes, SoE only till 16processes Redundancy : PSRS & SoE Increase in execution time < 25% with each replica Centralized single threaded server: BOTTLENECK Failure: PSRS & SoE Linear decrease in execution time with increasing failures Integration with BOINC Some impact on the overall application performance
OUR CONTIBUTION Task parallelism: Dataspace API facilitates data exchange between processes Robustness: Dataspace API supports use of process replication to handle volatility Pluggable: Dataspace API works well with BOINC FUTURE WORK Testing on ordinary desktops Dataspace Implementation: Combining In-memory & Disk Distributed Dataspace Non-blocking dataspace API
THANK YOU

More Related Content

PPT
pMatlab on BlueGene
vsachde
 
PDF
A CRITICAL IMPROVEMENT ON OPEN SHOP SCHEDULING ALGORITHM FOR ROUTING IN INTER...
IJCNCJournal
 
PPTX
Click-Through Example for Flink’s KafkaConsumer Checkpointing
Robert Metzger
 
PDF
Porting an MPI application to hybrid MPI+OpenMP with Reveal tool on Shaheen II
George Markomanolis
 
PDF
HTCC poster for CERN Openlab opendays 2015
Karel Ha
 
PDF
Clustering_Algorithm_DR
Nguyen Tran
 
PPTX
Cloud schedulers and Scheduling in Hadoop
Pallav Jha
 
PPTX
SparkNet presentation
Sneh Pahilwani
 
pMatlab on BlueGene
vsachde
 
A CRITICAL IMPROVEMENT ON OPEN SHOP SCHEDULING ALGORITHM FOR ROUTING IN INTER...
IJCNCJournal
 
Click-Through Example for Flink’s KafkaConsumer Checkpointing
Robert Metzger
 
Porting an MPI application to hybrid MPI+OpenMP with Reveal tool on Shaheen II
George Markomanolis
 
HTCC poster for CERN Openlab opendays 2015
Karel Ha
 
Clustering_Algorithm_DR
Nguyen Tran
 
Cloud schedulers and Scheduling in Hadoop
Pallav Jha
 
SparkNet presentation
Sneh Pahilwani
 

What's hot (20)

PPTX
Robert Metzger - Connecting Apache Flink to the World - Reviewing the streami...
Flink Forward
 
PDF
EuroMPI 2016 Keynote: How Can MPI Fit Into Today's Big Computing
Jonathan Dursi
 
PDF
Parallel Computing with R
Abhirup Mallik
 
DOCX
Lab 4 final report
Kyle Villano
 
PPT
Chapter 7 Run Time Environment
Radhakrishnan Chinnusamy
 
PPTX
Run time administration
Arjun Srivastava
 
PPT
Improving Robustness In Distributed Systems
l xf
 
PPTX
Compiler design
Shashwat Shriparv
 
PDF
DEEP-mon: Dynamic and Energy Efficient Power monitoring for container-based i...
NECST Lab @ Politecnico di Milano
 
PDF
Hadoop map reduce in operation
Subhas Kumar Ghosh
 
PDF
MATLAB to simulate packet traffic - M/M/1 queue with Erlang C distribution
Sulaim Ab Qais
 
PDF
Buffer overflow tutorial
hughpearse
 
PPT
Comparing Cpp And Erlang For Motorola Telecoms Software
l xf
 
DOCX
ECET 365 Success Begins /newtonhelp.com 
myblue134
 
PDF
Manycores for the Masses
Intel® Software
 
PDF
Anti disassembly using cryptographic hash functions
UltraUploader
 
PPTX
Introduction to map reduce
M Baddar
 
PPT
Multicore
Birgit Plötzeneder
 
PPTX
Heap Management
Jenny Galino
 
PPTX
Debug generic process
Vipin Varghese
 
Robert Metzger - Connecting Apache Flink to the World - Reviewing the streami...
Flink Forward
 
EuroMPI 2016 Keynote: How Can MPI Fit Into Today's Big Computing
Jonathan Dursi
 
Parallel Computing with R
Abhirup Mallik
 
Lab 4 final report
Kyle Villano
 
Chapter 7 Run Time Environment
Radhakrishnan Chinnusamy
 
Run time administration
Arjun Srivastava
 
Improving Robustness In Distributed Systems
l xf
 
Compiler design
Shashwat Shriparv
 
DEEP-mon: Dynamic and Energy Efficient Power monitoring for container-based i...
NECST Lab @ Politecnico di Milano
 
Hadoop map reduce in operation
Subhas Kumar Ghosh
 
MATLAB to simulate packet traffic - M/M/1 queue with Erlang C distribution
Sulaim Ab Qais
 
Buffer overflow tutorial
hughpearse
 
Comparing Cpp And Erlang For Motorola Telecoms Software
l xf
 
ECET 365 Success Begins /newtonhelp.com 
myblue134
 
Manycores for the Masses
Intel® Software
 
Anti disassembly using cryptographic hash functions
UltraUploader
 
Introduction to map reduce
M Baddar
 
Heap Management
Jenny Galino
 
Debug generic process
Vipin Varghese
 
Ad

Viewers also liked (20)

ODP
Inter-Process/Task Communication With Message Queues
wamcvey
 
PDF
Nevera Smeg FAB10RP
Alsako Electrodomésticos
 
PPTX
DELITO INFORMATICO
brayan80
 
PDF
Stanley Cup & Super Bowl Idea Gallery
Promotion Resource Group Inc.
 
PPTX
Adv car accandfinan
Paul Wheeler
 
PPT
Rodilla celulamadre
celulamadre
 
DOC
Roberts Resume 2015
Shelly Roberts
 
PDF
Nevera Smeg FAB30RAZ1
Alsako Electrodomésticos
 
PPTX
Presentacin11 130217185754-phpapp01
linamar2236
 
DOCX
Ing edo-a2-lesson 91
mikel cordova bautista
 
PPTX
Albert einstein
danielduran0617
 
PDF
PEUGEOT TRAINING
RAJU DAS
 
PPTX
Cognitive psychology
rohit saroha
 
PDF
Productblad fermacell Powerpanel vloerafvoer – Montage-instructies bij PVC-vi...
Fermacell BV
 
PDF
Diccionario visual-de-arquitectura-francis-d-k-ching
joselynguale5
 
PDF
RevoSport - Presentation r1-1
Nasar Mohamed
 
PPTX
Task 2 Communication
BiteableAtom
 
PPTX
How to choose an RTOS?
Rohit Choudhury
 
PPTX
Fibre splicing
Nijas Mohamed
 
PPT
FreeRTOS Course - Queue Management
Amr Ali (ISTQB CTAL Full, CSM, ITIL Foundation)
 
Inter-Process/Task Communication With Message Queues
wamcvey
 
Nevera Smeg FAB10RP
Alsako Electrodomésticos
 
DELITO INFORMATICO
brayan80
 
Stanley Cup & Super Bowl Idea Gallery
Promotion Resource Group Inc.
 
Adv car accandfinan
Paul Wheeler
 
Rodilla celulamadre
celulamadre
 
Roberts Resume 2015
Shelly Roberts
 
Nevera Smeg FAB30RAZ1
Alsako Electrodomésticos
 
Presentacin11 130217185754-phpapp01
linamar2236
 
Ing edo-a2-lesson 91
mikel cordova bautista
 
Albert einstein
danielduran0617
 
PEUGEOT TRAINING
RAJU DAS
 
Cognitive psychology
rohit saroha
 
Productblad fermacell Powerpanel vloerafvoer – Montage-instructies bij PVC-vi...
Fermacell BV
 
Diccionario visual-de-arquitectura-francis-d-k-ching
joselynguale5
 
RevoSport - Presentation r1-1
Nasar Mohamed
 
Task 2 Communication
BiteableAtom
 
How to choose an RTOS?
Rohit Choudhury
 
Fibre splicing
Nijas Mohamed
 
FreeRTOS Course - Queue Management
Amr Ali (ISTQB CTAL Full, CSM, ITIL Foundation)
 
Ad

Similar to Inter Task Communication On Volatile Nodes (20)

PDF
Flow based programming in golang
Anton Stepanenko
 
PDF
ADCSS 2022
klepsydratechnologie
 
PPT
Migration To Multi Core - Parallel Programming Models
Zvi Avraham
 
PDF
Apache Spark 2.0: A Deep Dive Into Structured Streaming - by Tathagata Das
Databricks
 
PPTX
A Tale of Data Pattern Discovery in Parallel
Jenny Liu
 
PDF
Dataservices: Processing (Big) Data the Microservice Way
QAware GmbH
 
PPT
Parallel Programming Primer
Sri Prasanna
 
PDF
Continuous Application with Structured Streaming 2.0
Anyscale
 
PDF
Low Latency Execution For Apache Spark
Jen Aman
 
PPTX
Programmable Exascale Supercomputer
Sagar Dolas
 
PDF
Dasia 2022
klepsydratechnologie
 
PPT
3rd 3DDRESD: ReCPU 4 NIDS
Marco Santambrogio
 
PPTX
Telegraph Cq English
Alberto Minetti
 
PPT
Parallel Programming Primer 1
mobius.cn
 
PPTX
A Study on Task Scheduling in Could Data Centers for Energy Efficacy
Ehsan Sharifi
 
PDF
Dsp lab manual 15 11-2016
Gopinath.B.L Naidu
 
PPTX
High Throughput Data Analysis
J Singh
 
DOC
Chapter 5 notes new
HarshitParkar6677
 
PPTX
Performance measures
Divya Tiwari
 
PDF
Taking Spark Streaming to the Next Level with Datasets and DataFrames
Databricks
 
Flow based programming in golang
Anton Stepanenko
 
Migration To Multi Core - Parallel Programming Models
Zvi Avraham
 
Apache Spark 2.0: A Deep Dive Into Structured Streaming - by Tathagata Das
Databricks
 
A Tale of Data Pattern Discovery in Parallel
Jenny Liu
 
Dataservices: Processing (Big) Data the Microservice Way
QAware GmbH
 
Parallel Programming Primer
Sri Prasanna
 
Continuous Application with Structured Streaming 2.0
Anyscale
 
Low Latency Execution For Apache Spark
Jen Aman
 
Programmable Exascale Supercomputer
Sagar Dolas
 
3rd 3DDRESD: ReCPU 4 NIDS
Marco Santambrogio
 
Telegraph Cq English
Alberto Minetti
 
Parallel Programming Primer 1
mobius.cn
 
A Study on Task Scheduling in Could Data Centers for Energy Efficacy
Ehsan Sharifi
 
Dsp lab manual 15 11-2016
Gopinath.B.L Naidu
 
High Throughput Data Analysis
J Singh
 
Chapter 5 notes new
HarshitParkar6677
 
Performance measures
Divya Tiwari
 
Taking Spark Streaming to the Next Level with Datasets and DataFrames
Databricks
 

Inter Task Communication On Volatile Nodes

  • 1. INTER-TASK COMMUNICATION ON VOLATILE NODES Masters in Science (Computer Science) Thesis Presented by NAGARAJAN KANNA Advisor: Dr. Jaspal Subhlok Committee: Dr. Edgar Gabriel Dr. Margaret S. Cheung
  • 2. OUTLINE INTRODUCTION MOTIVATION DATASPACE PROGRAMMING MODEL IMPLEMENTATION EXPERIMENTS RESULTS CONCLUSION
  • 3. OUTLINE INTRODUCTION MOTIVATION DATASPACE PROGRAMMING MODEL IMPLEMENTATION EXPERIMENTS RESULTS CONCLUSION
  • 4. INTRODUCTION Parallel & Distributed computing Multi-processor, Multi-core, Multi-computer (Cluster, Grid, Volunteer) Idle desktop computers Immense pool of unused resources Utilized by: BOINC, Condor Volatile nodes Varying computation, communication, storage Availability is unpredictable Handling Volatility Check point/ Restart Process Migration Process Replication
  • 5. OUTLINE INTRODUCTION MOTIVATION DATASPACE PROGRAMMING MODEL IMPLEMENTATION EXPERIMENTS RESULTS CONCLUSION
  • 6. MOTIVATION Under 1% of available PCs are being harnessed (BOINC generates > 1PetaFLOPS) Ordinary desktop PCs not utilized for running parallel applications Many scientific applications have low degree of communication between processes Lack of a good ‘programming model’ to utilize volatile resources for parallel application
  • 7. RELATED WORK BOINC Middleware for Volunteer computing Lack of support for communication parallel programs CONDOR Job scheduler, Support parallel programs Uses check pointing: Not suitable for volatile systems CLUSTERS Expensive: Resources, Maintenance Our Goal: Execution of communicating parallel programs on volatile ordinary desktops
  • 8. OUTLINE INTRODUCTION MOTIVATION DATASPACE PROGRAMMING MODEL IMPLEMENTATION EXPERIMENTS RESULTS CONCLUSION
  • 9. DATASPACE New ‘DATASPACE’ modeled ~LINDA [1] tuplespace A robust communication layer that facilitates data exchanges between tasks Abstract dataspace that acts as (intermediary) for data exchange between tasks Asynchronous one-way communication: Tasks that exchange data need not be alive at the same time Use of process replication to handle volatile nature of nodes Integration with existing volunteer computing systems [1] N. Carriero and D. Gelernter. The s/net’s linda kernel. ACM Trans. Comput. Syst., 4(2):110–129, 1986
  • 10. COMMUNICATION MODEL Client machine running User application Dataspace Server (DSS) 1. Initialize application with DSS info 2. Establish connection with DSS 3. Put data (101, ABCD) 4. Read data (101) 5. Get data (101) 6. Terminate connection with DSS ABCD 101 DATA TAG DATA TAG
  • 11. DATASPACE - ‘PUT’ Dataspace Server Client – Replica 1 Client – Replica 2 PUT Meta info from process 1 Tag & Data Status for PUT operation PUT Meta info from process 1 Status - SUCCESS DATA TAG PutCount ProcessId 1 1 PutCount ProcessId
  • 12. DATASPACE - ‘READ’ and ‘GET’ Dataspace Server GET (Meta info & Tag) from process 1 Data matching the Tag from Dataspace GET (Meta info & Tag) from process 1 Corresponding Data Client – Replica 1 Client – Replica 2 ABCD 101 DATA TAG GetCount ProcessId 1 1 GetCount ProcessId DATA TAG 2 1 READ Buffer 2 ABCD 1 READ Buffer
  • 13. OUTLINE INTRODUCTION MOTIVATION DATASPACE PROGRAMMING MODEL IMPLEMENTATION EXPERIMENTS RESULTS CONCLUSION
  • 14. PROGRAMMING MODEL Library supports C/C++/Fortran applications One instance of dataspace server per application DATASPACE API int volpex_put ( const char* tag, int tagSize, const void* data, int dataSize) int volpex_get ( const char* tag, int tagSize, void* data, int dataSize) int volpex_read ( const char* tag, int tagSize, void* data, int dataSize) SUPPORTING API int volpex_init ( int argc, char * argv[]) int volpex_getProcId ( void ) int volpex_getNumProc ( void ) void volpex_finish ( void )
  • 15. OUTLINE INTRODUCTION MOTIVATION DATASPACE PROGRAMMING MODEL IMPLEMENTATION EXPERIMENTS RESULTS CONCLUSION
  • 16. IMPLEMENTATION Implemented on C/C++ with UNIX TCP Sockets All communications with DSS initiated by client DSS: Single threaded; Uses TCP select to switch Dataspace In memory storage of data Hash table indexed on tag Fixed #entry READ BUFFER to serve processes replicas PUT: Request from replica check only for data size > 2KB On connectivity failure, fixed number of retries with exponentially increasing time interval Dataspace does not differentiate process replicas BOINC : Linking with dataspace library @ compilation
  • 17. OUTLINE INTRODUCTION MOTIVATION DATASPACE PROGRAMMING MODEL IMPLEMENTATION EXPERIMENTS RESULTS CONCLUSION
  • 18. EXPERIMENTS APPLICATIONS Replica Exchange Molecular Dynamics (REMD) Parallel Sorting by Regular Sampling (PSRS) Sieve of Eratosthenes TEST CASES Micro benchmarks Scalability Redundancy Failure TEST BED Clients: Atlantis Itanium2 1.3GHz dual core with 4GB RAM DSS: AMD Athlon 2.4GHz dual core with 2GB RAM
  • 19. REMD A approach for studying the folding thermodynamics of small to modest size proteins in explicit solvent Simulations alternate between phases of conformational sampling and swapping Relatively small communication requirements – Ideally suited for Dataspace API Use of Dataspace Synchronization of processes Store/Read energy values between neighbors Exchange temperate values for next simulation run
  • 20. PSRS 27 23 22 16 13 10
  • 21. SIEVE OF ERATOSTHENES Simple algorithm for finding all prime numbers up to specified integer Using Dataspace Total set (till specified integer) is divided equally between all the processes MASTER processes identifies candidate prime number and writes it onto the dataspace All other processes reads candidate primer numbers and knocks of all multiples from its list MASTER process collects local sum from all processes
  • 22. OUTLINE INTRODUCTION MOTIVATION DATASPACE PROGRAMMING MODEL IMPLEMENTATION EXPERIMENTS RESULTS CONCLUSION
  • 23. REMD – Temperature swapping between replicas Application run with 8 replicas (8 temperatures) Parameters: nstlimit=4000; nsteps=5 Processes that swap temperatures at a step have same background color
  • 24. REMD: Using Dataspace vs. PERL Disk IO needs to reduced for improving performance
  • 25. ROUND TRIP TIME MEASUREMENT Case 1 Case 2 Dataspace Server Start time Dataspace operation Status End time Client process Start time End time PUT (101, ABC) GET (102) GET (101) PUT (102, XYZ) Process 1 Process 2 Dataspace Server ABC 101 DATA TAG DATA TAG XYZ 102 DATA TAG
  • 26. RTT: DATASPACE OPERATIONS PUT only marginally faster
  • 27. RTT: WITH 2 PROCESSES
  • 29. BANDWIDTH / HOP: WITH 2 PROCESSES
  • 30. RTT: ‘PUT’ WITH REPLICAS No impact of replicas on Dataspace PUT
  • 39. REDUNDANCY: SoE ~25% increase in execution time with each replica
  • 41. FAILURE: SoE Drop in execution time for 2 node failures: ~3%
  • 42. PSRS: WITH BOINC & WITHOUT BOINC Variations due to BOINC scheduler
  • 43. OUTLINE INTRODUCTION MOTIVATION DATASPACE PROGRAMMING MODEL IMPLEMENTATION EXPERIMENTS RESULTS CONCLUSION
  • 44. SUMMARY OF RESULTS REMD: Use for Dataspace API in real world apps Micro benchmarks : On adding replicas PUT: Execution time remains constant READ, GET: Execution time increases with data size Scalability: PSRS & SoE PSRS scales till 32 processes, SoE only till 16processes Redundancy : PSRS & SoE Increase in execution time < 25% with each replica Centralized single threaded server: BOTTLENECK Failure: PSRS & SoE Linear decrease in execution time with increasing failures Integration with BOINC Some impact on the overall application performance
  • 45. OUR CONTIBUTION Task parallelism: Dataspace API facilitates data exchange between processes Robustness: Dataspace API supports use of process replication to handle volatility Pluggable: Dataspace API works well with BOINC FUTURE WORK Testing on ordinary desktops Dataspace Implementation: Combining In-memory & Disk Distributed Dataspace Non-blocking dataspace API