{"id":"https://openalex.org/W2971120787","doi":"https://doi.org/10.1145/3328433.3328441","title":"Optimization coaching for fork/join applications on the Java virtual machine","display_name":"Optimization coaching for fork/join applications on the Java virtual machine","publication_year":2019,"publication_date":"2019-04-01","ids":{"openalex":"https://openalex.org/W2971120787","doi":"https://doi.org/10.1145/3328433.3328441","mag":"2971120787"},"language":"en","primary_location":{"id":"doi:10.1145/3328433.3328441","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3328433.3328441","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the Conference Companion of the 3rd International Conference on Art, Science, and Engineering of Programming","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/A5064285073","display_name":"Eduardo Rosales","orcid":"https://orcid.org/0000-0002-6404-3128"},"institutions":[{"id":"https://openalex.org/I57201433","display_name":"Universit\u00e0 della Svizzera italiana","ror":"https://ror.org/03c4atk17","country_code":"CH","type":"education","lineage":["https://openalex.org/I57201433"]}],"countries":["CH"],"is_corresponding":true,"raw_author_name":"Eduardo Rosales","raw_affiliation_strings":["Universit\u00e0 della Svizzera italiana, Lugano, Switzerland"],"affiliations":[{"raw_affiliation_string":"Universit\u00e0 della Svizzera italiana, Lugano, Switzerland","institution_ids":["https://openalex.org/I57201433"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5088744660","display_name":"Andrea Ros\u00e0","orcid":"https://orcid.org/0000-0002-6467-0113"},"institutions":[{"id":"https://openalex.org/I57201433","display_name":"Universit\u00e0 della Svizzera italiana","ror":"https://ror.org/03c4atk17","country_code":"CH","type":"education","lineage":["https://openalex.org/I57201433"]}],"countries":["CH"],"is_corresponding":false,"raw_author_name":"Andrea Ros\u00e0","raw_affiliation_strings":["Universit\u00e0 della Svizzera italiana, Lugano, Switzerland"],"affiliations":[{"raw_affiliation_string":"Universit\u00e0 della Svizzera italiana, Lugano, Switzerland","institution_ids":["https://openalex.org/I57201433"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5074152163","display_name":"Walter Binder","orcid":"https://orcid.org/0000-0002-2477-2182"},"institutions":[{"id":"https://openalex.org/I57201433","display_name":"Universit\u00e0 della Svizzera italiana","ror":"https://ror.org/03c4atk17","country_code":"CH","type":"education","lineage":["https://openalex.org/I57201433"]}],"countries":["CH"],"is_corresponding":false,"raw_author_name":"Walter Binder","raw_affiliation_strings":["Universit\u00e0 della Svizzera italiana, Lugano, Switzerland"],"affiliations":[{"raw_affiliation_string":"Universit\u00e0 della Svizzera italiana, Lugano, Switzerland","institution_ids":["https://openalex.org/I57201433"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5064285073"],"corresponding_institution_ids":["https://openalex.org/I57201433"],"apc_list":null,"apc_paid":null,"fwci":0.2408,"has_fulltext":false,"cited_by_count":1,"citation_normalized_percentile":{"value":0.49243412,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":94},"biblio":{"volume":null,"issue":null,"first_page":"1","last_page":"3"},"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/T10101","display_name":"Cloud Computing and Resource Management","score":0.9994999766349792,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"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/T11181","display_name":"Advanced Data Storage Technologies","score":0.9987999796867371,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.9007794260978699},{"id":"https://openalex.org/keywords/fork","display_name":"Fork (system call)","score":0.8841793537139893},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.6582456827163696},{"id":"https://openalex.org/keywords/join","display_name":"Join (topology)","score":0.4803658425807953},{"id":"https://openalex.org/keywords/fork\u2013join-queue","display_name":"Fork\u2013join queue","score":0.4769267439842224},{"id":"https://openalex.org/keywords/exploit","display_name":"Exploit","score":0.46889179944992065},{"id":"https://openalex.org/keywords/multi-core-processor","display_name":"Multi-core processor","score":0.4545527994632721},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.4466193914413452},{"id":"https://openalex.org/keywords/synchronization","display_name":"Synchronization (alternating current)","score":0.4396601915359497},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.4372836947441101},{"id":"https://openalex.org/keywords/virtual-machine","display_name":"Virtual machine","score":0.42845243215560913},{"id":"https://openalex.org/keywords/distributed-computing","display_name":"Distributed computing","score":0.40880563855171204},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.29048117995262146},{"id":"https://openalex.org/keywords/computer-network","display_name":"Computer network","score":0.12198948860168457},{"id":"https://openalex.org/keywords/computer-security","display_name":"Computer security","score":0.0837322473526001}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.9007794260978699},{"id":"https://openalex.org/C40523978","wikidata":"https://www.wikidata.org/wiki/Q14675","display_name":"Fork (system call)","level":2,"score":0.8841793537139893},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.6582456827163696},{"id":"https://openalex.org/C2776124973","wikidata":"https://www.wikidata.org/wiki/Q3183033","display_name":"Join (topology)","level":2,"score":0.4803658425807953},{"id":"https://openalex.org/C124444977","wikidata":"https://www.wikidata.org/wiki/Q4025962","display_name":"Fork\u2013join queue","level":4,"score":0.4769267439842224},{"id":"https://openalex.org/C165696696","wikidata":"https://www.wikidata.org/wiki/Q11287","display_name":"Exploit","level":2,"score":0.46889179944992065},{"id":"https://openalex.org/C78766204","wikidata":"https://www.wikidata.org/wiki/Q555032","display_name":"Multi-core processor","level":2,"score":0.4545527994632721},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.4466193914413452},{"id":"https://openalex.org/C2778562939","wikidata":"https://www.wikidata.org/wiki/Q1298791","display_name":"Synchronization (alternating current)","level":3,"score":0.4396601915359497},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.4372836947441101},{"id":"https://openalex.org/C25344961","wikidata":"https://www.wikidata.org/wiki/Q192726","display_name":"Virtual machine","level":2,"score":0.42845243215560913},{"id":"https://openalex.org/C120314980","wikidata":"https://www.wikidata.org/wiki/Q180634","display_name":"Distributed computing","level":1,"score":0.40880563855171204},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.29048117995262146},{"id":"https://openalex.org/C31258907","wikidata":"https://www.wikidata.org/wiki/Q1301371","display_name":"Computer network","level":1,"score":0.12198948860168457},{"id":"https://openalex.org/C38652104","wikidata":"https://www.wikidata.org/wiki/Q3510521","display_name":"Computer security","level":1,"score":0.0837322473526001},{"id":"https://openalex.org/C127162648","wikidata":"https://www.wikidata.org/wiki/Q16858953","display_name":"Channel (broadcasting)","level":2,"score":0.0},{"id":"https://openalex.org/C114614502","wikidata":"https://www.wikidata.org/wiki/Q76592","display_name":"Combinatorics","level":1,"score":0.0},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.0},{"id":"https://openalex.org/C128220111","wikidata":"https://www.wikidata.org/wiki/Q4531011","display_name":"Queue management system","level":3,"score":0.0},{"id":"https://openalex.org/C160403385","wikidata":"https://www.wikidata.org/wiki/Q220543","display_name":"Queue","level":2,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3328433.3328441","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3328433.3328441","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the Conference Companion of the 3rd International Conference on Art, Science, and Engineering of Programming","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":16,"referenced_works":["https://openalex.org/W1595593557","https://openalex.org/W1975579741","https://openalex.org/W2021978684","https://openalex.org/W2053486868","https://openalex.org/W2060718495","https://openalex.org/W2090247159","https://openalex.org/W2148186462","https://openalex.org/W2223702412","https://openalex.org/W2344197800","https://openalex.org/W2402827504","https://openalex.org/W2790484372","https://openalex.org/W2793138221","https://openalex.org/W3005566493","https://openalex.org/W4231677933","https://openalex.org/W4234858060","https://openalex.org/W4255185178"],"related_works":["https://openalex.org/W618449037","https://openalex.org/W2004812593","https://openalex.org/W2093074882","https://openalex.org/W2315975353","https://openalex.org/W2516172998","https://openalex.org/W2004439486","https://openalex.org/W2369103189","https://openalex.org/W4221031485","https://openalex.org/W2379380911","https://openalex.org/W3127886951"],"abstract_inverted_index":{"Developing":[0],"parallel":[1],"applications":[2,16,63,113,137,144],"that":[3],"exploit":[4],"the":[5,53,87,127,134],"hardware":[6],"resources":[7],"remains":[8],"challenging.":[9],"We":[10],"tackle":[11],"this":[12],"issue":[13],"for":[14],"fork/join":[15,31,57,62,96,131],"running":[17],"on":[18,133],"a":[19,26,60,100],"single":[20],"Java":[21,147],"Virtual":[22],"Machine":[23],"(JVM)":[24],"in":[25],"shared-memory":[27],"multicore.":[28],"An":[29],"optimal":[30],"application":[32],"should":[33],"maximize":[34,40],"parallelism":[35,132],"while":[36,42],"minimizing":[37,43],"overheads,":[38],"and":[39,75,81,118,152],"locality":[41],"contention.":[44],"Unfortunately,":[45],"achieving":[46],"these":[47],"goals":[48],"is":[49],"challenging":[50],"due":[51],"to":[52,86,93,104,108,123],"complexity":[54],"of":[55,111,130],"tuning":[56],"applications.":[58],"As":[59],"result,":[61],"often":[64],"suffer":[65],"from":[66,140],"several":[67],"performance":[68,115],"issues":[69],"such":[70,112,149],"as":[71,150],"excessive":[72],"object":[73],"creation":[74],"reclaiming,":[76],"suboptimal":[77],"forking,":[78],"load":[79],"imbalance,":[80],"inappropriate":[82],"synchronization.":[83],"In":[84],"contrast":[85],"extensive":[88],"manual":[89],"experimentation":[90],"commonly":[91],"required":[92],"properly":[94],"tune":[95],"applications,":[97],"we":[98],"devise":[99],"coaching":[101],"tool":[102],"able":[103],"automatically":[105],"point":[106],"developers":[107],"specific":[109],"parts":[110],"where":[114],"problems":[116],"originate":[117],"suggest":[119],"concrete":[120],"code":[121],"modifications":[122],"fix":[124],"them.":[125],"Given":[126],"increasing":[128],"popularity":[129],"JVM,":[135],"many":[136],"can":[138],"benefit":[139],"our":[141],"approach,":[142],"including":[143],"using":[145],"standard":[146],"APIs":[148],"Streams":[151],"CompletableFuture.":[153]},"counts_by_year":[{"year":2020,"cited_by_count":1}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
