{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,3,26]],"date-time":"2025-03-26T11:55:46Z","timestamp":1742990146524,"version":"3.40.3"},"publisher-location":"Cham","reference-count":28,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783030846282"},{"type":"electronic","value":"9783030846299"}],"license":[{"start":{"date-parts":[[2021,1,1]],"date-time":"2021-01-01T00:00:00Z","timestamp":1609459200000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springer.com\/tdm"},{"start":{"date-parts":[[2021,1,1]],"date-time":"2021-01-01T00:00:00Z","timestamp":1609459200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2021]]},"DOI":"10.1007\/978-3-030-84629-9_5","type":"book-chapter","created":{"date-parts":[[2021,8,2]],"date-time":"2021-08-02T11:06:30Z","timestamp":1627902390000},"page":"81-98","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":1,"title":["Verifying Pipeline Implementations in OpenMP"],"prefix":"10.1007","author":[{"ORCID":"https:\/\/orcid.org\/0000-0001-7357-2016","authenticated-orcid":false,"given":"Maik","family":"Wiesner","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-5890-4673","authenticated-orcid":false,"given":"Marie-Christine","family":"Jakobs","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2021,8,3]]},"reference":[{"doi-asserted-by":"publisher","unstructured":"Abadi, M., Keidar-Barner, S., Pidan, D., Veksler, T.: Verifying parallel code after refactoring using equivalence checking. Int. J. Parallel Program. 47(1), 59\u201373 (2018). https:\/\/doi.org\/10.1007\/s10766-017-0548-4","key":"5_CR1","DOI":"10.1007\/s10766-017-0548-4"},{"doi-asserted-by":"publisher","unstructured":"Atzeni, S., et al.: ARCHER: effectively spotting data races in large OpenMP applications. In: Proceedings IPDPS, pp. 53\u201362. IEEE (2016). https:\/\/doi.org\/10.1109\/IPDPS.2016.68","key":"5_CR2","DOI":"10.1109\/IPDPS.2016.68"},{"doi-asserted-by":"publisher","unstructured":"Basupalli, V., et al.: ompVerify: polyhedral analysis for the OpenMP programmer. In: Proceedings IWOMP, pp. 37\u201353. LNCS 6665, Springer (2011). https:\/\/doi.org\/10.1007\/978-3-642-21487-5_4","key":"5_CR3","DOI":"10.1007\/978-3-642-21487-5_4"},{"doi-asserted-by":"publisher","unstructured":"Bora, U., Das, S., Kukreja, P., Joshi, S., Upadrasta, R., Rajopadhye, S.: LLOV: a fast static data-race checker for openMP programs. TACO 17(4) (2020). https:\/\/doi.org\/10.1145\/3418597","key":"5_CR4","DOI":"10.1145\/3418597"},{"doi-asserted-by":"publisher","unstructured":"Goncalves, R., Amaris, M., Okada, T.K., Bruel, P., Goldman, A.: OpenMP is not as easy as it appears. In: Proceedings HICSS, pp. 5742\u20135751. IEEE (2016). https:\/\/doi.org\/10.1109\/HICSS.2016.710","key":"5_CR5","DOI":"10.1109\/HICSS.2016.710"},{"doi-asserted-by":"publisher","unstructured":"Jakobs, M.: PatEC: pattern-based equivalence checking. In: Laarman, A., Sokolova, A. (eds.) SPIN 2021, LNCS, vol. 12864, pp. 120\u2013139 (2021). https:\/\/doi.org\/10.1007\/978-3-030-84629-9_7","key":"5_CR6","DOI":"10.1007\/978-3-030-84629-9_7"},{"doi-asserted-by":"publisher","unstructured":"Jakobs, M.C.: PEQcheck: localized and context-aware checking of functional equivalence. In: Proceedings FormaliSE, pp. 130\u2013140. IEEE (2021), https:\/\/doi.org\/10.1109\/FormaliSE52586.2021.00019","key":"5_CR7","DOI":"10.1109\/FormaliSE52586.2021.00019"},{"doi-asserted-by":"publisher","unstructured":"Leviathan, R., Pnueli, A.: Validating software pipelining optimizations. In: Proceedings CASES, pp. 280\u2013287. ACM (2002). https:\/\/doi.org\/10.1145\/581630.581676","key":"5_CR8","DOI":"10.1145\/581630.581676"},{"doi-asserted-by":"publisher","unstructured":"Li, J., Hei, D., Yan, L.: Correctness analysis based on testing and checking for OpenMP Programs. In: Proceedings ChinaGrid, pp. 210\u2013215. IEEE (2009). https:\/\/doi.org\/10.1109\/ChinaGrid.2009.12","key":"5_CR9","DOI":"10.1109\/ChinaGrid.2009.12"},{"doi-asserted-by":"publisher","unstructured":"Li, Z., Atre, R., Huda, Z.U., Jannesari, A., Wolf, F.: Unveiling parallelization opportunities in sequential programs. J. Syst. Softw. 282\u2013295 (2016). https:\/\/doi.org\/10.1016\/j.jss.2016.03.045","key":"5_CR10","DOI":"10.1016\/j.jss.2016.03.045"},{"doi-asserted-by":"publisher","unstructured":"Liao, C., Lin, P.H., Asplund, J., Schordan, M., Karlin, I.: DataRaceBench: a benchmark suite for systematic evaluation of data race detection tools. Proc. SC. ACM (2017). https:\/\/doi.org\/10.1145\/3126908.3126958","key":"5_CR11","DOI":"10.1145\/3126908.3126958"},{"doi-asserted-by":"publisher","unstructured":"Liao, C., Quinlan, D.J., Willcock, J., Panas, T.: Extending automatic parallelization to optimize high-level abstractions for multicore. In: Proceedings IWOMP, pp. 28\u201341. LNCS 5568, Springer (2009). https:\/\/doi.org\/10.1007\/978-3-642-02303-3_3","key":"5_CR12","DOI":"10.1007\/978-3-642-02303-3_3"},{"doi-asserted-by":"publisher","unstructured":"Lin, Y.: Static Nonconcurrency analysis of OpenMP programs. In: Proceedings IWOMP, pp. 36\u201350. LNCS 4315, Springer (2005). https:\/\/doi.org\/10.1007\/978-3-540-68555-5_4","key":"5_CR13","DOI":"10.1007\/978-3-540-68555-5_4"},{"doi-asserted-by":"publisher","unstructured":"Ma, H., Diersen, S., Wang, L., Liao, C., Quinlan, D., Yang, Z.: Symbolic analysis of concurrency errors in OpenMP programs. In: Proceedings ICPP. pp. 510\u2013516. IEEE (2013). https:\/\/doi.org\/10.1109\/ICPP.2013.63","key":"5_CR14","DOI":"10.1109\/ICPP.2013.63"},{"unstructured":"Mattson, T.G., Sanders, B.A., Massingill, B.L.: Patterns for parallel programming. Addison-Wesley Professional (2013)","key":"5_CR15"},{"doi-asserted-by":"crossref","unstructured":"McCool, M., Reinders, J., Robison, A.: Structured Parallel Programming: Patterns for Efficient Computation. Morgan Kaufmann Publishers Inc., Burlington (2012)","key":"5_CR16","DOI":"10.1016\/B978-0-12-415993-8.00003-7"},{"unstructured":"OpenMP: OpenMP application programming interface (version 5.1). Technical report OpenMP Architecture Review Board (2020). https:\/\/www.openmp.org\/specifications\/","key":"5_CR17"},{"unstructured":"Quinlan, D., Liao, C.: The ROSE source-to-source compiler infrastructure. In: Cetus users and compiler infrastructure workshop, in conjunction with PACT, vol. 2011, p. 1. Citeseer (2011)","key":"5_CR18"},{"doi-asserted-by":"publisher","unstructured":"Royuela, S., Ferrer, R., Caballero, D., Martorell, X.: Compiler analysis for OpenMP tasks correctness. In: Proceedings CF, pp. 11\u201319. ACM (2015). https:\/\/doi.org\/10.1145\/2742854.2742882","key":"5_CR19","DOI":"10.1145\/2742854.2742882"},{"doi-asserted-by":"publisher","unstructured":"Saillard, E., Carribault, P., Barthou, D.: Static Validation of barriers and worksharing constructs in openmp applications. In: Proceedings IWOMP, pp. 73\u201386. LNCS 8766, Springer (2014). https:\/\/doi.org\/10.1007\/978-3-319-11454-5_6","key":"5_CR20","DOI":"10.1007\/978-3-319-11454-5_6"},{"doi-asserted-by":"publisher","unstructured":"Salamanca, J., Mattos, L., Araujo, G.: Loop-carried dependence verification in OpenMP. In: Proceedin IWOMP, pp. 87\u2013102. LNCS 8766, Springer (2014). https:\/\/doi.org\/10.1007\/978-3-319-11454-5_7","key":"5_CR21","DOI":"10.1007\/978-3-319-11454-5_7"},{"doi-asserted-by":"publisher","unstructured":"Siegel, S.F., et al.: CIVL: the concurrency intermediate verification language. In: Proceedings SC, pp. 61:1\u201361:12. ACM (2015). https:\/\/doi.org\/10.1145\/2807591.2807635","key":"5_CR22","DOI":"10.1145\/2807591.2807635"},{"doi-asserted-by":"publisher","unstructured":"Swain, B., Li, Y., Liu, P., Laguna, I., Georgakoudis, G., Huang, J.: OMPRacer: a scalable and precise static race detector for OpenMP programs. In: Proceedings SC. IEEE (2020). https:\/\/doi.org\/10.1109\/SC41405.2020.00058","key":"5_CR23","DOI":"10.1109\/SC41405.2020.00058"},{"doi-asserted-by":"publisher","unstructured":"Tristan, J., Leroy, X.: A simple, verified validator for software pipelining. In: Proceedings POPL, pp. 83\u201392. ACM (2010). https:\/\/doi.org\/10.1145\/1706299.1706311","key":"5_CR24","DOI":"10.1145\/1706299.1706311"},{"doi-asserted-by":"publisher","unstructured":"Virouleau, P., Brunet, P., Broquedis, F., Furmento, N., Thibault, S., Aumage, O., Gautier, T.: Evaluation of OpenMP dependent tasks with the KASTORS benchmark suite. In: Proceedings IWOMP, pp. 16\u201329. LNCS 8766, Springer (2014). https:\/\/doi.org\/10.1007\/978-3-319-11454-5_2","key":"5_CR25","DOI":"10.1007\/978-3-319-11454-5_2"},{"doi-asserted-by":"publisher","unstructured":"Ye, F., Schordan, M., Liao, C., Lin, P., Karlin, I., Sarkar, V.: Using polyhedral analysis to verify openmp applications are data race free. In: Proceedings CORRECTNESS@SC, pp. 42\u201350. IEEE (2018). https:\/\/doi.org\/10.1109\/Correctness.2018.00010","key":"5_CR26","DOI":"10.1109\/Correctness.2018.00010"},{"doi-asserted-by":"publisher","unstructured":"Yu, F., Yang, S., Wang, F., Chen, G., Chan, C.: Symbolic consistency checking of openmp parallel programs. In: Proceedings LCTES, pp. 139\u2013148. ACM (2012). https:\/\/doi.org\/10.1145\/2248418.2248438","key":"5_CR27","DOI":"10.1145\/2248418.2248438"},{"doi-asserted-by":"publisher","unstructured":"Zhang, Y., Duesterwald, E., Gao, G.R.: Concurrency analysis for shared memory programs with textually unaligned barriers. In: Proceedings LCPC, pp. 95\u2013109. LNCS 5234, Springer (2007). https:\/\/doi.org\/10.1007\/978-3-540-85261-2_7","key":"5_CR28","DOI":"10.1007\/978-3-540-85261-2_7"}],"container-title":["Lecture Notes in Computer Science","Model Checking Software"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-030-84629-9_5","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2021,8,18]],"date-time":"2021-08-18T23:04:56Z","timestamp":1629327896000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-030-84629-9_5"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2021]]},"ISBN":["9783030846282","9783030846299"],"references-count":28,"URL":"https:\/\/doi.org\/10.1007\/978-3-030-84629-9_5","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2021]]},"assertion":[{"value":"3 August 2021","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"SPIN","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Symposium on Model Checking Software","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2021","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"12 July 2021","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"12 July 2021","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"27","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"spin2021","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"https:\/\/conf.researchr.org\/home\/ecoop-issta-2021\/spin-2021","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Single-blind","order":1,"name":"type","label":"Type","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"EasyChair","order":2,"name":"conference_management_system","label":"Conference Management System","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"20","order":3,"name":"number_of_submissions_sent_for_review","label":"Number of Submissions Sent for Review","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"8","order":4,"name":"number_of_full_papers_accepted","label":"Number of Full Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"0","order":5,"name":"number_of_short_papers_accepted","label":"Number of Short Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"40% - The value is computed by the equation \"Number of Full Papers Accepted \/ Number of Submissions Sent for Review * 100\" and then rounded to a whole number.","order":6,"name":"acceptance_rate_of_full_papers","label":"Acceptance Rate of Full Papers","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"3","order":7,"name":"average_number_of_reviews_per_paper","label":"Average Number of Reviews per Paper","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"2","order":8,"name":"average_number_of_papers_per_reviewer","label":"Average Number of Papers per Reviewer","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"Yes","order":9,"name":"external_reviewers_involved","label":"External Reviewers Involved","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"2 invited papers are also included.","order":10,"name":"additional_info_on_review_process","label":"Additional Info on Review Process","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}}]}}