@@ -100,7 +100,14 @@ <h2 class="section-intro__title">Recent Projects</h2>
100100 < h3 > Catching Silent Errors in Deep Learning Training</ h3 >
101101 < p > TrainCheck learns semantic invariants from sample pipelines and enforces proactive checks at runtime to catch silent training errors early.</ p >
102102 < p class ="project-badge "> OSDI 2025</ p >
103- < a class ="button button-light " href ="{{ '/paper/traincheck-osdi25-preprint.pdf' | relative_url }} " target ="_blank "> Read Paper</ a >
103+ < div class ="project-links " aria-label ="TrainCheck links ">
104+ < a class ="project-link-icon " href ="{{ '/paper/traincheck-osdi25-preprint.pdf' | relative_url }} " target ="_blank " rel ="noopener " title ="Paper ">
105+ < i class ="fas fa-file-alt " aria-hidden ="true "> </ i > < span > Paper</ span >
106+ </ a >
107+ < a class ="project-link-icon " href ="https://github.com/OrderLab/TrainCheck " target ="_blank " rel ="noopener " title ="Software ">
108+ < i class ="fab fa-github " aria-hidden ="true "> </ i > < span > Software</ span >
109+ </ a >
110+ </ div >
104111 </ div >
105112 </ article >
106113
@@ -112,7 +119,14 @@ <h3>Catching Silent Errors in Deep Learning Training</h3>
112119 < h3 > Equivalence-Based Verification for Distributed Training</ h3 >
113120 < p > TrainVerify verifies the parallelization logic of LLM training to eliminate subtle correctness bugs.</ p >
114121 < p class ="project-badge "> SOSP 2025</ p >
115- < a class ="button button-light " href ="{{ '/paper/trainverify-sosp25.pdf' | relative_url }} " target ="_blank "> Read Paper</ a >
122+ < div class ="project-links " aria-label ="TrainVerify links ">
123+ < a class ="project-link-icon " href ="{{ '/paper/trainverify-sosp25.pdf' | relative_url }} " target ="_blank " rel ="noopener " title ="Paper ">
124+ < i class ="fas fa-file-alt " aria-hidden ="true "> </ i > < span > Paper</ span >
125+ </ a >
126+ < a class ="project-link-icon " href ="https://github.com/verify-llm/TrainVerify " target ="_blank " rel ="noopener " title ="Software ">
127+ < i class ="fab fa-github " aria-hidden ="true "> </ i > < span > Software</ span >
128+ </ a >
129+ </ div >
116130 </ div >
117131 </ article >
118132
@@ -124,7 +138,14 @@ <h3>Equivalence-Based Verification for Distributed Training</h3>
124138 < h3 > Optimistic Recovery via Partial Process State Preservation</ h3 >
125139 < p > Phoenix introduces OS-level mechanisms of partial process state preservation and optimistic recovery to improve application availability.</ p >
126140 < p class ="project-badge "> SOSP 2025</ p >
127- < a class ="button button-light " href ="{{ '/paper/phoenix-sosp25.pdf' | relative_url }} " target ="_blank "> Read Paper</ a >
141+ < div class ="project-links " aria-label ="Phoenix links ">
142+ < a class ="project-link-icon " href ="{{ '/paper/phoenix-sosp25.pdf' | relative_url }} " target ="_blank " rel ="noopener " title ="Paper ">
143+ < i class ="fas fa-file-alt " aria-hidden ="true "> </ i > < span > Paper</ span >
144+ </ a >
145+ < a class ="project-link-icon " href ="https://github.com/OrderLab/phoenix " target ="_blank " rel ="noopener " title ="Software ">
146+ < i class ="fab fa-github " aria-hidden ="true "> </ i > < span > Software</ span >
147+ </ a >
148+ </ div >
128149 </ div >
129150 </ article >
130151
@@ -136,7 +157,14 @@ <h3>Optimistic Recovery via Partial Process State Preservation</h3>
136157 < h3 > Mitigating Application Resource Overload with Targeted Task Cancellation</ h3 >
137158 < p > Atropos is an overload control framework that uses targeted task cancellation to reduce application resource overload.</ p >
138159 < p class ="project-badge "> SOSP 2025</ p >
139- < a class ="button button-light " href ="{{ '/paper/atropos-sosp25.pdf' | relative_url }} " target ="_blank "> Read Paper</ a >
160+ < div class ="project-links " aria-label ="Atropos links ">
161+ < a class ="project-link-icon " href ="{{ '/paper/atropos-sosp25.pdf' | relative_url }} " target ="_blank " rel ="noopener " title ="Paper ">
162+ < i class ="fas fa-file-alt " aria-hidden ="true "> </ i > < span > Paper</ span >
163+ </ a >
164+ < a class ="project-link-icon " href ="https://github.com/OrderLab/Atropos " target ="_blank " rel ="noopener " title ="Software ">
165+ < i class ="fab fa-github " aria-hidden ="true "> </ i > < span > Software</ span >
166+ </ a >
167+ </ div >
140168 </ div >
141169 </ article >
142170
@@ -148,7 +176,14 @@ <h3>Mitigating Application Resource Overload with Targeted Task Cancellation</h3
148176 < h3 > Enhancing Slow-Fault Tolerance in Distributed Systems</ h3 >
149177 < p > Xinda diagnoses and mitigates slow faults with adaptive mechanisms tailored to modern distributed system behavior.</ p >
150178 < p class ="project-badge "> NSDI 2025</ p >
151- < a class ="button button-light " href ="{{ '/paper/xinda-nsdi25-preprint.pdf' | relative_url }} " target ="_blank "> Read Paper</ a >
179+ < div class ="project-links " aria-label ="Xinda links ">
180+ < a class ="project-link-icon " href ="{{ '/paper/xinda-nsdi25-preprint.pdf' | relative_url }} " target ="_blank " rel ="noopener " title ="Paper ">
181+ < i class ="fas fa-file-alt " aria-hidden ="true "> </ i > < span > Paper</ span >
182+ </ a >
183+ < a class ="project-link-icon " href ="https://github.com/OrderLab/xinda " target ="_blank " rel ="noopener " title ="Software ">
184+ < i class ="fab fa-github " aria-hidden ="true "> </ i > < span > Software</ span >
185+ </ a >
186+ </ div >
152187 </ div >
153188 </ article >
154189 </ div >
0 commit comments