{"id":"https://openalex.org/W2098582452","doi":"https://doi.org/10.1145/1086297.1086313","title":"Memory allocation for embedded systems with a compile-time-unknown scratch-pad size","display_name":"Memory allocation for embedded systems with a compile-time-unknown scratch-pad size","publication_year":2005,"publication_date":"2005-09-24","ids":{"openalex":"https://openalex.org/W2098582452","doi":"https://doi.org/10.1145/1086297.1086313","mag":"2098582452"},"language":"en","primary_location":{"id":"doi:10.1145/1086297.1086313","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1086297.1086313","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2005 international conference on Compilers, architectures and synthesis for embedded systems","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/A5029042738","display_name":"Nghi Nguyen","orcid":null},"institutions":[{"id":"https://openalex.org/I66946132","display_name":"University of Maryland, College Park","ror":"https://ror.org/047s2c258","country_code":"US","type":"education","lineage":["https://openalex.org/I66946132"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Nghi Nguyen","raw_affiliation_strings":["University of Maryland, College Park, MD"],"affiliations":[{"raw_affiliation_string":"University of Maryland, College Park, MD","institution_ids":["https://openalex.org/I66946132"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5109348969","display_name":"\u00c1ngel Manuel Gamaza Dom\u00ednguez","orcid":null},"institutions":[{"id":"https://openalex.org/I66946132","display_name":"University of Maryland, College Park","ror":"https://ror.org/047s2c258","country_code":"US","type":"education","lineage":["https://openalex.org/I66946132"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Angel Dominguez","raw_affiliation_strings":["University of Maryland, College Park, MD"],"affiliations":[{"raw_affiliation_string":"University of Maryland, College Park, MD","institution_ids":["https://openalex.org/I66946132"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5110710474","display_name":"Rajeev Barua","orcid":"https://orcid.org/0000-0003-4210-6893"},"institutions":[{"id":"https://openalex.org/I66946132","display_name":"University of Maryland, College Park","ror":"https://ror.org/047s2c258","country_code":"US","type":"education","lineage":["https://openalex.org/I66946132"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Rajeev Barua","raw_affiliation_strings":["University of Maryland, College Park, MD"],"affiliations":[{"raw_affiliation_string":"University of Maryland, College Park, MD","institution_ids":["https://openalex.org/I66946132"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5029042738"],"corresponding_institution_ids":["https://openalex.org/I66946132"],"apc_list":null,"apc_paid":null,"fwci":4.6406,"has_fulltext":false,"cited_by_count":72,"citation_normalized_percentile":{"value":0.94802296,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":89,"max":99},"biblio":{"volume":null,"issue":null,"first_page":"115","last_page":"125"},"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/T10363","display_name":"Low-power high-performance VLSI design","score":0.9988999962806702,"subfield":{"id":"https://openalex.org/subfields/2208","display_name":"Electrical and Electronic Engineering"},"field":{"id":"https://openalex.org/fields/22","display_name":"Engineering"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10829","display_name":"Interconnection Networks and Systems","score":0.998199999332428,"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.8612853288650513},{"id":"https://openalex.org/keywords/executable","display_name":"Executable","score":0.7762084007263184},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.6945379972457886},{"id":"https://openalex.org/keywords/cache","display_name":"Cache","score":0.5971968173980713},{"id":"https://openalex.org/keywords/compile-time","display_name":"Compile time","score":0.5581468343734741},{"id":"https://openalex.org/keywords/embedded-system","display_name":"Embedded system","score":0.5141711235046387},{"id":"https://openalex.org/keywords/software-portability","display_name":"Software portability","score":0.49898672103881836},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.49352920055389404},{"id":"https://openalex.org/keywords/static-random-access-memory","display_name":"Static random-access memory","score":0.4424739480018616},{"id":"https://openalex.org/keywords/cpu-cache","display_name":"CPU cache","score":0.43477296829223633},{"id":"https://openalex.org/keywords/toolchain","display_name":"Toolchain","score":0.432364821434021},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.42997485399246216},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.36875638365745544},{"id":"https://openalex.org/keywords/computer-hardware","display_name":"Computer hardware","score":0.1967850625514984}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8612853288650513},{"id":"https://openalex.org/C160145156","wikidata":"https://www.wikidata.org/wiki/Q778586","display_name":"Executable","level":2,"score":0.7762084007263184},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.6945379972457886},{"id":"https://openalex.org/C115537543","wikidata":"https://www.wikidata.org/wiki/Q165596","display_name":"Cache","level":2,"score":0.5971968173980713},{"id":"https://openalex.org/C200833197","wikidata":"https://www.wikidata.org/wiki/Q333707","display_name":"Compile time","level":3,"score":0.5581468343734741},{"id":"https://openalex.org/C149635348","wikidata":"https://www.wikidata.org/wiki/Q193040","display_name":"Embedded system","level":1,"score":0.5141711235046387},{"id":"https://openalex.org/C63000827","wikidata":"https://www.wikidata.org/wiki/Q3080428","display_name":"Software portability","level":2,"score":0.49898672103881836},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.49352920055389404},{"id":"https://openalex.org/C68043766","wikidata":"https://www.wikidata.org/wiki/Q267416","display_name":"Static random-access memory","level":2,"score":0.4424739480018616},{"id":"https://openalex.org/C189783530","wikidata":"https://www.wikidata.org/wiki/Q352090","display_name":"CPU cache","level":3,"score":0.43477296829223633},{"id":"https://openalex.org/C2777062904","wikidata":"https://www.wikidata.org/wiki/Q545406","display_name":"Toolchain","level":3,"score":0.432364821434021},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.42997485399246216},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.36875638365745544},{"id":"https://openalex.org/C9390403","wikidata":"https://www.wikidata.org/wiki/Q3966","display_name":"Computer hardware","level":1,"score":0.1967850625514984}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/1086297.1086313","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1086297.1086313","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2005 international conference on Compilers, architectures and synthesis for embedded systems","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[{"id":"https://metadata.un.org/sdg/7","display_name":"Affordable and clean energy","score":0.9100000262260437}],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":26,"referenced_works":["https://openalex.org/W1504058227","https://openalex.org/W1538592187","https://openalex.org/W1555915743","https://openalex.org/W1816728452","https://openalex.org/W1969288309","https://openalex.org/W1977857710","https://openalex.org/W1985515302","https://openalex.org/W1989831720","https://openalex.org/W2004915492","https://openalex.org/W2072176619","https://openalex.org/W2086329118","https://openalex.org/W2086807722","https://openalex.org/W2090809553","https://openalex.org/W2105778948","https://openalex.org/W2108117840","https://openalex.org/W2138625816","https://openalex.org/W2140243169","https://openalex.org/W2149590159","https://openalex.org/W2150073849","https://openalex.org/W2154632001","https://openalex.org/W2161147079","https://openalex.org/W2162528816","https://openalex.org/W2163270257","https://openalex.org/W2615865818","https://openalex.org/W2913245236","https://openalex.org/W6680811165"],"related_works":["https://openalex.org/W2256611834","https://openalex.org/W2611577313","https://openalex.org/W2186949690","https://openalex.org/W2154109900","https://openalex.org/W3019064768","https://openalex.org/W3019683061","https://openalex.org/W3186016413","https://openalex.org/W3173293443","https://openalex.org/W2314625368","https://openalex.org/W3126863801"],"abstract_inverted_index":{"This":[0],"paper":[1],"presents":[2,195],"the":[3,32,69,77,116,119,169,240,247,257,262,267,272,275,296,303,326],"first":[4,243],"memory":[5,13,23,140],"allocation":[6,62,232,276,299],"scheme":[7],"for":[8,64,108,227,274],"embedded":[9,110,330],"systems":[10],"having":[11,94],"scratch-pad":[12,22],"whose":[14,199],"size":[15,71,84,249,305],"is":[16,25,80,88,165,178,202,233,242,277,309,314],"unknown":[17],"at":[18,74,118,211,279,306],"compile":[19],"time.":[20],"A":[21],"(SPM)":[24],"a":[26,95,133,196,287],"fast":[27],"compiler-managed":[28],"SRAM":[29],"that":[30,68,83,179,283,325],"replaces":[31],"hardware-managed":[33],"cache.":[34],"Its":[35],"uses":[36],"are":[37,112,125,146],"motivated":[38],"by":[39,49,235],"its":[40,50],"better":[41],"real-time":[42],"guarantees":[43],"as":[44,139],"compared":[45],"to":[46,82,91],"cache":[47],"and":[48,58,87,151,224,245,308,338],"significantly":[51],"lower":[52],"overheads":[53],"in":[54,104,148,152,162,171,184,217,229,335],"energy":[55],"consumption,":[56],"area":[57],"access":[59],"time.Existing":[60],"data":[61],"schemes":[63],"SPM":[65,70,86,97,160,180,248,304],"all":[66],"require":[67],"be":[72,102,182,251],"known":[73],"compile-time.":[75,280],"Unfortunately,":[76],"resulting":[78,200],"executable":[79,201,210],"tied":[81],"of":[85,121,158,168,206,271,340],"not":[89,113],"portable":[90,136,203],"processor":[92],"implementations":[93],"different":[96,159,163],"size.":[98,208],"Such":[99,142],"portability":[100],"would":[101],"valuable":[103],"situations":[105,186],"where":[106],"programs":[107],"an":[109,292,311],"system":[111,117],"burned":[114],"into":[115],"time":[120],"manufacture,":[122],"but":[123],"rather":[124],"downloaded":[126,188],"onto":[127],"it":[128,219],"during":[129],"deployment,":[130],"either":[131],"using":[132],"network":[134],"or":[135],"media":[137],"such":[138,185],"sticks.":[141],"post-deployment":[143],"code":[144],"updates":[145],"common":[147,166],"distributed":[149],"networks":[150],"personal":[153],"hand-held":[154],"devices.":[155],"The":[156,176,209,231,253],"presence":[157],"sizes":[161],"devices":[164],"because":[167],"evolution":[170],"VLSI":[172],"technology":[173],"across":[174,204],"years.":[175],"result":[177],"cannot":[181],"used":[183,215],"with":[187],"code.To":[189],"overcome":[190],"this":[191,193],"limitation,":[192],"work":[194],"compiler":[197],"method":[198],"SPMs":[205],"any":[207],"run-time":[212,339],"places":[213],"frequently":[214],"objects":[216],"SPM;":[218],"considers":[220],"code,":[221],"global":[222],"variables":[223,226],"stack":[225],"placement":[228],"SPM.":[230],"decided":[234,263],"modified":[236],"loader":[237,254,331],"software":[238],"before":[239],"program":[241,258],"run":[244],"once":[246],"can":[250],"discovered.":[252],"then":[255],"modifies":[256],"binary":[259],"based":[260],"on":[261],"allocation.":[264],"To":[265],"keep":[266],"overhead":[268,327],"low,":[269],"much":[270],"pre-processing":[273],"done":[278],"Results":[281,322],"show":[282,324],"our":[284,329,341],"benchmarks":[285],"average":[286],"36%":[288],"speed":[289],"increase":[290],"versus":[291],"all-DRAM":[293],"allocation,":[294],"while":[295],"optimal":[297],"static":[298],"scheme,":[300],"which":[301],"knows":[302],"compile-time":[307],"thus":[310],"un-achievable":[312],"upper-bound,":[313],"only":[315],"slightly":[316],"faster":[317,319],"(41%":[318],"than":[320],"all-DRAM).":[321],"also":[323],"from":[328],"averages":[332],"about":[333],"1%":[334],"both":[336],"code-size":[337],"benchmarks.":[342]},"counts_by_year":[{"year":2021,"cited_by_count":1},{"year":2018,"cited_by_count":1},{"year":2017,"cited_by_count":5},{"year":2016,"cited_by_count":2},{"year":2015,"cited_by_count":4},{"year":2014,"cited_by_count":2},{"year":2013,"cited_by_count":7},{"year":2012,"cited_by_count":6}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
