Transactional SMS Services Hyderabad, Transactional Bulk SMS Packages Hyderabad
Post-Silicon Debugging of Transactional Memory Tests
-
Upload
jackson-daugherty -
Category
Documents
-
view
19 -
download
0
description
Transcript of Post-Silicon Debugging of Transactional Memory Tests
WTM’13, Prague, April 14, 20131
Post-Silicon Debugging of Transactional Memory Tests
Carla Ferreira, João Lourenço
{carla.ferreira, joao.lourenco}@fct.unl.pt
Ophir Friedler, Wisam Kadry, Amir Nahir, Vitali Sokhin
{ophirf, wisamk, nahir, vitali}@il.ibm.com
IBM Research Universidade Nova de Lisboa
WTM’13, Prague, April 14, 20132
Post Silicon
Post-silicon validation elements:
1. Stimulating the design under test
2. Detecting erroneous behavior
3. Localizing the root cause of the problem
4. Providing a fix.
WTM’13, Prague, April 14, 20133
Stimulation
1. Test generation
2. Execution
3. Consistency checking
4. Repeat… Forever! Silicon
Accelerator
Generation
Checking
Execution
OS services
Test Template
Topology
ArchitecturalModel
Exerciser Image (Threadmill)
WTM’13, Prague, April 14, 20134
DetectionConsistency checking
• Run the same test-case from the same initial architectural state.
• Expect the same final architectural state
ori r10,r0,170stb r10,0(r6)lbz r11,0(r6)...
Initial StateR0 = 0x1, R1 = 0x2 … Final State
R0 = 0xA, R1 = 0xB …
Micro-architectural state varies!Caches, page misses, pre-fetching, thread priorities
WTM’13, Prague, April 14, 20135
DetectionAnd what if two different final states are manifested?
ori r10,r0,170stb r10,0(r6)lbz r11,0(r6)...
Initial StateR0 = 0x1, R1 = 0x2 … Final State
R0 = 0xA, R1 = 0xB …
ori r10,r0,170stb r10,0(r6)lbz r11,0(r6)...
Initial StateR0 = 0x1, R1 = 0x2 … Final State
R0 = 0xC, R1 = 0xB …
MIS-COMPARE
Final StateR0 = 0xA, R1 = 0xB …
Final StateR0 = 0xC, R1 = 0xB …
WTM’13, Prague, April 14, 20136
Localization approach1. A test-case that produces a mis-compare is found
2. Fast-forward to that test-case on a software simulator (a.k.a. Reference model)
3. Execute test case on the reference model instruction by instruction and extract information
WTM’13, Prague, April 14, 20137
Localization
Reduce number of resources and instructions that might be the root cause of the mis-compare
Study the effect of transactions in the test-case on the final state.
Justification: Force erroneous behaviour on reference model and re-
create the mis-compare results
8
R1 R4R3R2
Localization1 4 1 2:I R R R
2 :I tbegin
3 1 3:I R R
4 4 1 2:I R R R
5 2 1:I R R
6 :I tend
7 3 1 2:I R R R
= suspicious instruction subset
WTM’13, Prague, April 14, 20139
Concluding remarks
Debug automation effectively reduces the debugging effort.
Graph analysis holds the potential automate the localization of suspicious resources and instructions
Future work:- Study the impact of escaped stores in transaction aborts- experiment with larger (real-world) cases
WTM’13, Prague, April 14, 201310
Questions