TY - GEN
T1 - Performance-reliability tradeoff analysis for multithreaded applications
AU - Oz, Isil
AU - Topcuoglu, Haluk Rahmi
AU - Kandemir, Mahmut
AU - Tosun, Oguz
PY - 2012
Y1 - 2012
N2 - Modern architectures become more susceptible to transient errors with the scale down of circuits. This makes reliability an increasingly critical concern in computer systems. In general, there is a tradeoff between system reliability and performance of multithreaded applications running on multicore architectures. In this paper, we conduct a performance-reliability analysis for different parallel versions of three data-intensive applications including FFT, Jacobi Kernel, andWater Simulation. We measure the performance of these programs by counting execution clock cycles, while the system reliability is measured by Thread Vulnerability Factor (TVF) which is a recently-proposed metric. TVF measures the vulnerability of a thread to hardware faults at a high level. We carry out experiments by executing parallel implementations on multicore architectures and collect data about the performance and vulnerability. Our experimental evaluation indicates that the choice is clear for FFT application and Jacobi Kernel. Transpose algorithm for FFT application results in less than 5% performance loss while the vulnerability increases by 20% compared to binary-exchange algorithm. Unrolled Jacobi code reduces execution time up to 50% with no significant change on vulnerability values. However, the tradeoff is more interesting for Water Simulation where nsquared version reduces the vulnerability values significantly by worsening the performance with similar rates compared to faster but more vulnerable spatial version.
AB - Modern architectures become more susceptible to transient errors with the scale down of circuits. This makes reliability an increasingly critical concern in computer systems. In general, there is a tradeoff between system reliability and performance of multithreaded applications running on multicore architectures. In this paper, we conduct a performance-reliability analysis for different parallel versions of three data-intensive applications including FFT, Jacobi Kernel, andWater Simulation. We measure the performance of these programs by counting execution clock cycles, while the system reliability is measured by Thread Vulnerability Factor (TVF) which is a recently-proposed metric. TVF measures the vulnerability of a thread to hardware faults at a high level. We carry out experiments by executing parallel implementations on multicore architectures and collect data about the performance and vulnerability. Our experimental evaluation indicates that the choice is clear for FFT application and Jacobi Kernel. Transpose algorithm for FFT application results in less than 5% performance loss while the vulnerability increases by 20% compared to binary-exchange algorithm. Unrolled Jacobi code reduces execution time up to 50% with no significant change on vulnerability values. However, the tradeoff is more interesting for Water Simulation where nsquared version reduces the vulnerability values significantly by worsening the performance with similar rates compared to faster but more vulnerable spatial version.
UR - http://www.scopus.com/inward/record.url?scp=84862094254&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84862094254&partnerID=8YFLogxK
U2 - 10.1109/date.2012.6176624
DO - 10.1109/date.2012.6176624
M3 - Conference contribution
AN - SCOPUS:84862094254
SN - 9783981080186
T3 - Proceedings -Design, Automation and Test in Europe, DATE
SP - 893
EP - 898
BT - Proceedings - Design, Automation and Test in Europe Conference and Exhibition, DATE 2012
PB - Institute of Electrical and Electronics Engineers Inc.
T2 - 15th Design, Automation and Test in Europe Conference and Exhibition, DATE 2012
Y2 - 12 March 2012 through 16 March 2012
ER -