Skip to main content
Top
Published in: International Journal of Parallel Programming 2/2018

04-04-2017

Software Speculation on Caching DSMs

Authors: Sai Charan Koduru, Keval Vora, Rajiv Gupta

Published in: International Journal of Parallel Programming | Issue 2/2018

Log in

Activate our intelligent search to find suitable subject content or patents.

search-config
loading …

Abstract

Clusters with caching DSMs deliver programmability and performance by supporting shared-memory programming model and tolerating communication latency of remote fetches via caching. The input of a data parallel program is partitioned across machines in the cluster while the DSM transparently fetches and caches remote data as needed by the application. Irregular applications are challenging to parallelize because the input related data dependences that manifest at runtime require the use of speculation for efficiently exploiting parallelism. By speculating that there are no cross iteration dependences, multiple iterations of a data parallel loop are executed in parallel using locally cached copies of data; the absence of dependences is validated before committing the speculatively computed results. In this paper we show that in irregular data-parallel applications, while caching helps tolerate long communication latencies, using a value read from the cache in a computation can lead to misspeculation, and thus aggressive caching can degrade performance due to increased misspeculation rate. To limit misspeculation rate we present optimizations for distributed speculation on caching based DSMs that decrease the cost of misspeculation check and speed up the re-execution of misspeculated recomputations. These optimizations give speedups of 2.24\({\times }\) for graph coloring, 1.71\({\times }\) for connected components, 1.88\({\times }\) for community detection, 1.32\({\times }\) for shortest path, and 1.74\({\times }\) for pagerank over baseline parallel executions.

Dont have a licence yet? Then find out more about our products and how to get one now:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Literature
1.
go back to reference Bal, H.E., Bhoedjang, R., Hofman, R., Jacobs, C., Langendoen, K., Rühl, T., Kaashoek, M.F.: Performance evaluation of the Orca shared-object system. ACM Trans. Comput. Syst. (TOCS) 16(1), 1–40 (1998)CrossRef Bal, H.E., Bhoedjang, R., Hofman, R., Jacobs, C., Langendoen, K., Rühl, T., Kaashoek, M.F.: Performance evaluation of the Orca shared-object system. ACM Trans. Comput. Syst. (TOCS) 16(1), 1–40 (1998)CrossRef
2.
go back to reference Dash, A., Demsky, B.: Integrating caching and prefetching mechanisms in a distributed transactional memory. IEEE Trans. Parallel Distrib. Syst. 22(8), 1284–1298 (2011)CrossRef Dash, A., Demsky, B.: Integrating caching and prefetching mechanisms in a distributed transactional memory. IEEE Trans. Parallel Distrib. Syst. 22(8), 1284–1298 (2011)CrossRef
3.
go back to reference Davis, T.A., Hu, Y.: The University of Florida sparse matrix collection. ACM Trans. Math. Softw. (TOMS) 38(1), 1 (2011)MathSciNetMATH Davis, T.A., Hu, Y.: The University of Florida sparse matrix collection. ACM Trans. Math. Softw. (TOMS) 38(1), 1 (2011)MathSciNetMATH
4.
go back to reference Ding, C., Shen, X., Kelsey, K., Tice, C., Huang, R., Zhang, C.: Software behavior oriented parallelization. In: ACM SIGPlan Notices, vol. 42, pp. 223–234. ACM, New York, NY, USA (2007) Ding, C., Shen, X., Kelsey, K., Tice, C., Huang, R., Zhang, C.: Software behavior oriented parallelization. In: ACM SIGPlan Notices, vol. 42, pp. 223–234. ACM, New York, NY, USA (2007)
5.
go back to reference Feng, M., Gupta, R., Hu, Y.: SpiceC: scalable parallelism via implicit copying and explicit commit. In: ACM SIGPlan Notices, vol. 46, pp. 69–80. ACM, New York, NY, USA (2011) Feng, M., Gupta, R., Hu, Y.: SpiceC: scalable parallelism via implicit copying and explicit commit. In: ACM SIGPlan Notices, vol. 46, pp. 69–80. ACM, New York, NY, USA (2011)
7.
go back to reference Fu, H., Zhu, Y., Yu, W.: A case study of mapreduce speculation for failure recovery. In: Proceedings of the 2015 International Workshop on Data-Intensive Scalable Computing Systems, p. 7. ACM (2015) Fu, H., Zhu, Y., Yu, W.: A case study of mapreduce speculation for failure recovery. In: Proceedings of the 2015 International Workshop on Data-Intensive Scalable Computing Systems, p. 7. ACM (2015)
9.
go back to reference Kistler, M., Alvisi, L.: Improving the performance of software distributed shared memory with speculation. IEEE Trans. Parallel Distrib. Syst. 16(9), 885–896 (2005)CrossRef Kistler, M., Alvisi, L.: Improving the performance of software distributed shared memory with speculation. IEEE Trans. Parallel Distrib. Syst. 16(9), 885–896 (2005)CrossRef
10.
go back to reference Kulkarni, M., Burtscher, M., Inkulu, R., Pingali, K., Casçaval, C.: How much parallelism is there in irregular applications? In: ACM SIGPlan Notices, vol. 44, pp. 3–14. ACM, New York, NY, USA (2009) Kulkarni, M., Burtscher, M., Inkulu, R., Pingali, K., Casçaval, C.: How much parallelism is there in irregular applications? In: ACM SIGPlan Notices, vol. 44, pp. 3–14. ACM, New York, NY, USA (2009)
13.
go back to reference Low, Y., Gonzalez, J.E., Kyrola, A., Bickson, D., Guestrin, C.E., Hellerstein, J.: Graphlab: a new framework for parallel machine learning. Preprint arXiv:1408.2041 (2014) Low, Y., Gonzalez, J.E., Kyrola, A., Bickson, D., Guestrin, C.E., Hellerstein, J.: Graphlab: a new framework for parallel machine learning. Preprint arXiv:​1408.​2041 (2014)
14.
go back to reference Oancea, C.E., Selby, J.W., Giesbrecht, M., Watt, S.M.: Distributed models of thread level speculation. In: The 2005 International Conference on Parallel and Distributed Processing Techniques and Applications, PDPTA ‘05, vol. 5, pp. 920–927 (2005) Oancea, C.E., Selby, J.W., Giesbrecht, M., Watt, S.M.: Distributed models of thread level speculation. In: The 2005 International Conference on Parallel and Distributed Processing Techniques and Applications, PDPTA ‘05, vol. 5, pp. 920–927 (2005)
15.
go back to reference Palmieri, R., Quaglia, F., Romano, P.: Osare: Opportunistic speculation in actively replicated transactional systems. In: 30th IEEE Symposium on Reliable Distributed Systems (SRDS), pp. 59–64. IEEE (2011) Palmieri, R., Quaglia, F., Romano, P.: Osare: Opportunistic speculation in actively replicated transactional systems. In: 30th IEEE Symposium on Reliable Distributed Systems (SRDS), pp. 59–64. IEEE (2011)
16.
go back to reference Raghavachari, M., Rogers, A.: Understanding language support for irregular parallelism. In: Ito, T., Halstead, R., Queinnec, C. (eds.) Parallel Symbolic Languages and Systems: International Workshop PSLS’95 Beaune, France, October 2–4, 1995 Proceedings, pp. 174–189. Springer, Berlin, Heidelberg (1996) Raghavachari, M., Rogers, A.: Understanding language support for irregular parallelism. In: Ito, T., Halstead, R., Queinnec, C. (eds.) Parallel Symbolic Languages and Systems: International Workshop PSLS’95 Beaune, France, October 2–4, 1995 Proceedings, pp. 174–189. Springer, Berlin, Heidelberg (1996)
17.
go back to reference Rauchwerger, L., Amato, N.M., Padua, D.A.: Run-time methods for parallelizing partially parallel loops. In: Proceedings of the 9th international conference on Supercomputing, pp. 137–146. ACM (1995) Rauchwerger, L., Amato, N.M., Padua, D.A.: Run-time methods for parallelizing partially parallel loops. In: Proceedings of the 9th international conference on Supercomputing, pp. 137–146. ACM (1995)
18.
go back to reference Rauchwerger, L., Padua, D.A.: The LRPD test: speculative run-time parallelization of loops with privatization and reduction parallelization. IEEE Trans. Parallel Distrib. Syst. 10(2), 160–180 (1999)CrossRef Rauchwerger, L., Padua, D.A.: The LRPD test: speculative run-time parallelization of loops with privatization and reduction parallelization. IEEE Trans. Parallel Distrib. Syst. 10(2), 160–180 (1999)CrossRef
19.
go back to reference Ravichandran, K., Pande, S.: Multiverse: efficiently supporting distributed high-level speculation. ACM SIGPlan Not. 48(10), 533–552 (2013)CrossRef Ravichandran, K., Pande, S.: Multiverse: efficiently supporting distributed high-level speculation. ACM SIGPlan Not. 48(10), 533–552 (2013)CrossRef
20.
go back to reference Rundberg, P., Stenström, P.: An all-software thread-level data dependence speculation system for multiprocessors. J. Instr. Level Parallelism 3(1), 2002 (2001) Rundberg, P., Stenström, P.: An all-software thread-level data dependence speculation system for multiprocessors. J. Instr. Level Parallelism 3(1), 2002 (2001)
21.
go back to reference Scales, D.J., Gharachorloo, K.: Shasta: a system for supporting fine-grain shared memory across clusters. In: Eighth SIAM Conference on Parallel Processing for Scientific Computing, PPSC ‘97. Citeseer (1997) Scales, D.J., Gharachorloo, K.: Shasta: a system for supporting fine-grain shared memory across clusters. In: Eighth SIAM Conference on Parallel Processing for Scientific Computing, PPSC ‘97. Citeseer (1997)
22.
go back to reference Ţăpuş, C., Hickey, J.: Speculations: providing fault-tolerance and recoverability in distributed environments. In: Proceedings of the Second Conference on Hot Topics in System Dependability, pp. 10–10. USENIX Association (2006) Ţăpuş, C., Hickey, J.: Speculations: providing fault-tolerance and recoverability in distributed environments. In: Proceedings of the Second Conference on Hot Topics in System Dependability, pp. 10–10. USENIX Association (2006)
23.
go back to reference Vora, K., Koduru, S.C., Gupta, R.: ASPIRE: Exploiting Asynchronous Parallelism in Iterative Algorithms using a Relaxed Consistency Based DSM. In: Proceedings of the 2014 ACM International Conference on Object Oriented Programming Systems Languages and Applications, pp. 861–878. ACM (2014) Vora, K., Koduru, S.C., Gupta, R.: ASPIRE: Exploiting Asynchronous Parallelism in Iterative Algorithms using a Relaxed Consistency Based DSM. In: Proceedings of the 2014 ACM International Conference on Object Oriented Programming Systems Languages and Applications, pp. 861–878. ACM (2014)
25.
go back to reference Zilles, C., Sohi, G.: Master/slave speculative parallelization. In: Proceedings of the 35th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO-35), pp. 85–96. IEEE (2002) Zilles, C., Sohi, G.: Master/slave speculative parallelization. In: Proceedings of the 35th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO-35), pp. 85–96. IEEE (2002)
Metadata
Title
Software Speculation on Caching DSMs
Authors
Sai Charan Koduru
Keval Vora
Rajiv Gupta
Publication date
04-04-2017
Publisher
Springer US
Published in
International Journal of Parallel Programming / Issue 2/2018
Print ISSN: 0885-7458
Electronic ISSN: 1573-7640
DOI
https://doi.org/10.1007/s10766-017-0499-9

Other articles of this Issue 2/2018

International Journal of Parallel Programming 2/2018 Go to the issue

Premium Partner