Ny PPA gör alla till ninjor
Watson och Siri hjälper oss att analysera information och få svar. Nu har forskare vid Linnéuniversitetet tagit fram en PPA, Parallel Programming Assistant, som på liknande sätt hjälper programmerare skapa programkod som bättre utnyttjar kapaciteten hos datorer och mobiler.
Datorer, surfplattor, mobiler – alla innehåller processorer som kan arbeta med flera uppgifter parallellt. Men de flesta program och appar är utformade för att bearbeta uppgifter en i taget, sekventiellt, vilket innebär att stora delar av processorernas kapacitet inte används. För att utnyttja resurserna maximalt krävs avancerad kunskap i så kallad parallellprogrammering. Det är mycket svårare och de som är experter på detta kallas ibland ninja-programmerare.
– Det har utvecklats olika modeller för parallellprogrammering men många nybörjare gör ändå vanliga misstag som kan leda till försämrad prestanda eller till att ett program beter sig konstigt. Därför utvecklar vi en kognitivt baserad digital assistent som hjälp, säger Sabri Pllana, ledare för High-Performance Computing Center och lektor i datavetenskap vid Linnéuniversitetet.
Watson vs Jeopardyvinnare
Kognition är en samlingsterm för processer som handlar om bland annat kunskap, tänkande och information. Det kanske mest kända kognitiva datorsystemet är IBM:s Watson, som 2011 besegrade två tidigare mästare i tv-frågesporten Jeopardy. Apples Siri och Googles Nu är andra exempel på system som kan svara på frågor om hälsa, kalendrar, sport och annat.
– På ett sätt som liknar Siris kan vår Parallel Programming Assistant, PPA, svara på frågor som rör parallell programmering. PPA kan kommunicera och interagera i realtid via text och tal. En nybörjare på parallellprogrammering kan ställa frågor, så söker PPA i sin kunskapsdatabas efter ett lämpligt svar, berättar Sabri Pllana.
Forskarna bedömer att PPA:n snart kan användas som pedagogisk resurs på en grundkurs i parallellprogrammering – och att man i framtiden inte behöver vara en ninja för att utnyttja möjligheterna med parallellprogrammering.
Källa: Linnéuniversitetet