Sekventiella och konvergens buggar är utbredda i distribuerad programvara. De orsakar allvarliga misslyckanden och enorma ekonomiska förluster under produktionskörningar. Verktyg som diagnostiserar produktionsfel med låga omkostnader behövs. De state-of-the-art diagnos tekniker använder programvara instrumentering för att provprogram egenskaper vid körtid och använda offline statistisk analys för att identifiera egenskaper mest korrelerade med misslyckanden. Även lovande, dessa tekniker lider av hög run-time overhead, vilket ibland är över 100%, för konvergens-bug feldiagnos och är därför inte lämpliga för produktionsdrivna användning. Vi presenterar PBI, ett system som använder befintliga maskinvaruprestandaräknare för att diagnostisera produktionsfel orsakade av sekventiella fel och konvergensfel med låga omkostnader. PBI är utformat utifrån flera viktiga observationer. För det första, några brett stöd prestanda räknare händelser kan återspegla en mängd olika vanliga programvara buggar och kan övervakas av hårdvara utan någon overhead. För det andra ger räknarespillet som stöds av befintlig hårdvara och operativsystem en naturlig och effektiv mekanism för att utföra händelseprovtagning på användarnivå. För det tredje kompletterar buller och icke-determinism vid avbrytande av leverans väl med statistisk bearbetning. Vi utvärderar PBI genom att använda 13 realtidskonvergenser och sekventiella fel från representativ server med öppen källkod, klient- och verktygsprogram och 10 fel från ett allmänt använt riktmärke för programvarutestning. Kvantitativt kan PBI effektivt diagnostisera fel orsakade av dessa buggar med en liten overhead som aldrig är högre än 10 %. Kvalitativt kräver inte PBI någon ändring av programvara och presenterar en ny användning av befintliga maskinvaruprestandaräknare.
Baserat på den statistiska modell som används av CCI, PBI REF föreslås att diagnostisera konvergens buggar i programproduktion körs.
Production-run software failure diagnosis via hardware performance counters
{'venue': "ASPLOS '13", 'journal': None, 'mag_field_of_study': ['Computer Science']}