{"id":"https://openalex.org/W2002859943","doi":"https://doi.org/10.1016/j.cl.2013.04.002","title":"Context-sensitive trace inlining for Java","display_name":"Context-sensitive trace inlining for Java","publication_year":2013,"publication_date":"2013-04-19","ids":{"openalex":"https://openalex.org/W2002859943","doi":"https://doi.org/10.1016/j.cl.2013.04.002","mag":"2002859943","pmid":"https://pubmed.ncbi.nlm.nih.gov/27239163","pmcid":"https://www.ncbi.nlm.nih.gov/pmc/articles/4872537"},"language":"en","primary_location":{"id":"doi:10.1016/j.cl.2013.04.002","doi":"https://doi.org/10.1016/j.cl.2013.04.002","is_oa":true,"landing_page_url":"https://doi.org/10.1016/j.cl.2013.04.002","pdf_url":null,"source":{"id":"https://openalex.org/S181974911","display_name":"Computer Languages","issn_l":"0096-0551","issn":["0096-0551","1477-8424","1873-6742","1873-6866"],"is_oa":false,"is_in_doaj":false,"is_core":true,"listed_in":["ccf-c","cwts-core","jufo-1","poland-70","vabb-shw"],"host_organization":"https://openalex.org/P4310320990","host_organization_name":"Elsevier BV","host_organization_lineage":["https://openalex.org/P4310320990"],"host_organization_lineage_names":["Elsevier BV"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Computer Languages, Systems &amp; Structures","raw_type":"journal-article"},"volume":null,"type":"article","is_traditional":true,"indexed_in":["crossref","pubmed"],"open_access":{"is_oa":true,"oa_status":"hybrid","oa_url":"https://doi.org/10.1016/j.cl.2013.04.002","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5081580936","display_name":"Christian H\u00e4ubl","orcid":"https://orcid.org/0009-0003-5147-5364","observed_orcids":["https://orcid.org/0009-0003-5147-5364"]},"institutions":[{"id":"https://openalex.org/I121883995","display_name":"Johannes Kepler University of Linz","ror":"https://ror.org/052r2xn60","country_code":"AT","type":"education","lineage":["https://openalex.org/I121883995"]}],"countries":["AT"],"is_corresponding":true,"raw_author_name":"Christian H\u00e4ubl","raw_affiliation_strings":["Institute for System Software, Christian Doppler Laboratory for Automated Software Engineering, Johannes Kepler University Linz, Altenbergerstrasse 69, 4040 Linz, Austria","Institute for System Software, Christian Doppler Laboratory for Automated Software Engineering, Johannes Kepler University Linz, Altenbergerstrasse 69, 4040 Linz, Austria#TAB#"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Institute for System Software, Christian Doppler Laboratory for Automated Software Engineering, Johannes Kepler University Linz, Altenbergerstrasse 69, 4040 Linz, Austria","institution_ids":["https://openalex.org/I121883995"]},{"raw_affiliation_string":"Institute for System Software, Christian Doppler Laboratory for Automated Software Engineering, Johannes Kepler University Linz, Altenbergerstrasse 69, 4040 Linz, Austria#TAB#","institution_ids":["https://openalex.org/I121883995"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5013620492","display_name":"Christian L. Wimmer","orcid":"https://orcid.org/0000-0003-4691-4265","observed_orcids":["https://orcid.org/0000-0003-4691-4265"]},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Christian Wimmer","raw_affiliation_strings":["Oracle Labs, 500 Oracle Parkway, Redwood Shores, CA 94065, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Oracle Labs, 500 Oracle Parkway, Redwood Shores, CA 94065, USA","institution_ids":[]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5011678778","display_name":"Hanspeter M\u00f6ssenb\u00f6ck","orcid":"https://orcid.org/0000-0001-7706-7308","observed_orcids":["https://orcid.org/0000-0001-7706-7308"]},"institutions":[{"id":"https://openalex.org/I121883995","display_name":"Johannes Kepler University of Linz","ror":"https://ror.org/052r2xn60","country_code":"AT","type":"education","lineage":["https://openalex.org/I121883995"]}],"countries":["AT"],"is_corresponding":false,"raw_author_name":"Hanspeter M\u00f6ssenb\u00f6ck","raw_affiliation_strings":["Institute for System Software, Christian Doppler Laboratory for Automated Software Engineering, Johannes Kepler University Linz, Altenbergerstrasse 69, 4040 Linz, Austria","Institute for System Software, Christian Doppler Laboratory for Automated Software Engineering, Johannes Kepler University Linz, Altenbergerstrasse 69, 4040 Linz, Austria#TAB#"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Institute for System Software, Christian Doppler Laboratory for Automated Software Engineering, Johannes Kepler University Linz, Altenbergerstrasse 69, 4040 Linz, Austria","institution_ids":["https://openalex.org/I121883995"]},{"raw_affiliation_string":"Institute for System Software, Christian Doppler Laboratory for Automated Software Engineering, Johannes Kepler University Linz, Altenbergerstrasse 69, 4040 Linz, Austria#TAB#","institution_ids":["https://openalex.org/I121883995"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":["https://openalex.org/A5081580936"],"corresponding_institution_ids":["https://openalex.org/I121883995"],"apc_list":null,"apc_paid":{"value":1338,"currency":"EUR","value_usd":1443},"fwci":3.0286,"has_fulltext":false,"cited_by_count":12,"citation_normalized_percentile":{"value":0.90235729,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":87,"max":97},"biblio":{"volume":"39","issue":"4","first_page":"123","last_page":"141"},"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.8574000000953674,"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.8574000000953674,"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.13179999589920044,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"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/T12127","display_name":"Software System Performance and Reliability","score":0.0010999999940395355,"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/method-inlining","display_name":"method inlining","score":0.8379999995231628},{"id":"https://openalex.org/keywords/just-in-time-compilation","display_name":"just-in-time compilation","score":0.8730000257492065},{"id":"https://openalex.org/keywords/compilation-time","display_name":"compilation time","score":0.4580000042915344},{"id":"https://openalex.org/keywords/machine-code-generation","display_name":"machine code generation","score":0.8479999899864197},{"id":"https://openalex.org/keywords/constant-folding","display_name":"constant folding","score":0.746999979019165},{"id":"https://openalex.org/keywords/java-virtual-machine","display_name":"Java Virtual Machine","score":0.41999998688697815}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8917253017425537},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.7244451642036438},{"id":"https://openalex.org/C75291252","wikidata":"https://www.wikidata.org/wiki/Q1315756","display_name":"TRACE (psycholinguistics)","level":2,"score":0.7191796898841858},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.6558700203895569},{"id":"https://openalex.org/C76782552","wikidata":"https://www.wikidata.org/wiki/Q110546","display_name":"Just-in-time compilation","level":3,"score":0.6492882966995239},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5492923855781555},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.4555862545967102},{"id":"https://openalex.org/C185798385","wikidata":"https://www.wikidata.org/wiki/Q1161707","display_name":"Benchmark (surveying)","level":2,"score":0.44381603598594666},{"id":"https://openalex.org/C8767382","wikidata":"https://www.wikidata.org/wiki/Q1058454","display_name":"Dynamic compilation","level":3,"score":0.42543530464172363},{"id":"https://openalex.org/C115168132","wikidata":"https://www.wikidata.org/wiki/Q55813","display_name":"Machine code","level":3,"score":0.41947585344314575},{"id":"https://openalex.org/C138885662","wikidata":"https://www.wikidata.org/wiki/Q5891","display_name":"Philosophy","level":0,"score":0.0},{"id":"https://openalex.org/C205649164","wikidata":"https://www.wikidata.org/wiki/Q1071","display_name":"Geography","level":0,"score":0.0},{"id":"https://openalex.org/C41895202","wikidata":"https://www.wikidata.org/wiki/Q8162","display_name":"Linguistics","level":1,"score":0.0},{"id":"https://openalex.org/C13280743","wikidata":"https://www.wikidata.org/wiki/Q131089","display_name":"Geodesy","level":1,"score":0.0}],"mesh":[],"locations_count":4,"locations":[{"id":"doi:10.1016/j.cl.2013.04.002","doi":"https://doi.org/10.1016/j.cl.2013.04.002","is_oa":true,"landing_page_url":"https://doi.org/10.1016/j.cl.2013.04.002","pdf_url":null,"source":{"id":"https://openalex.org/S181974911","display_name":"Computer Languages","issn_l":"0096-0551","issn":["0096-0551","1477-8424","1873-6742","1873-6866"],"is_oa":false,"is_in_doaj":false,"is_core":true,"listed_in":["ccf-c","cwts-core","jufo-1","poland-70","vabb-shw"],"host_organization":"https://openalex.org/P4310320990","host_organization_name":"Elsevier BV","host_organization_lineage":["https://openalex.org/P4310320990"],"host_organization_lineage_names":["Elsevier BV"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Computer Languages, Systems &amp; Structures","raw_type":"journal-article"},{"id":"pmh:oai:europepmc.org:3847334","doi":null,"is_oa":true,"landing_page_url":"https://www.ncbi.nlm.nih.gov/pmc/articles/4872537","pdf_url":null,"source":{"id":"https://openalex.org/S4306400806","display_name":"Europe PMC (PubMed Central)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":"https://openalex.org/I1303153112","host_organization_name":"European Bioinformatics Institute","host_organization_lineage":["https://openalex.org/I1303153112"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":null,"raw_type":"Text"},{"id":"pmid:27239163","doi":null,"is_oa":false,"landing_page_url":"https://pubmed.ncbi.nlm.nih.gov/27239163","pdf_url":null,"source":{"id":"https://openalex.org/S4306525036","display_name":"PubMed","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":"https://openalex.org/I1299303238","host_organization_name":"National Institutes of Health","host_organization_lineage":["https://openalex.org/I1299303238"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Computer languages, systems & structures","raw_type":"Journal Article"},{"id":"pmh:oai:pubmedcentral.nih.gov:4872537","doi":null,"is_oa":true,"landing_page_url":"https://pmc.ncbi.nlm.nih.gov/articles/PMC4872537/","pdf_url":null,"source":{"id":"https://openalex.org/S2764455111","display_name":"PubMed Central","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":"https://openalex.org/I1299303238","host_organization_name":"National Institutes of Health","host_organization_lineage":["https://openalex.org/I1299303238"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Comput Lang Syst Struct","raw_type":"Text"}],"best_oa_location":{"id":"doi:10.1016/j.cl.2013.04.002","doi":"https://doi.org/10.1016/j.cl.2013.04.002","is_oa":true,"landing_page_url":"https://doi.org/10.1016/j.cl.2013.04.002","pdf_url":null,"source":{"id":"https://openalex.org/S181974911","display_name":"Computer Languages","issn_l":"0096-0551","issn":["0096-0551","1477-8424","1873-6742","1873-6866"],"is_oa":false,"is_in_doaj":false,"is_core":true,"listed_in":["ccf-c","cwts-core","jufo-1","poland-70","vabb-shw"],"host_organization":"https://openalex.org/P4310320990","host_organization_name":"Elsevier BV","host_organization_lineage":["https://openalex.org/P4310320990"],"host_organization_lineage_names":["Elsevier BV"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Computer Languages, Systems &amp; Structures","raw_type":"journal-article"},"sustainable_development_goals":[],"study_designs":[],"awards":[{"id":"https://openalex.org/G6888431290","display_name":"Generalization of Just-in-Time Trace Compilation for Java","funder_award_id":"P22493","funder_id":"https://openalex.org/F4320321181","funder_display_name":"Austrian Science Fund"}],"funders":[{"id":"https://openalex.org/F4320321181","display_name":"Austrian Science Fund","ror":"https://ror.org/013tf3c58"}],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":28,"referenced_works":["https://openalex.org/W78687102","https://openalex.org/W150926849","https://openalex.org/W1598886868","https://openalex.org/W1846902312","https://openalex.org/W1982205631","https://openalex.org/W2030281933","https://openalex.org/W2037565762","https://openalex.org/W2037823608","https://openalex.org/W2057651724","https://openalex.org/W2072617265","https://openalex.org/W2072737419","https://openalex.org/W2103091452","https://openalex.org/W2111783950","https://openalex.org/W2111947818","https://openalex.org/W2113578526","https://openalex.org/W2116136092","https://openalex.org/W2118547657","https://openalex.org/W2130262734","https://openalex.org/W2149914527","https://openalex.org/W2159558457","https://openalex.org/W2166091242","https://openalex.org/W2171240827","https://openalex.org/W2197000251","https://openalex.org/W3138455083","https://openalex.org/W4231002400","https://openalex.org/W4232181514","https://openalex.org/W4239599010","https://openalex.org/W4242589468"],"related_works":["https://openalex.org/W2072617265","https://openalex.org/W4232181514","https://openalex.org/W1846902312","https://openalex.org/W2080508069","https://openalex.org/W2037565762","https://openalex.org/W1479768891","https://openalex.org/W4241029635","https://openalex.org/W2053262234","https://openalex.org/W7099248401","https://openalex.org/W7038894935"],"abstract_inverted_index":{"Method":[0],"inlining":[1,35,121,133,145,201,215],"is":[2,36,49,146,175,179,209],"one":[3],"of":[4,69,119,128,205,256],"the":[5,16,30,40,56,88,107,117,123,126,160,192,203,218,242,252],"most":[6],"important":[7],"optimizations":[8,267],"in":[9,75],"method-based":[10,243],"just-in-time":[11],"(JIT)":[12],"compilers.":[13],"It":[14],"widens":[15],"compilation":[17,41,254],"scope":[18,255],"and":[19,44,82,97,125,225,227],"therefore":[20],"allows":[21],"optimizing":[22],"multiple":[23],"methods":[24],"as":[25,269],"a":[26,93,98,261],"whole,":[27],"which":[28,169],"increases":[29,43],"performance.":[31,57],"However,":[32],"if":[33],"method":[34,141,150,185],"used":[37],"too":[38,45],"frequently,":[39],"time":[42],"much":[46],"machine":[47,80,85,130,207],"code":[48,208],"generated.":[50],"This":[51,72],"has":[52,134,260],"negative":[53],"effects":[54],"on":[55,112,122,191,217,264],"Trace-based":[58],"JIT":[59],"compilers":[60],"only":[61,153],"compile":[62],"frequently":[63,154],"executed":[64,155],"paths,":[65],"so-called":[66],"traces,":[67],"instead":[68],"whole":[70],"methods.":[71],"may":[73,163],"result":[74],"faster":[76],"compilation,":[77],"less":[78],"generated":[79,129,206],"code,":[81],"better":[83],"optimized":[84],"code.":[86,131],"In":[87],"previous":[89],"work,":[90,114],"we":[91,115,249],"implemented":[92],"trace":[94,120,144,177],"recording":[95],"infrastructure":[96],"trace-based":[99,231,258],"compiler":[100,232,259,266],"for":[101],"[Formula:":[102],"see":[103],"text],":[104],"by":[105],"modifying":[106],"Java":[108,244],"HotSpot":[109,245],"VM.":[110],"Based":[111],"this":[113],"evaluate":[116,213],"effect":[118,263],"performance":[124,240],"amount":[127,204],"Trace":[132],"several":[135,214],"major":[136],"advantages":[137,197],"when":[138],"compared":[139],"to":[140,236],"inlining.":[142,171],"First,":[143],"more":[147,199],"selective":[148],"than":[149,241],"inlining,":[151],"because":[152],"paths":[156],"are":[157],"inlined.":[158],"Second,":[159],"recorded":[161],"traces":[162],"capture":[164],"information":[165,178],"about":[166],"virtual":[167],"calls,":[168],"simplify":[170],"A":[172],"third":[173],"advantage":[174],"that":[176,183,229,251],"context":[180],"sensitive":[181],"so":[182],"different":[184],"parts":[186],"can":[187],"be":[188],"inlined":[189],"depending":[190],"specific":[193],"call":[194],"site.":[195],"These":[196],"allow":[198],"aggressive":[200],"while":[202],"still":[210],"reasonable.":[211],"We":[212],"heuristics":[216],"benchmark":[219],"suites":[220],"DaCapo":[221],"9.12":[222],"Bach,":[223],"SPECjbb2005,":[224],"SPECjvm2008":[226],"show":[228,250],"our":[230,257],"achieves":[233],"an":[234],"up":[235],"51%":[237],"higher":[238],"peak":[239],"client":[246],"compiler.":[247],"Furthermore,":[248],"large":[253],"positive":[262],"other":[265],"such":[268],"constant":[270],"folding":[271],"or":[272],"null":[273],"check":[274],"elimination.":[275]},"counts_by_year":[{"year":2022,"cited_by_count":1},{"year":2021,"cited_by_count":1},{"year":2019,"cited_by_count":2},{"year":2018,"cited_by_count":1},{"year":2016,"cited_by_count":3},{"year":2015,"cited_by_count":2},{"year":2014,"cited_by_count":1},{"year":2013,"cited_by_count":1}],"updated_date":"2026-11-10T11:39:43.021295","created_date":"2016-06-24T00:00:00"}
