{"id":"https://openalex.org/W4253346496","doi":"https://doi.org/10.1109/ipdps.2006.1639291","title":"Compiler assisted dynamic management of registers for network processors","display_name":"Compiler assisted dynamic management of registers for network processors","publication_year":2006,"publication_date":"2006-01-01","ids":{"openalex":"https://openalex.org/W4253346496","doi":"https://doi.org/10.1109/ipdps.2006.1639291"},"language":"en","primary_location":{"id":"doi:10.1109/ipdps.2006.1639291","is_oa":false,"landing_page_url":"https://doi.org/10.1109/ipdps.2006.1639291","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings 20th IEEE International Parallel &amp; Distributed Processing Symposium","raw_type":"proceedings-article"},"type":"conference-paper","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/A5017514062","display_name":"Ryan Collins","orcid":null},"institutions":[{"id":"https://openalex.org/I130701444","display_name":"Georgia Institute of Technology","ror":"https://ror.org/01zkghx44","country_code":"US","type":"education","lineage":["https://openalex.org/I130701444"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"R. Collins","raw_affiliation_strings":["College of Computing, Georgia Institute of Technology, Atlanta, GA, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"College of Computing, Georgia Institute of Technology, Atlanta, GA, USA","institution_ids":["https://openalex.org/I130701444"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5012904480","display_name":"Fernando Alegre","orcid":null},"institutions":[{"id":"https://openalex.org/I130701444","display_name":"Georgia Institute of Technology","ror":"https://ror.org/01zkghx44","country_code":"US","type":"education","lineage":["https://openalex.org/I130701444"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"F. Alegre","raw_affiliation_strings":["College of Computing, Georgia Institute of Technology, Atlanta, GA, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"College of Computing, Georgia Institute of Technology, Atlanta, GA, USA","institution_ids":["https://openalex.org/I130701444"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5103447779","display_name":"Xiaotong Zhuang","orcid":null},"institutions":[{"id":"https://openalex.org/I130701444","display_name":"Georgia Institute of Technology","ror":"https://ror.org/01zkghx44","country_code":"US","type":"education","lineage":["https://openalex.org/I130701444"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Xiaotong Zhuang","raw_affiliation_strings":["College of Computing, Georgia Institute of Technology, Atlanta, GA, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"College of Computing, Georgia Institute of Technology, Atlanta, GA, USA","institution_ids":["https://openalex.org/I130701444"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5061235810","display_name":"Santosh Pande","orcid":"https://orcid.org/0000-0001-6723-8062"},"institutions":[{"id":"https://openalex.org/I130701444","display_name":"Georgia Institute of Technology","ror":"https://ror.org/01zkghx44","country_code":"US","type":"education","lineage":["https://openalex.org/I130701444"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"S. Pande","raw_affiliation_strings":["College of Computing, Georgia Institute of Technology, Atlanta, GA, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"College of Computing, Georgia Institute of Technology, Atlanta, GA, USA","institution_ids":["https://openalex.org/I130701444"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I130701444"],"apc_list":null,"apc_paid":null,"fwci":0.2232,"has_fulltext":false,"cited_by_count":4,"citation_normalized_percentile":{"value":0.49759348,"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":"10 pp.","last_page":"10 pp."},"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/T10829","display_name":"Interconnection Networks and Systems","score":0.9993000030517578,"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"}},{"id":"https://openalex.org/T10904","display_name":"Embedded Systems Design Techniques","score":0.9990000128746033,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.9060840606689453},{"id":"https://openalex.org/keywords/context-switch","display_name":"Context switch","score":0.7643959522247314},{"id":"https://openalex.org/keywords/register-file","display_name":"Register file","score":0.6305838227272034},{"id":"https://openalex.org/keywords/network-processor","display_name":"Network processor","score":0.5602679252624512},{"id":"https://openalex.org/keywords/processor-register","display_name":"Processor register","score":0.5306543111801147},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.4904315173625946},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.47578561305999756},{"id":"https://openalex.org/keywords/latency","display_name":"Latency (audio)","score":0.46816086769104004},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.46529993414878845},{"id":"https://openalex.org/keywords/packet-processing","display_name":"Packet processing","score":0.4339885115623474},{"id":"https://openalex.org/keywords/embedded-system","display_name":"Embedded system","score":0.3557353615760803},{"id":"https://openalex.org/keywords/network-packet","display_name":"Network packet","score":0.3237376809120178},{"id":"https://openalex.org/keywords/memory-address","display_name":"Memory address","score":0.2504415214061737},{"id":"https://openalex.org/keywords/instruction-set","display_name":"Instruction set","score":0.23572087287902832},{"id":"https://openalex.org/keywords/computer-network","display_name":"Computer network","score":0.16956442594528198}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.9060840606689453},{"id":"https://openalex.org/C53833338","wikidata":"https://www.wikidata.org/wiki/Q1061424","display_name":"Context switch","level":2,"score":0.7643959522247314},{"id":"https://openalex.org/C117280010","wikidata":"https://www.wikidata.org/wiki/Q180944","display_name":"Register file","level":3,"score":0.6305838227272034},{"id":"https://openalex.org/C74366991","wikidata":"https://www.wikidata.org/wiki/Q2755335","display_name":"Network processor","level":3,"score":0.5602679252624512},{"id":"https://openalex.org/C2871975","wikidata":"https://www.wikidata.org/wiki/Q187466","display_name":"Processor register","level":4,"score":0.5306543111801147},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.4904315173625946},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.47578561305999756},{"id":"https://openalex.org/C82876162","wikidata":"https://www.wikidata.org/wiki/Q17096504","display_name":"Latency (audio)","level":2,"score":0.46816086769104004},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.46529993414878845},{"id":"https://openalex.org/C2779581428","wikidata":"https://www.wikidata.org/wiki/Q7122997","display_name":"Packet processing","level":3,"score":0.4339885115623474},{"id":"https://openalex.org/C149635348","wikidata":"https://www.wikidata.org/wiki/Q193040","display_name":"Embedded system","level":1,"score":0.3557353615760803},{"id":"https://openalex.org/C158379750","wikidata":"https://www.wikidata.org/wiki/Q214111","display_name":"Network packet","level":2,"score":0.3237376809120178},{"id":"https://openalex.org/C153247305","wikidata":"https://www.wikidata.org/wiki/Q835713","display_name":"Memory address","level":3,"score":0.2504415214061737},{"id":"https://openalex.org/C202491316","wikidata":"https://www.wikidata.org/wiki/Q272683","display_name":"Instruction set","level":2,"score":0.23572087287902832},{"id":"https://openalex.org/C31258907","wikidata":"https://www.wikidata.org/wiki/Q1301371","display_name":"Computer network","level":1,"score":0.16956442594528198},{"id":"https://openalex.org/C98986596","wikidata":"https://www.wikidata.org/wiki/Q1143031","display_name":"Semiconductor memory","level":2,"score":0.0},{"id":"https://openalex.org/C76155785","wikidata":"https://www.wikidata.org/wiki/Q418","display_name":"Telecommunications","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1109/ipdps.2006.1639291","is_oa":false,"landing_page_url":"https://doi.org/10.1109/ipdps.2006.1639291","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings 20th IEEE International Parallel &amp; Distributed Processing Symposium","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":11,"referenced_works":["https://openalex.org/W1994785004","https://openalex.org/W2086559686","https://openalex.org/W2089258895","https://openalex.org/W2091711390","https://openalex.org/W2104952512","https://openalex.org/W4214857877","https://openalex.org/W4233277524","https://openalex.org/W4233836027","https://openalex.org/W4235011932","https://openalex.org/W4236973777","https://openalex.org/W4246819420"],"related_works":["https://openalex.org/W2145021874","https://openalex.org/W2224192221","https://openalex.org/W2238992335","https://openalex.org/W22443627","https://openalex.org/W2884590322","https://openalex.org/W2416715103","https://openalex.org/W3185575180","https://openalex.org/W1995123792","https://openalex.org/W3162049332","https://openalex.org/W1973649306"],"abstract_inverted_index":{"Modern":[0],"network":[1,45,282],"processors":[2],"support":[3,73],"high":[4],"levels":[5],"of":[6,79,109,117,136,159,169,236],"parallelism":[7,33],"in":[8,42,249,263,271],"packet":[9],"processing":[10],"by":[11,65],"supporting":[12],"multiple":[13],"threads":[14],"that":[15,121,172,184],"execute":[16],"on":[17,278],"a":[18,88,96,99,125,166,181,197],"micro-engine.":[19],"Threads":[20],"switch":[21,127,206],"context":[22,126,205],"upon":[23],"encountering":[24],"long":[25],"latency":[26],"memory":[27,35,243],"accesses":[28],"and":[29,34,140,188,201,225,232,266],"this":[30],"way":[31],"the":[32,43,50,59,75,80,110,134,157,192,203,211,215,222,234,241,250,253,272],"access":[36],"can":[37],"be":[38,55,130,144,147],"overlapped.":[39],"Context":[40],"switches":[41],"typical":[44],"processor":[46],"architectures":[47],"such":[48],"as":[49],"IXP":[51,280],"are":[52,173],"designed":[53],"to":[54,69,95,105,114,146,149,220,227,260,268],"very":[56],"fast.":[57],"However,":[58,98],"low":[60],"overhead":[61],"is":[62,92,103,122,165],"partly":[63],"achieved":[64],"leaving":[66],"register":[67,86,111,120],"management":[68,87],"programs,":[70],"with":[71,208,245],"minimal":[72,186],"from":[74],"hardware.":[76],"The":[77,162,256],"complexity":[78],"multi-engine,":[81],"multi-threaded":[82],"environment":[83],"makes":[84],"manual":[85],"daunting":[89],"task,":[90],"which":[91],"better":[93],"left":[94],"compiler.":[97],"purely":[100],"static":[101,160,177],"analysis":[102],"unable":[104],"achieve":[106],"full":[107],"utilization":[108],"file":[112,200],"due":[113],"conservative":[115],"estimates":[116],"liveness.":[118],"A":[119],"live":[123,132],"across":[124],"point":[128],"must":[129,143],"considered":[131],"for":[133,274],"duration":[135],"all":[137],"other":[138,150],"threads,":[139],"so":[141],"it":[142],"assumed":[145],"unavailable":[148],"threads.":[151],"In":[152],"addition,":[153],"aliasing":[154],"further":[155],"reduces":[156],"effectiveness":[158],"analysis.":[161],"net":[163],"effect":[164],"large":[167],"number":[168],"idle":[170,264],"cycles":[171,265],"still":[174],"present":[175],"after":[176],"optimization.":[178],"We":[179,238],"propose":[180],"dynamic":[182,254],"solution":[183],"requires":[185],"software":[187,193],"hardware":[189,216],"support.":[190],"On":[191,214],"side,":[194,217],"we":[195,218],"take":[196],"pre-allocated":[198],"binary":[199],"annotate":[202],"potential":[204],"instructions":[207,244,248],"information":[209],"about":[210],"dead":[212,228],"registers.":[213,237],"try":[219],"rename":[221],"transfer":[223],"registers":[224,231],"addresses":[226],"general":[229],"purpose":[230],"update":[233],"usage":[235],"then":[239],"replace":[240],"long-latency":[242],"fast":[246],"move":[247],"architecture":[251],"using":[252],"context.":[255],"results":[257],"show":[258],"up":[259,267],"51%":[261],"reduction":[262],"H%":[269],"increase":[270],"throughput":[273],"hand":[275],"coded":[276],"applications":[277],"Intel":[279],"1200":[281],"processor.":[283]},"counts_by_year":[{"year":2014,"cited_by_count":1},{"year":2012,"cited_by_count":1}],"updated_date":"2026-07-29T14:22:42.915294","created_date":"2025-10-10T00:00:00"}
