{"id":"https://openalex.org/W2115732097","doi":"https://doi.org/10.1145/1882291.1882302","title":"A trace simplification technique for effective debugging of concurrent programs","display_name":"A trace simplification technique for effective debugging of concurrent programs","publication_year":2010,"publication_date":"2010-11-07","ids":{"openalex":"https://openalex.org/W2115732097","doi":"https://doi.org/10.1145/1882291.1882302","mag":"2115732097"},"language":"en","primary_location":{"id":"doi:10.1145/1882291.1882302","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1882291.1882302","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the eighteenth ACM SIGSOFT international symposium on Foundations of software engineering","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/A5067292584","display_name":"Nicholas Jalbert","orcid":null},"institutions":[{"id":"https://openalex.org/I95457486","display_name":"University of California, Berkeley","ror":"https://ror.org/01an7q238","country_code":"US","type":"education","lineage":["https://openalex.org/I95457486"]},{"id":"https://openalex.org/I134446601","display_name":"Berkeley College","ror":"https://ror.org/02xewxa75","country_code":"US","type":"education","lineage":["https://openalex.org/I134446601"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Nicholas Jalbert","raw_affiliation_strings":["UC Berkeley, Berkeley, CA, USA"],"affiliations":[{"raw_affiliation_string":"UC Berkeley, Berkeley, CA, USA","institution_ids":["https://openalex.org/I134446601","https://openalex.org/I95457486"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5101569699","display_name":"Koushik Sen","orcid":"https://orcid.org/0000-0002-4539-9188"},"institutions":[{"id":"https://openalex.org/I95457486","display_name":"University of California, Berkeley","ror":"https://ror.org/01an7q238","country_code":"US","type":"education","lineage":["https://openalex.org/I95457486"]},{"id":"https://openalex.org/I134446601","display_name":"Berkeley College","ror":"https://ror.org/02xewxa75","country_code":"US","type":"education","lineage":["https://openalex.org/I134446601"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Koushik Sen","raw_affiliation_strings":["UC Berkeley, Berkeley, CA, USA"],"affiliations":[{"raw_affiliation_string":"UC Berkeley, Berkeley, CA, USA","institution_ids":["https://openalex.org/I134446601","https://openalex.org/I95457486"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5067292584"],"corresponding_institution_ids":["https://openalex.org/I134446601","https://openalex.org/I95457486"],"apc_list":null,"apc_paid":null,"fwci":8.5987,"has_fulltext":false,"cited_by_count":60,"citation_normalized_percentile":{"value":0.97897843,"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":"57","last_page":"66"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9998000264167786,"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"}},"topics":[{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9998000264167786,"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/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9991999864578247,"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/T12127","display_name":"Software System Performance and Reliability","score":0.9991999864578247,"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.8964710235595703},{"id":"https://openalex.org/keywords/debugging","display_name":"Debugging","score":0.8442933559417725},{"id":"https://openalex.org/keywords/trace","display_name":"TRACE (psycholinguistics)","score":0.8353735208511353},{"id":"https://openalex.org/keywords/thread","display_name":"Thread (computing)","score":0.8156720995903015},{"id":"https://openalex.org/keywords/concurrency","display_name":"Concurrency","score":0.7671611309051514},{"id":"https://openalex.org/keywords/posix-threads","display_name":"POSIX Threads","score":0.6642466187477112},{"id":"https://openalex.org/keywords/atomicity","display_name":"Atomicity","score":0.5575018525123596},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.5459555387496948},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.4838915765285492},{"id":"https://openalex.org/keywords/multithreading","display_name":"Multithreading","score":0.470753014087677},{"id":"https://openalex.org/keywords/heuristic","display_name":"Heuristic","score":0.469030499458313},{"id":"https://openalex.org/keywords/granularity","display_name":"Granularity","score":0.4466910660266876},{"id":"https://openalex.org/keywords/context","display_name":"Context (archaeology)","score":0.43242383003234863},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.36239874362945557},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.09282642602920532}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8964710235595703},{"id":"https://openalex.org/C168065819","wikidata":"https://www.wikidata.org/wiki/Q845566","display_name":"Debugging","level":2,"score":0.8442933559417725},{"id":"https://openalex.org/C75291252","wikidata":"https://www.wikidata.org/wiki/Q1315756","display_name":"TRACE (psycholinguistics)","level":2,"score":0.8353735208511353},{"id":"https://openalex.org/C138101251","wikidata":"https://www.wikidata.org/wiki/Q213092","display_name":"Thread (computing)","level":2,"score":0.8156720995903015},{"id":"https://openalex.org/C193702766","wikidata":"https://www.wikidata.org/wiki/Q1414548","display_name":"Concurrency","level":2,"score":0.7671611309051514},{"id":"https://openalex.org/C41138395","wikidata":"https://www.wikidata.org/wiki/Q928112","display_name":"POSIX Threads","level":3,"score":0.6642466187477112},{"id":"https://openalex.org/C188045909","wikidata":"https://www.wikidata.org/wiki/Q3306359","display_name":"Atomicity","level":3,"score":0.5575018525123596},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5459555387496948},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.4838915765285492},{"id":"https://openalex.org/C201410400","wikidata":"https://www.wikidata.org/wiki/Q1064412","display_name":"Multithreading","level":3,"score":0.470753014087677},{"id":"https://openalex.org/C173801870","wikidata":"https://www.wikidata.org/wiki/Q201413","display_name":"Heuristic","level":2,"score":0.469030499458313},{"id":"https://openalex.org/C177774035","wikidata":"https://www.wikidata.org/wiki/Q1246948","display_name":"Granularity","level":2,"score":0.4466910660266876},{"id":"https://openalex.org/C2779343474","wikidata":"https://www.wikidata.org/wiki/Q3109175","display_name":"Context (archaeology)","level":2,"score":0.43242383003234863},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.36239874362945557},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.09282642602920532},{"id":"https://openalex.org/C151730666","wikidata":"https://www.wikidata.org/wiki/Q7205","display_name":"Paleontology","level":1,"score":0.0},{"id":"https://openalex.org/C41895202","wikidata":"https://www.wikidata.org/wiki/Q8162","display_name":"Linguistics","level":1,"score":0.0},{"id":"https://openalex.org/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"score":0.0},{"id":"https://openalex.org/C138885662","wikidata":"https://www.wikidata.org/wiki/Q5891","display_name":"Philosophy","level":0,"score":0.0},{"id":"https://openalex.org/C75949130","wikidata":"https://www.wikidata.org/wiki/Q848010","display_name":"Database transaction","level":2,"score":0.0}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1145/1882291.1882302","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1882291.1882302","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the eighteenth ACM SIGSOFT international symposium on Foundations of software engineering","raw_type":"proceedings-article"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.298.9955","is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.298.9955","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://srl.cs.berkeley.edu/~ksen/papers/thrille.pdf","raw_type":"text"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":41,"referenced_works":["https://openalex.org/W154668714","https://openalex.org/W1511405608","https://openalex.org/W1539263919","https://openalex.org/W1887412317","https://openalex.org/W1971849938","https://openalex.org/W1994816063","https://openalex.org/W2009394287","https://openalex.org/W2016167891","https://openalex.org/W2016449454","https://openalex.org/W2040851906","https://openalex.org/W2046065453","https://openalex.org/W2055116083","https://openalex.org/W2059943739","https://openalex.org/W2080265580","https://openalex.org/W2096425305","https://openalex.org/W2108806129","https://openalex.org/W2111900492","https://openalex.org/W2119826996","https://openalex.org/W2129663982","https://openalex.org/W2130473288","https://openalex.org/W2134440791","https://openalex.org/W2135395375","https://openalex.org/W2135948849","https://openalex.org/W2136880809","https://openalex.org/W2143951557","https://openalex.org/W2152795747","https://openalex.org/W2153185479","https://openalex.org/W2153740346","https://openalex.org/W2154266022","https://openalex.org/W2154698535","https://openalex.org/W2158124716","https://openalex.org/W2158870716","https://openalex.org/W2162376048","https://openalex.org/W2169875292","https://openalex.org/W2170224888","https://openalex.org/W2170364043","https://openalex.org/W2293624369","https://openalex.org/W3147113554","https://openalex.org/W4233319527","https://openalex.org/W4246906397","https://openalex.org/W4247966332"],"related_works":["https://openalex.org/W2998398829","https://openalex.org/W2338363223","https://openalex.org/W2385581534","https://openalex.org/W2753620725","https://openalex.org/W3207581897","https://openalex.org/W2086551443","https://openalex.org/W4232891356","https://openalex.org/W2115732097","https://openalex.org/W2794962038","https://openalex.org/W1982219759"],"abstract_inverted_index":{"Concurrent":[0],"programs":[1,156],"are":[2,17],"notoriously":[3],"difficult":[4,19],"to":[5,20,43,141,162,167],"debug.":[6],"We":[7,74,147],"see":[8],"two":[9],"main":[10],"reasons":[11],"for":[12,55,154],"this:":[13],"1)":[14],"concurrency":[15],"bugs":[16],"often":[18,121],"reproduce,":[21],"2)":[22],"traces":[23],"of":[24,38,101,136,144,170],"buggy":[25,84,107],"concurrent":[26],"executions":[27],"can":[28],"be":[29],"complicated":[30],"by":[31,94],"fine-grained":[32],"thread":[33,103],"interleavings.":[34],"Recently,":[35],"a":[36,77,83,152],"number":[37],"efficient":[39],"techniques":[40],"have":[41,148],"tried":[42],"address":[44],"the":[45,56,68,99,102,106,131,134,142,145],"former":[46],"reproducibility":[47],"problem;":[48],"however,":[49,114],"there":[50],"is":[51,72],"no":[52],"effective":[53],"solution":[54],"latter":[57],"trace":[58,69,86],"simplification":[59,70],"problem.":[60],"In":[61],"this":[62],"paper,":[63],"we":[64,115,127],"formalize":[65],"and":[66,96,159],"prove":[67],"problem":[71],"NP-hard.":[73],"then":[75],"propose":[76],"heuristic":[78],"algorithm,":[79],"Tinertia,":[80],"that":[81,118,129],"transforms":[82],"execution":[85],"into":[87],"an":[88],"easier-to-understand":[89],"simplified":[90,124,132],"trace.":[91,108],"Tinertia":[92,109,150],"works":[93],"automatically":[95],"iteratively":[97],"increasing":[98],"granularity":[100],"interleavings":[104],"in":[105,130,151],"cannot":[110],"guarantee":[111],"optimal":[112],"simplification;":[113],"empirically":[116],"show":[117,128],"our":[119],"algorithm":[120],"generates":[122],"optimally":[123],"traces.":[125],"Moreover,":[126],"trace,":[133],"locations":[135],"preemptive":[137],"context":[138],"switches":[139],"point":[140],"cause":[143],"bug.":[146],"implemented":[149],"tool":[153],"C/C++":[155],"using":[157],"Pthreads":[158],"applied":[160],"it":[161],"11":[163],"benchmarks":[164],"with":[165],"up":[166],"37,000":[168],"lines":[169],"code.":[171]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2024,"cited_by_count":1},{"year":2023,"cited_by_count":1},{"year":2022,"cited_by_count":1},{"year":2021,"cited_by_count":1},{"year":2020,"cited_by_count":2},{"year":2019,"cited_by_count":3},{"year":2018,"cited_by_count":4},{"year":2017,"cited_by_count":5},{"year":2016,"cited_by_count":8},{"year":2015,"cited_by_count":6},{"year":2014,"cited_by_count":8},{"year":2013,"cited_by_count":8},{"year":2012,"cited_by_count":5}],"updated_date":"2026-04-04T16:13:02.066488","created_date":"2025-10-10T00:00:00"}
