{"id":{"repo_id":"uiuc","oai_identifier":"oai:www.ideals.illinois.edu:2142/13395"},"canonical_url":"https://search.dev.ndltd.org/etd/uiuc/oai:www.ideals.illinois.edu:2142/13395","repository":{"repo_id":"uiuc","name":"University of Illinois - Urbana-Champaign","base_url":"https://www.ideals.illinois.edu/oai-pmh"},"display":{"title":"Practical Time Travel of Multiprocessor Systems","abstract":"With the arrival of multicore chips as the commodity architecture for a wide range of platforms, there is a growing pressure to make parallel programming the norm. Unfortunately, most current programmers find parallel programming too complex. Therefore, we need tools, models, and architectures that make multiprocessors more programmable. One compelling way to improve programmability is to enable back-and-forth time travel of multiprocessor execution. Such ability simplifies parallel code debugging, and is possible using a technique called Deterministic Replay of Execution. This thesis presents DeLorean, a novel hardware substrate for deterministic replay of multiprocessor systems. DeLorean advances the state of the art in that it enables high-speed recording and replay of parallel execution and in that its space requirements are orders of magnitude smaller than those of current schemes. To be practical, DeLorean and other hardware replay systems need to support an environment with multiple parallel jobs running concurrently — some being recorded, others being replayed and possibly many others running without recording or replay. To address this issue, this thesis presents Capo, a novel software-hardware interface for practical high-speed multiprocessor replay. It also introduces the novel abstraction of Replay Sphere to separate the responsibilities of the hardware and software components of a replay system. Finally, this thesis describes CapoOne, a prototype of a deterministic multiprocessor replay system that implements Capo using Linux running on simulated DeLorean hardware.","abstract_html":"With the arrival of multicore chips as the commodity architecture for a wide range of platforms, there is a growing pressure to make parallel programming the norm. Unfortunately, most current programmers find parallel programming too complex. Therefore, we need tools, models, and architectures that make multiprocessors more programmable. One compelling way to improve programmability is to enable back-and-forth time travel of multiprocessor execution. Such ability simplifies parallel code debugging, and is possible using a technique called Deterministic Replay of Execution. This thesis presents DeLorean, a novel hardware substrate for deterministic replay of multiprocessor systems. DeLorean advances the state of the art in that it enables high-speed recording and replay of parallel execution and in that its space requirements are orders of magnitude smaller than those of current schemes. To be practical, DeLorean and other hardware replay systems need to support an environment with multiple parallel jobs running concurrently — some being recorded, others being replayed and possibly many others running without recording or replay. To address this issue, this thesis presents Capo, a novel software-hardware interface for practical high-speed multiprocessor replay. It also introduces the novel abstraction of Replay Sphere to separate the responsibilities of the hardware and software components of a replay system. Finally, this thesis describes CapoOne, a prototype of a deterministic multiprocessor replay system that implements Capo using Linux running on simulated DeLorean hardware.","abstract_has_math":false,"creators":["Montesinos Ortego, Pablo"],"institution":"University of Illinois at Urbana-Champaign","degree_name":"Ph.D.","degree_level":"Dissertation","degree_discipline":"Computer Science","degree_department":null,"school":null,"contributors":["King, Samuel T.","Torrellas, Josep","Snir, Marc","Hwu, Wen-Mei W.","Zhou, Yuanyuan","Von Praun, Christoph"],"advisors":[],"committee_chairs":[],"committee_members":[],"year":2009,"date_issued":"2009-08-06T18:32:59Z","date_published":"2009-08-06T18:32:59Z","updated_at":"2026-07-22T22:25:04Z","subjects":["Deterministic Replay","Determinism","Time Travel","Multiprocessors","Debuggability","Programmability","Chunk-based Execution and Replay"],"languages":["en"],"rights":["Copyright 2009 Pablo Montesinos Ortego"],"rights_urls":[],"identifier_entries":[]},"links":{"outbound_url":"http://hdl.handle.net/2142/13395","outbound_label":"Handle","outbound_source":"dc:identifier"},"metadata_groups":[{"id":"people","label":"People","entries":[{"key":"dc:contributor","label":"Contributor","values":["King, Samuel T.","Torrellas, Josep","Snir, Marc","Hwu, Wen-Mei W.","Zhou, Yuanyuan","Von Praun, Christoph"]},{"key":"dc:creator","label":"Author","values":["Montesinos Ortego, Pablo"]}]},{"id":"academic_context","label":"Academic Context","entries":[{"key":"dc:date","label":"Dc Date","values":["2009-08-06T18:32:59Z","2009-08-06"]},{"key":"dc:type","label":"Dc Type","values":["Dissertation / Thesis","text"]},{"key":"thesis:degree_discipline","label":"Discipline","values":["Computer Science"]},{"key":"thesis:degree_level","label":"Degree Level","values":["Dissertation"]},{"key":"thesis:degree_name","label":"Degree Name","values":["Ph.D."]},{"key":"thesis:institution_name","label":"Thesis Institution Name","values":["University of Illinois at Urbana-Champaign"]}]},{"id":"subjects_keywords","label":"Subjects and Keywords","entries":[{"key":"dc:subject","label":"Dc Subject","values":["Deterministic Replay","Determinism","Time Travel","Multiprocessors","Debuggability","Programmability","Chunk-based Execution and Replay"]}]},{"id":"language_rights","label":"Language and Rights","entries":[{"key":"dc:language","label":"Dc Language","values":["en"]},{"key":"dc:rights","label":"Dc Rights","values":["Copyright 2009 Pablo Montesinos Ortego"]}]},{"id":"identifiers","label":"Identifiers","entries":[{"key":"dc:identifier","label":"Identifier","values":["http://hdl.handle.net/2142/13395"]}]},{"id":"additional","label":"Additional Metadata","entries":[{"key":"dc:description","label":"Description","values":["With the arrival of multicore chips as the commodity architecture for a wide range of platforms, there is a growing pressure to make parallel programming the norm. Unfortunately, most current programmers find parallel programming too complex. Therefore, we need tools, models, and architectures that make multiprocessors more programmable. One compelling way to improve programmability is to enable back-and-forth time travel of multiprocessor execution. Such ability simplifies parallel code debugging, and is possible using a technique called Deterministic Replay of Execution. This thesis presents DeLorean, a novel hardware substrate for deterministic replay of multiprocessor systems. DeLorean advances the state of the art in that it enables high-speed recording and replay of parallel execution and in that its space requirements are orders of magnitude smaller than those of current schemes. To be practical, DeLorean and other hardware replay systems need to support an environment with multiple parallel jobs running concurrently — some being recorded, others being replayed and possibly many others running without recording or replay. To address this issue, this thesis presents Capo, a novel software-hardware interface for practical high-speed multiprocessor replay. It also introduces the novel abstraction of Replay Sphere to separate the responsibilities of the hardware and software components of a replay system. Finally, this thesis describes CapoOne, a prototype of a deterministic multiprocessor replay system that implements Capo using Linux running on simulated DeLorean hardware.","not peer reviewed","Submitted by Pablo Montesinos Ortego (pmontesi@illinois.edu) on 2009-08-06T18:32:59Z No. of bitstreams: 1 thesis-Final-distilled.pdf: 811461 bytes, checksum: 876c04ad4280de77fb39ab7e2c283ddb (MD5)","Made available in DSpace on 2009-08-06T18:32:59Z (GMT). No. of bitstreams: 1 thesis-Final-distilled.pdf: 811461 bytes, checksum: 876c04ad4280de77fb39ab7e2c283ddb (MD5) Previous issue date: 2009-08-06","unpublished"]},{"key":"dc:title","label":"Title","values":["Practical Time Travel of Multiprocessor Systems"]}]}],"canonical_facts":{"dc:contributor":["King, Samuel T.","Torrellas, Josep","Snir, Marc","Hwu, Wen-Mei W.","Zhou, Yuanyuan","Von Praun, Christoph"],"dc:creator":["Montesinos Ortego, Pablo"],"dc:date":["2009-08-06T18:32:59Z","2009-08-06"],"dc:description":["With the arrival of multicore chips as the commodity architecture for a wide range of platforms, there is a growing pressure to make parallel programming the norm. Unfortunately, most current programmers find parallel programming too complex. Therefore, we need tools, models, and architectures that make multiprocessors more programmable. One compelling way to improve programmability is to enable back-and-forth time travel of multiprocessor execution. Such ability simplifies parallel code debugging, and is possible using a technique called Deterministic Replay of Execution. This thesis presents DeLorean, a novel hardware substrate for deterministic replay of multiprocessor systems. DeLorean advances the state of the art in that it enables high-speed recording and replay of parallel execution and in that its space requirements are orders of magnitude smaller than those of current schemes. To be practical, DeLorean and other hardware replay systems need to support an environment with multiple parallel jobs running concurrently — some being recorded, others being replayed and possibly many others running without recording or replay. To address this issue, this thesis presents Capo, a novel software-hardware interface for practical high-speed multiprocessor replay. It also introduces the novel abstraction of Replay Sphere to separate the responsibilities of the hardware and software components of a replay system. Finally, this thesis describes CapoOne, a prototype of a deterministic multiprocessor replay system that implements Capo using Linux running on simulated DeLorean hardware.","not peer reviewed","Submitted by Pablo Montesinos Ortego (pmontesi@illinois.edu) on 2009-08-06T18:32:59Z No. of bitstreams: 1 thesis-Final-distilled.pdf: 811461 bytes, checksum: 876c04ad4280de77fb39ab7e2c283ddb (MD5)","Made available in DSpace on 2009-08-06T18:32:59Z (GMT). No. of bitstreams: 1 thesis-Final-distilled.pdf: 811461 bytes, checksum: 876c04ad4280de77fb39ab7e2c283ddb (MD5) Previous issue date: 2009-08-06","unpublished"],"dc:identifier":["http://hdl.handle.net/2142/13395"],"dc:language":["en"],"dc:rights":["Copyright 2009 Pablo Montesinos Ortego"],"dc:subject":["Deterministic Replay","Determinism","Time Travel","Multiprocessors","Debuggability","Programmability","Chunk-based Execution and Replay"],"dc:title":["Practical Time Travel of Multiprocessor Systems"],"dc:type":["Dissertation / Thesis","text"],"thesis:degree_discipline":["Computer Science"],"thesis:degree_level":["Dissertation"],"thesis:degree_name":["Ph.D."],"thesis:institution_name":["University of Illinois at Urbana-Champaign"]},"updated_at":"2026-07-22T22:25:04Z"}