{"id":"https://openalex.org/W2120758595","doi":"https://doi.org/10.1145/1449764.1449795","title":"Analysis and reduction of memory inefficiencies in Java strings","display_name":"Analysis and reduction of memory inefficiencies in Java strings","publication_year":2008,"publication_date":"2008-10-19","ids":{"openalex":"https://openalex.org/W2120758595","doi":"https://doi.org/10.1145/1449764.1449795","mag":"2120758595"},"language":"en","primary_location":{"id":"doi:10.1145/1449764.1449795","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1449764.1449795","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 23rd ACM SIGPLAN 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/A5063074861","display_name":"Kiyokuni Kawachiya","orcid":null},"institutions":[{"id":"https://openalex.org/I4210145865","display_name":"IBM Research - Tokyo","ror":"https://ror.org/04915qk43","country_code":"JP","type":"facility","lineage":["https://openalex.org/I1341412227","https://openalex.org/I4210114115","https://openalex.org/I4210145865"]},{"id":"https://openalex.org/I1341412227","display_name":"IBM (United States)","ror":"https://ror.org/05hh8d621","country_code":"US","type":"company","lineage":["https://openalex.org/I1341412227"]}],"countries":["JP","US"],"is_corresponding":true,"raw_author_name":"Kiyokuni Kawachiya","raw_affiliation_strings":["IBM Tokyo Research Laboratory, Yamato, Kanagawa, Japan","IBM Tokyo Research Laboratory, Yamato Kanagawa, Japan#TAB#"],"affiliations":[{"raw_affiliation_string":"IBM Tokyo Research Laboratory, Yamato, Kanagawa, Japan","institution_ids":["https://openalex.org/I4210145865"]},{"raw_affiliation_string":"IBM Tokyo Research Laboratory, Yamato Kanagawa, Japan#TAB#","institution_ids":["https://openalex.org/I1341412227"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5046999677","display_name":"Kazunori Ogata","orcid":null},"institutions":[{"id":"https://openalex.org/I4210145865","display_name":"IBM Research - Tokyo","ror":"https://ror.org/04915qk43","country_code":"JP","type":"facility","lineage":["https://openalex.org/I1341412227","https://openalex.org/I4210114115","https://openalex.org/I4210145865"]},{"id":"https://openalex.org/I1341412227","display_name":"IBM (United States)","ror":"https://ror.org/05hh8d621","country_code":"US","type":"company","lineage":["https://openalex.org/I1341412227"]}],"countries":["JP","US"],"is_corresponding":false,"raw_author_name":"Kazunori Ogata","raw_affiliation_strings":["IBM Tokyo Research Laboratory, Yamato, Kanagawa, Japan","IBM Tokyo Research Laboratory, Yamato Kanagawa, Japan#TAB#"],"affiliations":[{"raw_affiliation_string":"IBM Tokyo Research Laboratory, Yamato, Kanagawa, Japan","institution_ids":["https://openalex.org/I4210145865"]},{"raw_affiliation_string":"IBM Tokyo Research Laboratory, Yamato Kanagawa, Japan#TAB#","institution_ids":["https://openalex.org/I1341412227"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5001578514","display_name":"Tamiya Onodera","orcid":"https://orcid.org/0000-0002-6076-8236"},"institutions":[{"id":"https://openalex.org/I1341412227","display_name":"IBM (United States)","ror":"https://ror.org/05hh8d621","country_code":"US","type":"company","lineage":["https://openalex.org/I1341412227"]},{"id":"https://openalex.org/I4210145865","display_name":"IBM Research - Tokyo","ror":"https://ror.org/04915qk43","country_code":"JP","type":"facility","lineage":["https://openalex.org/I1341412227","https://openalex.org/I4210114115","https://openalex.org/I4210145865"]}],"countries":["JP","US"],"is_corresponding":false,"raw_author_name":"Tamiya Onodera","raw_affiliation_strings":["IBM Tokyo Research Laboratory, Yamato, Kanagawa, Japan","IBM Tokyo Research Laboratory, Yamato Kanagawa, Japan#TAB#"],"affiliations":[{"raw_affiliation_string":"IBM Tokyo Research Laboratory, Yamato, Kanagawa, Japan","institution_ids":["https://openalex.org/I4210145865"]},{"raw_affiliation_string":"IBM Tokyo Research Laboratory, Yamato Kanagawa, Japan#TAB#","institution_ids":["https://openalex.org/I1341412227"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5063074861"],"corresponding_institution_ids":["https://openalex.org/I1341412227","https://openalex.org/I4210145865"],"apc_list":null,"apc_paid":null,"fwci":2.8602,"has_fulltext":false,"cited_by_count":19,"citation_normalized_percentile":{"value":0.91529209,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":91,"max":97},"biblio":{"volume":null,"issue":null,"first_page":"385","last_page":"402"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T11424","display_name":"Security and Verification in Computing","score":0.9983000159263611,"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"}},"topics":[{"id":"https://openalex.org/T11424","display_name":"Security and Verification in Computing","score":0.9983000159263611,"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"}},{"id":"https://openalex.org/T12479","display_name":"Web Application Security Vulnerabilities","score":0.9969000220298767,"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.9968000054359436,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/heap","display_name":"Heap (data structure)","score":0.9037861824035645},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8114235401153564},{"id":"https://openalex.org/keywords/garbage-collection","display_name":"Garbage collection","score":0.7472820281982422},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.6756753921508789},{"id":"https://openalex.org/keywords/manual-memory-management","display_name":"Manual memory management","score":0.5640548467636108},{"id":"https://openalex.org/keywords/garbage","display_name":"Garbage","score":0.4901202619075775},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.4766172468662262},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.46982526779174805}],"concepts":[{"id":"https://openalex.org/C134757568","wikidata":"https://www.wikidata.org/wiki/Q274089","display_name":"Heap (data structure)","level":2,"score":0.9037861824035645},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8114235401153564},{"id":"https://openalex.org/C105122174","wikidata":"https://www.wikidata.org/wiki/Q322202","display_name":"Garbage collection","level":3,"score":0.7472820281982422},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.6756753921508789},{"id":"https://openalex.org/C82810778","wikidata":"https://www.wikidata.org/wiki/Q6752316","display_name":"Manual memory management","level":4,"score":0.5640548467636108},{"id":"https://openalex.org/C75403996","wikidata":"https://www.wikidata.org/wiki/Q5521979","display_name":"Garbage","level":2,"score":0.4901202619075775},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.4766172468662262},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.46982526779174805}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/1449764.1449795","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1449764.1449795","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications","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":17,"referenced_works":["https://openalex.org/W4015096","https://openalex.org/W194677851","https://openalex.org/W1510358061","https://openalex.org/W1514258760","https://openalex.org/W1556536463","https://openalex.org/W1568123054","https://openalex.org/W1583464938","https://openalex.org/W1644882639","https://openalex.org/W1949003947","https://openalex.org/W2000100269","https://openalex.org/W2008913431","https://openalex.org/W2009825697","https://openalex.org/W2101857770","https://openalex.org/W2104376684","https://openalex.org/W2146509778","https://openalex.org/W2166091242","https://openalex.org/W4251369193"],"related_works":["https://openalex.org/W2132258996","https://openalex.org/W2245694847","https://openalex.org/W3022395790","https://openalex.org/W1588734579","https://openalex.org/W2042469414","https://openalex.org/W2904040114","https://openalex.org/W2142383914","https://openalex.org/W2013466772","https://openalex.org/W1487406077","https://openalex.org/W1700460898"],"abstract_inverted_index":{"This":[0],"paper":[1,160],"describes":[2],"a":[3,28,50,225],"novel":[4],"approach":[5],"to":[6],"reduce":[7,154,249],"the":[8,32,40,59,63,79,88,104,141,145,155,165,176,189,193,206,236,240,250],"memory":[9,19,71,157],"consumption":[10],"of":[11,31,39,70,129,140,178,188,235,253],"Java":[12,23,130,166,207,227,255],"programs,":[13],"by":[14,103,117,150,257],"focusing":[15],"on":[16,224,259],"their":[17],"\"string":[18],"inefficiencies\".":[20],"In":[21,78],"recent":[22],"applications,":[24],"string":[25,47,60,84,95,142,156],"data":[26,48,61,143],"occupies":[27],"large":[29],"amount":[30],"heap":[33,42,147,238,252],"area.":[34],"For":[35],"example,":[36],"about":[37,232],"40%":[38],"live":[41,64,111,146,237,251],"area":[43],"is":[44,55,148,196],"used":[45,102],"for":[46,171,185,214],"when":[49],"production":[51,226,241],"J2EE":[52],"application":[53,242],"server":[54],"running.":[56],"By":[57],"investigating":[58],"in":[62,132,144,239],"heap,":[65,80],"we":[66,211],"identified":[67],"two":[68,162],"types":[69],"inefficiencies":[72,108],"--":[73],"\"duplication\"":[74],"and":[75,181],"\"unused":[76],"literals\".":[77],"there":[81],"are":[82,99],"many":[83,94],"objects":[85],"that":[86,136],"have":[87,230],"same":[89],"values.":[90],"There":[91],"also":[92,200,248],"exist":[93,109],"literals":[96,218],"whose":[97],"values":[98],"not":[100],"actually":[101,197],"application.":[105],"Since":[106],"these":[107,151],"as":[110],"objects,":[112],"they":[113],"cannot":[114],"be":[115],"eliminated":[116],"existing":[118],"garbage":[119,179],"collection":[120],"techniques,":[121],"which":[122,210],"only":[123],"remove":[124],"dead":[125],"objects.":[126],"Quantitative":[127],"analysis":[128],"heaps":[131],"real":[133],"applications":[134],"revealed":[135],"more":[137],"than":[138],"50%":[139],"wasted":[149],"inefficiencies.":[152],"To":[153],"inefficiencies,":[158],"this":[159],"proposes":[161],"techniques":[163,246],"at":[164,175,205],"virtual":[167,228],"machine":[168,229],"level,":[169,209],"\"StringGC\"":[170],"eliminating":[172],"duplicated":[173],"strings":[174],"time":[177],"collection,":[180],"\"Lazy":[182],"Body":[183],"Creation\"":[184],"delaying":[186],"part":[187],"literal":[190],"instantiation":[191],"until":[192],"literal's":[194],"value":[195],"used.":[198],"We":[199],"present":[201],"an":[202],"interesting":[203],"technique":[204],"program":[208],"call":[212],"\"BundleConverter\",":[213],"preventing":[215],"unused":[216],"message":[217],"from":[219],"being":[220],"instantiated.":[221],"Prototype":[222],"implementations":[223],"achieved":[231],"18%":[233],"reduction":[234],"server.":[243],"The":[244],"proposed":[245],"could":[247],"standard":[254],"benchmarks":[256],"11.6%":[258],"average,":[260],"without":[261],"noticeable":[262],"performance":[263],"degradation.":[264]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2017,"cited_by_count":3},{"year":2016,"cited_by_count":3},{"year":2015,"cited_by_count":2},{"year":2014,"cited_by_count":3},{"year":2012,"cited_by_count":2}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
