Prestanda hos flertrådiga tillämpningar begränsas av en rad flaskhalsar, t.ex. kritiska sektioner, barriärer och långsamma rörledningssteg. Dessa flaskhalsar serialiserar utförandet, slösar bort värdefulla utförandecykler och begränsar skalbarheten av tillämpningar. I detta dokument föreslås flaskhalsidentifiering och schemaläggning (BIS), en samarbetsmekanism för programvaruhårdvara för att identifiera och påskynda de mest kritiska flaskhalsarna. BIS identifierar vilka flaskhalsar som sannolikt kommer att minska prestandan genom att mäta antalet cykler gängor måste vänta på varje flaskhals, och påskyndar dessa flaskhalsar med hjälp av en eller flera snabba kärnor på en Asymmetrisk Chip MultiProcessor (ACMP). Till skillnad från tidigare arbete som är inriktat på specifika flaskhalsar kan BIS identifiera och påskynda flaskhalsar oavsett typ av flaskhalsar. Vi jämför BIS med fyra tidigare tillvägagångssätt och visar att det överträffar det bästa av dem med i genomsnitt 15 procent. BIS prestandaförbättringar ökar i takt med att antalet kärnor och antalet snabba kärnor i systemet ökar.
I likhet med ACS föreslås i Ref en samarbetsmekanism för programvaruhårdvara, flaskhalsidentifiering och schemaläggning (BIS) för att identifiera och påskynda de mest kritiska flaskhalsarna.
Bottleneck identification and scheduling in multithreaded applications
{'venue': 'ASPLOS XVII', 'journal': None, 'mag_field_of_study': ['Computer Science']}