{"id":"https://openalex.org/W2537306435","doi":"https://doi.org/10.1145/2983990.2984035","title":"Automatic parallelization of pure method calls via conditional future synthesis","display_name":"Automatic parallelization of pure method calls via conditional future synthesis","publication_year":2016,"publication_date":"2016-10-19","ids":{"openalex":"https://openalex.org/W2537306435","doi":"https://doi.org/10.1145/2983990.2984035","mag":"2537306435"},"language":"en","primary_location":{"id":"doi:10.1145/2983990.2984035","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2983990.2984035","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2016 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5018996783","display_name":"Rishi Surendran","orcid":null},"institutions":[{"id":"https://openalex.org/I74775410","display_name":"Rice University","ror":"https://ror.org/008zs3103","country_code":"US","type":"education","lineage":["https://openalex.org/I74775410"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Rishi Surendran","raw_affiliation_strings":["Rice University, USA"],"affiliations":[{"raw_affiliation_string":"Rice University, USA","institution_ids":["https://openalex.org/I74775410"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5043513001","display_name":"Vivek Sarkar","orcid":"https://orcid.org/0000-0002-3433-8830"},"institutions":[{"id":"https://openalex.org/I74775410","display_name":"Rice University","ror":"https://ror.org/008zs3103","country_code":"US","type":"education","lineage":["https://openalex.org/I74775410"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Vivek Sarkar","raw_affiliation_strings":["Rice University, USA"],"affiliations":[{"raw_affiliation_string":"Rice University, USA","institution_ids":["https://openalex.org/I74775410"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5018996783"],"corresponding_institution_ids":["https://openalex.org/I74775410"],"apc_list":null,"apc_paid":null,"fwci":1.2613,"has_fulltext":false,"cited_by_count":6,"citation_normalized_percentile":{"value":0.79349257,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":97},"biblio":{"volume":null,"issue":null,"first_page":"20","last_page":"38"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9998999834060669,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9998999834060669,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10904","display_name":"Embedded Systems Design Techniques","score":0.9988999962806702,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9980000257492065,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8820527791976929},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.6901913285255432},{"id":"https://openalex.org/keywords/parallelism","display_name":"Parallelism (grammar)","score":0.5611326098442078},{"id":"https://openalex.org/keywords/predicate","display_name":"Predicate (mathematical logic)","score":0.546453595161438},{"id":"https://openalex.org/keywords/overhead","display_name":"Overhead (engineering)","score":0.5447843670845032},{"id":"https://openalex.org/keywords/asynchronous-communication","display_name":"Asynchronous communication","score":0.5311974883079529},{"id":"https://openalex.org/keywords/dependence-analysis","display_name":"Dependence analysis","score":0.5295634865760803},{"id":"https://openalex.org/keywords/automatic-parallelization","display_name":"Automatic parallelization","score":0.4962506890296936},{"id":"https://openalex.org/keywords/expression","display_name":"Expression (computer science)","score":0.41355279088020325},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.40822839736938477},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.11223679780960083}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8820527791976929},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.6901913285255432},{"id":"https://openalex.org/C2781172179","wikidata":"https://www.wikidata.org/wiki/Q853109","display_name":"Parallelism (grammar)","level":2,"score":0.5611326098442078},{"id":"https://openalex.org/C140146324","wikidata":"https://www.wikidata.org/wiki/Q1144319","display_name":"Predicate (mathematical logic)","level":2,"score":0.546453595161438},{"id":"https://openalex.org/C2779960059","wikidata":"https://www.wikidata.org/wiki/Q7113681","display_name":"Overhead (engineering)","level":2,"score":0.5447843670845032},{"id":"https://openalex.org/C151319957","wikidata":"https://www.wikidata.org/wiki/Q752739","display_name":"Asynchronous communication","level":2,"score":0.5311974883079529},{"id":"https://openalex.org/C27390822","wikidata":"https://www.wikidata.org/wiki/Q320724","display_name":"Dependence analysis","level":2,"score":0.5295634865760803},{"id":"https://openalex.org/C164833996","wikidata":"https://www.wikidata.org/wiki/Q2323839","display_name":"Automatic parallelization","level":3,"score":0.4962506890296936},{"id":"https://openalex.org/C90559484","wikidata":"https://www.wikidata.org/wiki/Q778379","display_name":"Expression (computer science)","level":2,"score":0.41355279088020325},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.40822839736938477},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.11223679780960083},{"id":"https://openalex.org/C31258907","wikidata":"https://www.wikidata.org/wiki/Q1301371","display_name":"Computer network","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/2983990.2984035","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2983990.2984035","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2016 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[{"id":"https://openalex.org/F4320306076","display_name":"National Science Foundation","ror":"https://ror.org/021nxhr62"},{"id":"https://openalex.org/F4320310133","display_name":"Rice University","ror":"https://ror.org/008zs3103"}],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":39,"referenced_works":["https://openalex.org/W1500987966","https://openalex.org/W1526922602","https://openalex.org/W1532213207","https://openalex.org/W1575730831","https://openalex.org/W1972872690","https://openalex.org/W1977899806","https://openalex.org/W1983587324","https://openalex.org/W2021838450","https://openalex.org/W2023168372","https://openalex.org/W2026370554","https://openalex.org/W2029215055","https://openalex.org/W2052172035","https://openalex.org/W2078483536","https://openalex.org/W2080573945","https://openalex.org/W2080696000","https://openalex.org/W2089014471","https://openalex.org/W2094878426","https://openalex.org/W2097061393","https://openalex.org/W2101132897","https://openalex.org/W2104342377","https://openalex.org/W2104824528","https://openalex.org/W2104861744","https://openalex.org/W2105285801","https://openalex.org/W2109693630","https://openalex.org/W2111946621","https://openalex.org/W2115920894","https://openalex.org/W2118004641","https://openalex.org/W2126415451","https://openalex.org/W2131335291","https://openalex.org/W2133608633","https://openalex.org/W2144344516","https://openalex.org/W2153510998","https://openalex.org/W2156866806","https://openalex.org/W2164890169","https://openalex.org/W2166864541","https://openalex.org/W2278354431","https://openalex.org/W2293085049","https://openalex.org/W4230415451","https://openalex.org/W4251292774"],"related_works":["https://openalex.org/W207411050","https://openalex.org/W1518850081","https://openalex.org/W2033700683","https://openalex.org/W2134198861","https://openalex.org/W1988103660","https://openalex.org/W2065971634","https://openalex.org/W2106472852","https://openalex.org/W3131263118","https://openalex.org/W2114006602","https://openalex.org/W4243649283"],"abstract_inverted_index":{"We":[0],"introduce":[1],"a":[2,60,74,127],"novel":[3],"approach":[4,18],"for":[5],"using":[6],"futures":[7],"to":[8,25,78,85,90,114,122],"automatically":[9],"parallelize":[10],"the":[11,27,71,108],"execution":[12,95],"of":[13,29],"pure":[14,52,129],"method":[15,53,130],"calls.":[16],"Our":[17],"is":[19],"built":[20],"on":[21,94],"three":[22],"new":[23],"techniques":[24],"address":[26],"challenge":[28],"automatic":[30],"parallelization":[31],"via":[32],"future":[33,36,47,64],"synthesis:":[34],"candidate":[35,46],"synthesis,":[37,48],"parallelism":[38,111],"benefit":[39,76,112],"analysis,":[40],"and":[41,58,66],"threshold":[42,104],"expression":[43,105],"synthesis.":[44],"During":[45],"our":[49],"system":[50,72],"annotates":[51],"calls":[54],"as":[55],"async":[56,81],"expressions":[57,82,117],"synthesizes":[59],"parallel":[61,75],"program":[62],"with":[63],"objects":[65],"their":[67],"type":[68],"declarations.":[69],"Next,":[70],"performs":[73],"analysis":[77,113],"determine":[79,123],"which":[80],"may":[83],"need":[84],"be":[86,120,133],"executed":[87,134],"sequentially":[88,135],"due":[89],"overhead":[91],"reasons,":[92],"based":[93],"profile":[96],"information":[97],"collected":[98],"from":[99,110],"multiple":[100],"test":[101],"inputs.":[102],"Finally,":[103],"synthesis":[106],"uses":[107],"output":[109],"synthesize":[115],"predicate":[116],"that":[118],"can":[119],"used":[121],"at":[124],"runtime":[125],"if":[126],"specific":[128],"call":[131],"should":[132],"or":[136],"in":[137],"parallel.":[138]},"counts_by_year":[{"year":2021,"cited_by_count":1},{"year":2020,"cited_by_count":1},{"year":2019,"cited_by_count":3},{"year":2018,"cited_by_count":1}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
