{"id":"https://openalex.org/W2042326586","doi":"https://doi.org/10.1145/2755573.2755610","title":"A Compiler-Runtime Application Binary Interface for Pipe-While Loops","display_name":"A Compiler-Runtime Application Binary Interface for Pipe-While Loops","publication_year":2015,"publication_date":"2015-06-12","ids":{"openalex":"https://openalex.org/W2042326586","doi":"https://doi.org/10.1145/2755573.2755610","mag":"2042326586"},"language":"en","primary_location":{"id":"doi:10.1145/2755573.2755610","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2755573.2755610","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 27th ACM symposium on Parallelism in Algorithms and Architectures","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/A5039750618","display_name":"Jim Sukha","orcid":null},"institutions":[{"id":"https://openalex.org/I1343180700","display_name":"Intel (United States)","ror":"https://ror.org/01ek73717","country_code":"US","type":"company","lineage":["https://openalex.org/I1343180700"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Jim Sukha","raw_affiliation_strings":["Intel Corporation, Hudson, MA, USA","[Intel Corporation, Hudson, MA, USA]"],"affiliations":[{"raw_affiliation_string":"Intel Corporation, Hudson, MA, USA","institution_ids":["https://openalex.org/I1343180700"]},{"raw_affiliation_string":"[Intel Corporation, Hudson, MA, USA]","institution_ids":["https://openalex.org/I1343180700"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":["https://openalex.org/A5039750618"],"corresponding_institution_ids":["https://openalex.org/I1343180700"],"apc_list":null,"apc_paid":null,"fwci":0.60126562,"has_fulltext":false,"cited_by_count":4,"citation_normalized_percentile":{"value":0.71435714,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":94,"max":96},"biblio":{"volume":null,"issue":null,"first_page":"83","last_page":"85"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":1.0,"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":1.0,"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/T10715","display_name":"Distributed and Parallel Computing Systems","score":0.9994999766349792,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"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.9990000128746033,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8542913794517517},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.7513638734817505},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6882896423339844},{"id":"https://openalex.org/keywords/runtime-system","display_name":"Runtime system","score":0.6593096256256104},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.57269686460495},{"id":"https://openalex.org/keywords/macro","display_name":"Macro","score":0.4698174297809601},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.4539378583431244},{"id":"https://openalex.org/keywords/preprocessor","display_name":"Preprocessor","score":0.45026496052742004},{"id":"https://openalex.org/keywords/construct","display_name":"Construct (python library)","score":0.4166262745857239}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8542913794517517},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.7513638734817505},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6882896423339844},{"id":"https://openalex.org/C2780870223","wikidata":"https://www.wikidata.org/wiki/Q1004415","display_name":"Runtime system","level":2,"score":0.6593096256256104},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.57269686460495},{"id":"https://openalex.org/C166955791","wikidata":"https://www.wikidata.org/wiki/Q629579","display_name":"Macro","level":2,"score":0.4698174297809601},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.4539378583431244},{"id":"https://openalex.org/C34736171","wikidata":"https://www.wikidata.org/wiki/Q918333","display_name":"Preprocessor","level":2,"score":0.45026496052742004},{"id":"https://openalex.org/C2780801425","wikidata":"https://www.wikidata.org/wiki/Q5164392","display_name":"Construct (python library)","level":2,"score":0.4166262745857239}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/2755573.2755610","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2755573.2755610","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 27th ACM symposium on Parallelism in Algorithms and Architectures","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":2,"referenced_works":["https://openalex.org/W2159811471","https://openalex.org/W2172013743"],"related_works":["https://openalex.org/W2366107444","https://openalex.org/W2030816003","https://openalex.org/W4388145910","https://openalex.org/W4239992647","https://openalex.org/W2150013480","https://openalex.org/W1554458299","https://openalex.org/W81423522","https://openalex.org/W2381570729","https://openalex.org/W2767298477","https://openalex.org/W2344299099"],"abstract_inverted_index":{"Pipe-while":[0],"loops":[1],"have":[2],"been":[3,22],"proposed":[4],"as":[5],"a":[6,39],"language":[7,71],"construct":[8,19],"for":[9],"expressing":[10],"pipeline":[11],"parallelism":[12],"in":[13,24],"task-parallel":[14,41],"languages.":[15],"However,":[16],"this":[17,80],"loop":[18],"has":[20],"only":[21],"prototyped":[23],"research":[25],"systems":[26],"that":[27],"lack":[28],"compiler":[29,93],"support.":[30],"We":[31,47,78],"demonstrate":[32],"how":[33],"to":[34,43,51,61],"extend":[35],"Intel\u00ae":[36],"Cilk\u2122":[37],"Plus,":[38],"production-quality":[40],"language,":[42],"implement":[44],"pipe-while":[45,63],"loops.":[46,64],"propose":[48],"an":[49],"extension":[50,66],"the":[52,84,90],"compiler-runtime":[53],"application":[54],"binary":[55],"interface":[56],"(ABI)":[57],"of":[58],"Cilk":[59,75],"Plus":[60,76],"support":[62],"This":[65],"maintains":[67],"compatibility":[68],"with":[69],"existing":[70,74],"constructs":[72],"and":[73,88,98],"binaries.":[77],"validate":[79],"ABI":[81],"by":[82],"prototyping":[83],"required":[85,91],"runtime":[86],"modifications":[87],"simulating":[89],"front-end":[92],"transformations":[94],"using":[95],"preprocessor":[96],"macros":[97],"C++":[99],"lambda":[100],"functions.":[101]},"counts_by_year":[{"year":2019,"cited_by_count":2},{"year":2018,"cited_by_count":2}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
