{"id":"https://openalex.org/W2515470496","doi":"https://doi.org/10.1145/2970276.2970346","title":"Automatic microbenchmark generation to prevent dead code elimination and constant folding","display_name":"Automatic microbenchmark generation to prevent dead code elimination and constant folding","publication_year":2016,"publication_date":"2016-08-25","ids":{"openalex":"https://openalex.org/W2515470496","doi":"https://doi.org/10.1145/2970276.2970346","mag":"2515470496"},"language":"en","primary_location":{"id":"doi:10.1145/2970276.2970346","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2970276.2970346","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering","raw_type":"proceedings-article"},"type":"preprint","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/A5079359000","display_name":"Marcelino Rodriguez-Cancio","orcid":null},"institutions":[{"id":"https://openalex.org/I56067802","display_name":"Universit\u00e9 de Rennes","ror":"https://ror.org/015m7wh34","country_code":"FR","type":"education","lineage":["https://openalex.org/I56067802"]}],"countries":["FR"],"is_corresponding":true,"raw_author_name":"Marcelino Rodriguez-Cancio","raw_affiliation_strings":["University of Rennes 1, France"],"affiliations":[{"raw_affiliation_string":"University of Rennes 1, France","institution_ids":["https://openalex.org/I56067802"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5079739010","display_name":"Beno\u00eet Combemale","orcid":"https://orcid.org/0000-0002-7104-7848"},"institutions":[{"id":"https://openalex.org/I56067802","display_name":"Universit\u00e9 de Rennes","ror":"https://ror.org/015m7wh34","country_code":"FR","type":"education","lineage":["https://openalex.org/I56067802"]},{"id":"https://openalex.org/I1326498283","display_name":"Institut national de recherche en informatique et en automatique","ror":"https://ror.org/02kvxyf05","country_code":"FR","type":"funder","lineage":["https://openalex.org/I1326498283"]}],"countries":["FR"],"is_corresponding":false,"raw_author_name":"Benoit Combemale","raw_affiliation_strings":["University of Rennes 1, France / INRIA, France"],"affiliations":[{"raw_affiliation_string":"University of Rennes 1, France / INRIA, France","institution_ids":["https://openalex.org/I56067802","https://openalex.org/I1326498283"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5086536054","display_name":"Beno\u00eet Baudry","orcid":"https://orcid.org/0000-0002-4015-4640"},"institutions":[{"id":"https://openalex.org/I1326498283","display_name":"Institut national de recherche en informatique et en automatique","ror":"https://ror.org/02kvxyf05","country_code":"FR","type":"funder","lineage":["https://openalex.org/I1326498283"]}],"countries":["FR"],"is_corresponding":false,"raw_author_name":"Benoit Baudry","raw_affiliation_strings":["INRIA, France"],"affiliations":[{"raw_affiliation_string":"INRIA, France","institution_ids":["https://openalex.org/I1326498283"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5079359000"],"corresponding_institution_ids":["https://openalex.org/I56067802"],"apc_list":null,"apc_paid":null,"fwci":1.9919058,"has_fulltext":false,"cited_by_count":19,"citation_normalized_percentile":{"value":0.90280002,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":89,"max":98},"biblio":{"volume":null,"issue":null,"first_page":"132","last_page":"143"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9994000196456909,"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"}},"topics":[{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9994000196456909,"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9987000226974487,"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.9987000226974487,"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/payload","display_name":"Payload (computing)","score":0.9004536867141724},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8487051725387573},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.742547869682312},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.6850859522819519},{"id":"https://openalex.org/keywords/constant","display_name":"Constant (computer programming)","score":0.5556516051292419},{"id":"https://openalex.org/keywords/process","display_name":"Process (computing)","score":0.4807724356651306},{"id":"https://openalex.org/keywords/folding","display_name":"Folding (DSP implementation)","score":0.44635850191116333},{"id":"https://openalex.org/keywords/distributed-computing","display_name":"Distributed computing","score":0.3955696225166321},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.3610025942325592},{"id":"https://openalex.org/keywords/real-time-computing","display_name":"Real-time computing","score":0.32404446601867676},{"id":"https://openalex.org/keywords/computer-network","display_name":"Computer network","score":0.07295018434524536}],"concepts":[{"id":"https://openalex.org/C134066672","wikidata":"https://www.wikidata.org/wiki/Q1424639","display_name":"Payload (computing)","level":3,"score":0.9004536867141724},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8487051725387573},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.742547869682312},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.6850859522819519},{"id":"https://openalex.org/C2777027219","wikidata":"https://www.wikidata.org/wiki/Q1284190","display_name":"Constant (computer programming)","level":2,"score":0.5556516051292419},{"id":"https://openalex.org/C98045186","wikidata":"https://www.wikidata.org/wiki/Q205663","display_name":"Process (computing)","level":2,"score":0.4807724356651306},{"id":"https://openalex.org/C2776545253","wikidata":"https://www.wikidata.org/wiki/Q5464292","display_name":"Folding (DSP implementation)","level":2,"score":0.44635850191116333},{"id":"https://openalex.org/C120314980","wikidata":"https://www.wikidata.org/wiki/Q180634","display_name":"Distributed computing","level":1,"score":0.3955696225166321},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.3610025942325592},{"id":"https://openalex.org/C79403827","wikidata":"https://www.wikidata.org/wiki/Q3988","display_name":"Real-time computing","level":1,"score":0.32404446601867676},{"id":"https://openalex.org/C31258907","wikidata":"https://www.wikidata.org/wiki/Q1301371","display_name":"Computer network","level":1,"score":0.07295018434524536},{"id":"https://openalex.org/C127413603","wikidata":"https://www.wikidata.org/wiki/Q11023","display_name":"Engineering","level":0,"score":0.0},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.0},{"id":"https://openalex.org/C158379750","wikidata":"https://www.wikidata.org/wiki/Q214111","display_name":"Network packet","level":2,"score":0.0},{"id":"https://openalex.org/C119599485","wikidata":"https://www.wikidata.org/wiki/Q43035","display_name":"Electrical engineering","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/2970276.2970346","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2970276.2970346","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G1199862281","display_name":null,"funder_award_id":"FP7-ICT-2011-9 No. 600654","funder_id":"https://openalex.org/F4320334963","funder_display_name":"Fifth Framework Programme"}],"funders":[{"id":"https://openalex.org/F4320334963","display_name":"Fifth Framework Programme","ror":null}],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":32,"referenced_works":["https://openalex.org/W9541822","https://openalex.org/W1575308494","https://openalex.org/W1607519102","https://openalex.org/W1843198456","https://openalex.org/W1971388424","https://openalex.org/W1997726341","https://openalex.org/W2060015309","https://openalex.org/W2062349224","https://openalex.org/W2068880428","https://openalex.org/W2074770709","https://openalex.org/W2076880263","https://openalex.org/W2088449116","https://openalex.org/W2090169197","https://openalex.org/W2107484131","https://openalex.org/W2111262474","https://openalex.org/W2112582249","https://openalex.org/W2114054012","https://openalex.org/W2128246354","https://openalex.org/W2130655713","https://openalex.org/W2133297674","https://openalex.org/W2149207009","https://openalex.org/W2153375074","https://openalex.org/W2153530968","https://openalex.org/W2159586681","https://openalex.org/W2165134790","https://openalex.org/W2169496508","https://openalex.org/W2327292757","https://openalex.org/W2493595245","https://openalex.org/W2952417600","https://openalex.org/W3151686641","https://openalex.org/W4254134390","https://openalex.org/W6639080219"],"related_works":["https://openalex.org/W1535080110","https://openalex.org/W306312984","https://openalex.org/W857189463","https://openalex.org/W2979675132","https://openalex.org/W2790520092","https://openalex.org/W4306309337","https://openalex.org/W20648474","https://openalex.org/W2109516765","https://openalex.org/W4288094128","https://openalex.org/W4313563004"],"abstract_inverted_index":{"Microbenchmarking":[0],"evaluates,":[1],"in":[2,16,106,121,145,178,207,235],"isolation,":[3],"the":[4,30,39,43,51,64,72,78,95,116,141,157,169,191,196,217],"execution":[5,40,65],"time":[6,147],"of":[7,21,42,56,63,98,115,171,205,219],"small":[8,134],"code":[9,31,103,124,166],"segments":[10,206],"that":[11,36,49,136,195,213],"play":[12],"a":[13,22,34,47,53,60,88,102,107,133,160,179,202],"critical":[14,27],"role":[15],"large":[17,44,54,108,203],"applications.":[18],"The":[19,173],"accuracy":[20],"microbenchmark":[23,130],"depends":[24],"on":[25,94],"two":[26,114],"tasks:":[28],"wrap":[29],"segment":[32,104,158],"into":[33,159],"payload":[35,52,162],"faithfully":[37],"recreates":[38],"conditions":[41],"application;":[45],"build":[46,87],"scaffold":[48,79],"runs":[50],"number":[55],"times":[57],"to":[58,86,167,200],"get":[59],"statistical":[61],"estimate":[62],"time.":[66],"While":[67],"recent":[68],"frameworks":[69],"such":[70,132],"as":[71],"Java":[73,231],"Microbenchmark":[74],"Harness":[75],"(JMH)":[76],"address":[77],"challenge,":[80],"developers":[81,232],"have":[82],"very":[83],"limited":[84],"support":[85],"correct":[89],"payload.":[90],"This":[91],"work":[92],"focuses":[93],"automatic":[96],"generation":[97],"payloads,":[99],"starting":[100],"from":[101],"selected":[105],"application.":[109],"Our":[110,153],"generative":[111],"technique":[112,154],"prevents":[113],"most":[117],"common":[118],"mistakes":[119],"made":[120],"microbenchmarks:":[122],"dead":[123],"elimination":[125],"and":[126,143,163,225],"constant":[127],"folding.":[128],"A":[129],"is":[131,176,198],"program":[135],"can":[137,215],"be":[138],"\u201cover-optimized\u201d":[139],"by":[140,222,229],"JIT":[142],"result":[144],"distorted":[146],"measures,":[148],"if":[149],"not":[150],"designed":[151],"carefully.":[152],"automatically":[155],"extracts":[156],"compilable":[161],"generates":[164,184],"additional":[165],"prevent":[168],"risks":[170],"\u201cover-optimization\u201d.":[172],"whole":[174],"approach":[175],"embedded":[177],"tool":[180,197],"called":[181],"AutoJMH,":[182,193],"which":[183],"payloads":[185,220],"for":[186],"JMH":[187],"scaffolds.":[188],"We":[189,210],"validate":[190],"capabilities":[192],"showing":[194],"able":[199],"process":[201],"percentage":[204],"real":[208],"programs.":[209],"also":[211],"show":[212],"AutoJMH":[214],"match":[216],"quality":[218],"handwritten":[221],"performance":[223],"experts":[224],"outperform":[226],"those":[227],"written":[228],"professional":[230],"without":[233],"experience":[234],"microbenchmarking.":[236]},"counts_by_year":[{"year":2025,"cited_by_count":2},{"year":2023,"cited_by_count":3},{"year":2022,"cited_by_count":4},{"year":2021,"cited_by_count":6},{"year":2020,"cited_by_count":1},{"year":2019,"cited_by_count":2},{"year":2018,"cited_by_count":1}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
