{"id":"https://openalex.org/W2098460515","doi":"https://doi.org/10.1145/1618452.1618499","title":"Debugging GPU stream programs through automatic dataflow recording and visualization","display_name":"Debugging GPU stream programs through automatic dataflow recording and visualization","publication_year":2009,"publication_date":"2009-12-01","ids":{"openalex":"https://openalex.org/W2098460515","doi":"https://doi.org/10.1145/1618452.1618499","mag":"2098460515"},"language":"en","primary_location":{"id":"doi:10.1145/1618452.1618499","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1618452.1618499","pdf_url":null,"source":{"id":"https://openalex.org/S185367456","display_name":"ACM Transactions on Graphics","issn_l":"0730-0301","issn":["0730-0301","1557-7368"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"ACM Transactions on Graphics","raw_type":"journal-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/A5100833423","display_name":"Qiming Hou","orcid":"https://orcid.org/0009-0004-4177-4704"},"institutions":[{"id":"https://openalex.org/I99065089","display_name":"Tsinghua University","ror":"https://ror.org/03cve4549","country_code":"CN","type":"education","lineage":["https://openalex.org/I99065089"]}],"countries":["CN"],"is_corresponding":true,"raw_author_name":"Qiming Hou","raw_affiliation_strings":["Tsinghua University"],"affiliations":[{"raw_affiliation_string":"Tsinghua University","institution_ids":["https://openalex.org/I99065089"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5101586939","display_name":"Kun Zhou","orcid":"https://orcid.org/0000-0002-3261-8927"},"institutions":[{"id":"https://openalex.org/I76130692","display_name":"Zhejiang University","ror":"https://ror.org/00a2xv884","country_code":"CN","type":"education","lineage":["https://openalex.org/I76130692"]}],"countries":["CN"],"is_corresponding":false,"raw_author_name":"Kun Zhou","raw_affiliation_strings":["Zhejiang University","Zhejiang, University"],"affiliations":[{"raw_affiliation_string":"Zhejiang University","institution_ids":["https://openalex.org/I76130692"]},{"raw_affiliation_string":"Zhejiang, University","institution_ids":["https://openalex.org/I76130692"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5101666011","display_name":"Baining Guo","orcid":"https://orcid.org/0000-0001-8349-8868"},"institutions":[{"id":"https://openalex.org/I4210113369","display_name":"Microsoft Research Asia (China)","ror":"https://ror.org/0300m5276","country_code":"CN","type":"company","lineage":["https://openalex.org/I1290206253","https://openalex.org/I4210113369"]},{"id":"https://openalex.org/I99065089","display_name":"Tsinghua University","ror":"https://ror.org/03cve4549","country_code":"CN","type":"education","lineage":["https://openalex.org/I99065089"]}],"countries":["CN"],"is_corresponding":false,"raw_author_name":"Baining Guo","raw_affiliation_strings":["Tsinghua University and Microsoft Research Asia","Tsinghua University, and Microsoft Research Asia#TAB#"],"affiliations":[{"raw_affiliation_string":"Tsinghua University and Microsoft Research Asia","institution_ids":["https://openalex.org/I4210113369","https://openalex.org/I99065089"]},{"raw_affiliation_string":"Tsinghua University, and Microsoft Research Asia#TAB#","institution_ids":["https://openalex.org/I4210113369","https://openalex.org/I99065089"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5100833423"],"corresponding_institution_ids":["https://openalex.org/I99065089"],"apc_list":null,"apc_paid":null,"fwci":2.1421,"has_fulltext":false,"cited_by_count":15,"citation_normalized_percentile":{"value":0.87730584,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":90,"max":98},"biblio":{"volume":"28","issue":"5","first_page":"1","last_page":"11"},"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/T10772","display_name":"Distributed systems and fault tolerance","score":0.9965999722480774,"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/T11424","display_name":"Security and Verification in Computing","score":0.9952999949455261,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/dataflow","display_name":"Dataflow","score":0.914530336856842},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.9133130311965942},{"id":"https://openalex.org/keywords/debugging","display_name":"Debugging","score":0.864523708820343},{"id":"https://openalex.org/keywords/interrupt","display_name":"Interrupt","score":0.7036755084991455},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.6733595132827759},{"id":"https://openalex.org/keywords/debugger","display_name":"Debugger","score":0.6627324819564819},{"id":"https://openalex.org/keywords/stream-processing","display_name":"Stream processing","score":0.5057671070098877},{"id":"https://openalex.org/keywords/dataflow-architecture","display_name":"Dataflow architecture","score":0.4604502320289612},{"id":"https://openalex.org/keywords/algorithmic-program-debugging","display_name":"Algorithmic program debugging","score":0.460314005613327},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.42998045682907104},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.41485393047332764},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.38696274161338806},{"id":"https://openalex.org/keywords/embedded-system","display_name":"Embedded system","score":0.3302317261695862}],"concepts":[{"id":"https://openalex.org/C96324660","wikidata":"https://www.wikidata.org/wiki/Q205446","display_name":"Dataflow","level":2,"score":0.914530336856842},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.9133130311965942},{"id":"https://openalex.org/C168065819","wikidata":"https://www.wikidata.org/wiki/Q845566","display_name":"Debugging","level":2,"score":0.864523708820343},{"id":"https://openalex.org/C41661131","wikidata":"https://www.wikidata.org/wiki/Q220764","display_name":"Interrupt","level":3,"score":0.7036755084991455},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.6733595132827759},{"id":"https://openalex.org/C2778485113","wikidata":"https://www.wikidata.org/wiki/Q193231","display_name":"Debugger","level":3,"score":0.6627324819564819},{"id":"https://openalex.org/C107027933","wikidata":"https://www.wikidata.org/wiki/Q2006448","display_name":"Stream processing","level":2,"score":0.5057671070098877},{"id":"https://openalex.org/C176727019","wikidata":"https://www.wikidata.org/wiki/Q1172415","display_name":"Dataflow architecture","level":3,"score":0.4604502320289612},{"id":"https://openalex.org/C136388014","wikidata":"https://www.wikidata.org/wiki/Q17084976","display_name":"Algorithmic program debugging","level":3,"score":0.460314005613327},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.42998045682907104},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.41485393047332764},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.38696274161338806},{"id":"https://openalex.org/C149635348","wikidata":"https://www.wikidata.org/wiki/Q193040","display_name":"Embedded system","level":1,"score":0.3302317261695862},{"id":"https://openalex.org/C173018170","wikidata":"https://www.wikidata.org/wiki/Q165678","display_name":"Microcontroller","level":2,"score":0.0}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1145/1618452.1618499","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1618452.1618499","pdf_url":null,"source":{"id":"https://openalex.org/S185367456","display_name":"ACM Transactions on Graphics","issn_l":"0730-0301","issn":["0730-0301","1557-7368"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"ACM Transactions on Graphics","raw_type":"journal-article"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.164.9588","is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.164.9588","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://www.kunzhou.net/2009/debug.pdf","raw_type":"text"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G1111546117","display_name":null,"funder_award_id":"60825201","funder_id":"https://openalex.org/F4320321001","funder_display_name":"National Natural Science Foundation of China"}],"funders":[{"id":"https://openalex.org/F4320306076","display_name":"National Science Foundation","ror":"https://ror.org/021nxhr62"},{"id":"https://openalex.org/F4320321001","display_name":"National Natural Science Foundation of China","ror":"https://ror.org/01h0zpd94"}],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":15,"referenced_works":["https://openalex.org/W1883303451","https://openalex.org/W1969278328","https://openalex.org/W1972544179","https://openalex.org/W1982205631","https://openalex.org/W2005728319","https://openalex.org/W2012858346","https://openalex.org/W2032309817","https://openalex.org/W2040851906","https://openalex.org/W2082766667","https://openalex.org/W2108157916","https://openalex.org/W2113643095","https://openalex.org/W2123372783","https://openalex.org/W2159862623","https://openalex.org/W2294559163","https://openalex.org/W4206566500"],"related_works":["https://openalex.org/W68341597","https://openalex.org/W1601811574","https://openalex.org/W2015607366","https://openalex.org/W1833557437","https://openalex.org/W1587224678","https://openalex.org/W2573066349","https://openalex.org/W1970470712","https://openalex.org/W4220716144","https://openalex.org/W1518535918","https://openalex.org/W2098460515"],"abstract_inverted_index":{"We":[0,199],"present":[1],"a":[2,51,130,184,207],"novel":[3,185],"framework":[4,178],"for":[5,271,276],"debugging":[6,17,177,253],"GPU":[7,71,181,197,204,216,236,261],"stream":[8,30,41,79],"programs":[9,31],"through":[10,163],"automatic":[11],"dataflow":[12,62,88,131],"recording":[13,63,223],"and":[14,104,135,149,166,218,274],"visualization.":[15],"Our":[16],"system":[18],"can":[19,157,228,256],"help":[20],"programmers":[21],"locate":[22],"errors":[23,96,109,245],"that":[24,65,187,211,255],"are":[25,110],"common":[26,94],"in":[27,151,246,260],"general":[28],"purpose":[29],"but":[32],"very":[33],"difficult":[34,112],"to":[35,58,113,127,140,190,243],"debug":[36,114],"with":[37,115],"existing":[38,116],"tools.":[39,117],"A":[40,172],"program":[42,49,61,80,121],"is":[43,81,133,179],"first":[44],"compiled":[45],"into":[46,74,215],"an":[47,128],"instrumented":[48,120],"using":[50,168],"compiler.":[52],"This":[53],"instrumenting":[54],"compiler":[55],"automatically":[56,92],"adds":[57],"the":[59,67,85,119,138,142,155,169,180,203,241],"original":[60],"code":[64],"saves":[66],"information":[68],"of":[69,146,175],"all":[70,147,152],"memory":[72,95,143],"operations":[73,227],"log":[75],"files.":[76],"The":[77,235],"resulting":[78],"then":[82],"executed":[83],"on":[84,202],"GPU.":[86],"With":[87],"recording,":[89],"our":[90,176],"debugger":[91],"detects":[93],"such":[97,268],"as":[98,232],"out-of-bound":[99],"access,":[100,103],"uninitialized":[101],"data":[102,272],"race":[105],"conditions":[106],"--":[107],"these":[108,213],"extremely":[111],"When":[118],"terminates,":[122],"either":[123],"normally":[124],"or":[125],"due":[126],"error,":[129],"visualizer":[132],"launched":[134],"it":[136],"allows":[137,240],"user":[139,156],"examine":[141],"operation":[144],"history":[145],"threads":[148,165],"values":[150],"streams.":[153],"Thus":[154],"analyze":[158],"error":[159],"sources":[160],"by":[161,205,250],"tracing":[162],"relevant":[164],"streams":[167],"recorded":[170],"dataflow.":[171],"key":[173],"ingredient":[174],"interrupt":[182,233,237],",":[183],"mechanism":[186,238],"we":[188,265],"introduce":[189],"support":[191],"CPU":[192,219],"function":[193],"calls":[194],"from":[195],"inside":[196],"code.":[198,221,262],"enable":[200],"interrupts":[201,214],"designing":[206],"specialized":[208],"compilation":[209],"algorithm":[210],"translates":[212],"kernels":[217],"management":[220],"Dataflow":[222],"involving":[224],"disk":[225],"I/O":[226],"thus":[229],"be":[230,257],"implemented":[231],"handlers.":[234],"also":[239],"programmer":[242],"discover":[244],"more":[247],"active":[248],"ways":[249],"developing":[251],"customized":[252],"functions":[254],"directly":[258],"used":[259],"As":[263],"examples":[264],"show":[266],"two":[267],"functions:":[269],"assert":[270],"verification":[273],"watch":[275],"visualizing":[277],"intermediate":[278],"results.":[279]},"counts_by_year":[{"year":2019,"cited_by_count":1},{"year":2017,"cited_by_count":1},{"year":2014,"cited_by_count":1},{"year":2013,"cited_by_count":4},{"year":2012,"cited_by_count":2}],"updated_date":"2026-04-04T16:13:02.066488","created_date":"2025-10-10T00:00:00"}
