Projekt Sumatra parandab Java jõudlust OpenCL-i graafikakaardi kiirenduse abil

Projekt Sumatra GPU kiirendatud Java arendamine OpenCL-i abil

Java on programmeerimiskeel, mis võimaldab arendajatel üks kord kirjutada ja juurutada kõikjale - alates tipptasemel mängulaudadest kuni nutitelefonideni. Selle OS-agnostiline ja laialt levinud olemus on üks tugevamaid müügikohti, kuid üks valdkond, kus see võib langeda, on jõudlus. Üldiselt ei toimi Java-rakendused sama hästi kui konkreetse operatsioonisüsteemi jaoks kirjutatud kohalikud rakendused. Kuid tänu projektile Sumatra võib see jõudlusevahe peagi vähemaks jääda.



OpenJDK toetatud projekt töötab praegu integreeritud ja diskreetsete graafikakaartide paralleelse töötlemisvõime ärakasutamiseks Java-rakenduste kiirendamiseks. GPU kiirendus ei ole uus kontseptsioon, kuid see projekt on huvitav nii selle toimimise kui ka uuringu tulevase mõju tõttu.

Esmakordselt augustis ilmutatud Project Sumatra kasutab Java 8 funktsioone ja teeke Lambda projekt samuti Oracle'i Java Virtual Machine jaoks mõeldud HotSpot. (Lambda on Java-programmeerimiskeele väljendite komplekt, mille eesmärk on parandada mitmetuumalist tuge.)

GPU kiirenduse ärakasutamiseks peavad tarkvaraarendajad oma koodi märkima, et näidata, millised lambda-väljendid sobivad GPU-de paralleelsusele. Seejärel, kui käivitate Java-rakenduse süsteemis, kuhu on installitud OpenCL-iga ühilduv GPU, tõlgib HotSpot JIT (just-in-time) kompilaator kommenteeritud koodibitti OpenCL-i töötlemiseks GPU-l, mitte protsessoril. See on huvitav meetod, kuna GPU riistvarakiirenduse kasutamiseks on vaja suhteliselt lihtsaid rakenduste värskendusi ning see on lõpptarbijale nähtamatu. Tõsi, mitte igas rakenduses ei toimu jõudluse suurt kasvu - kui neid on üldse võimalik paralleelselt muuta -, kuid paljud saavad GPU kasutamisest mingil määral kasu.



JDK8Sumatra projekti arendajad keskenduvad praegu OpenCL-i toe arendamisele Java 8-tehnoloogiatega, kuid nad eeldavad, et arendusuuringud mõjutavad GPU riistvara kiirendust teiste JVM-i hostitud keeltega, nagu JRuby ja Scala.

Siinne potentsiaal on muljetavaldav, eriti kui arvestada selliste GPU-de levikut, mis on võimelised töötama OpenCL-koodi - see arv peaks jätkama kasvu. AMD-l ja Nvidial on diskreetsete kaartide pargid, AMD-l ja Intelil on protsessoritesse integreeritud graafikasüdamikud ning tehnoloogiat võivad toetada ka tulevased ARM SoC-d. Tulevased Java-versioonid, mis integreerivad seda tehnoloogiat, peaksid võimaldama klientidel oma riistvara võimalikult tõhusalt kasutada. AMD APU-põhised serverid ning mobiilsed nutitelefonid ja tahvelarvutid saavad GPU kiirendamisest kõige rohkem kasu. AMD-l ja HSA Fondil on sarnased eesmärgid näitas suurenenud jõudlust kasutades paralleelsete ülesannete jaoks GPU-d. Projekt Sumatra muudab Java-s kirjutatud programmide arendajatele ja lõppkasutajatele nende potentsiaalsete jõudluskasumite realiseerimise veelgi lihtsamaks.

Oracle Java platvormi grupi tarkvaraarenduse asepresident Georges Saab on öelnud, et „Eeldame, et meie töö AMD ja teiste OpenJDK projektis osalejatega projektis„ Sumatra “aitab lõpuks Java-arendajatel pakkuda kiiremini GPU kiirendust paremaks jõudlust. '



Mobiilse poole pealt on meil tahvelarvutiprotsessorid nagu AMD Z-60 APU ja peatsed Inteli Valley View SoC-d, mis saaksid GPU kiirendatud Java-st kasu, kuna saaksid andmeid kiiremini töödelda ja naasta madalama energiatarbega ooterežiimi, et akut säästa. Ja loomulikult peaks kasutajakogemus paranema, kui rakendused töötavad kiiremini.

Tõenäoliselt läheb veel vähemalt aasta, enne kui GPU kiirendus on ametlikuks Java Runtime Environment'iks küpsetatud, kuid Project Sumatra abil oleme Java poole kiiremini liikunud!

Hoidke end kursis, et end kursis hoida või sellega seotud olla projekti Sumatra veebisaidil või liituda sumatra-dev meililist .



Copyright © Kõik Õigused Kaitstud | 2007es.com