Två viktiga trender idag är att många applikationer, till exempel Facebook, Instagram, Twitter och YouTube, flyttar till internet och att processorer får fler och fler så kallade kärnor för att öka prestandan. Tidigare studier har visat att det finns en stor potential för JavaScript – en teknik som låter programfunktioner köras i användarens webbläsare istället för på servern – att utnyttja flera processorkärnor. JavaScript har idag inget stöd för detta, men nu visar ny svensk forskning hur man kan öka prestandan samtidigt som energiförbrukningen minskar.
I avhandlingen som forskare vid Blekinge Tekniska Högskola presenterar finns flera nya idéer. Jan Kasper Martinsen, som leder projektet, visar bland annat att JavaScript-beteendet i webbapplikationer skiljer sig väldigt mycket från hur JavaScript används i etablerade standardprogram. Han föreslår en metod som kallas trådspekulering för att kunna köra JavaScript på flera kärnor. Genom att använda trådspekulering kan JavaScript utnyttja flera kärnor, helt transparent för programmeraren. På så sätt ökar prestandan väsentligt utan att programmeraren behöver skriva om programmet. En nackdel med trådspekulering är att det kräver mer minne. Ett antal metoder för att minska minnesbehovet presenteras därför också av Jan Kasper Martinsen.
Slutligen visar Jan Kasper att trådspekulering inte bara ökar prestandan, utan också reducerar energiförbrukningen i till exempel smarta telefoner. Detta öppnar upp möjligheten att nästa gång man skaffar en mobiltelefon så går Facebook snabbare samtidigt som batteriet vara längre.