211service.com
Nyt sprog til programmering i parallel
Et nyt programmeringssprog er blevet designet til at få mest muligt ud af de nyeste multicore computerprocessorer. Hvis det finder fordel blandt kodere, kan det give mere kraftfuld software til mange computere.
I løbet af de sidste par år, da de er stødt op mod de fysiske grænser for miniaturisering, har mikrochipproducenter skiftet fra at øge kraften i processorkerner - den del af en chip, der håndterer data og instruktioner - til at tilføje flere kerner til en enkelt chip . For eksempel har Intels i3- og i7-processorer henholdsvis to og fire kerner.
Dette udgør en udfordring for programmører. Da de fleste programmeringssprog er designet til single-core chips, kan det være vanskeligt at dele opgaver op og sende dem til hver kerne parallelt. Hvis en koder ikke er forsigtig, kan dette forårsage fejl i den måde, hvorpå hver kerne i chippen får adgang til de delte sektioner af hukommelsen.
Tucker Taft , Chief Technology Officer og formand for det Boston-baserede softwarefirma SofCheck , designet det nye sprog - kaldet Parallel specifikation og implementeringssprog (ParaSail) - specifikt til skrivning af software til multicore-processorer. Sproget er beregnet til at undgå de faldgruber, der typisk opstår, når man arbejder med multicore-chips.
For en programmør ligner ParaSail en modificeret form for Java eller C#, to førende sprog. Forskellen er, at det automatisk deler et program op i tusindvis af mindre opgaver, som derefter kan spredes på tværs af kerner – et trick kaldet pico-threading, som maksimerer antallet af opgaver, der udføres parallelt, uanset antallet af kerner. ParaSail udfører også fejlsøgningen automatisk, hvilket gør koden mere sikker. Alt foregår parallelt som standard, medmindre du fortæller det andet, siger Taft.
I løbet af det næste årti forventes antallet af kerner på computerchips at stige yderligere. Der er nogle maskiner derude med snesevis eller hundredvis af kerner nu, siger Taft.
ParaSail bruger en række andre tricks, nogle der trækker på sprog udviklet i slutningen af 1980'erne og begyndelsen af 1990'erne til supercomputere - maskiner, der kører mange individuelle computerchips i netværk. Udformningen af selve sproget er i det væsentlige komplet, siger Taft, der præsenterede detaljer om sproget onsdag kl O'Reilly Open Source Convention . Den første version af compileren vil blive frigivet i løbet af den næste måned eller deromkring. Sproget fungerer på Windows-, Mac- og Linux-computere.
Microsoft og Intel bruger 20 millioner dollars på at tilpasse eksisterende sprog til multicore-processorer, så det er svært at sige, om ParaSail vil blive bredt udbredt. Der er mange mennesker, der bryder sig om problemet, tager eksisterende sprog og forsøger at gøre dem bedre til at håndtere parallel behandling, siger Taft.
Taft har allerede en dokumenteret track record i verden af computersprogudvikling, siger Denis nicole af Dependable Systems and Software Engineering Group ved Southampton University. Men han tilføjer, at det normalt kræver virksomheder på størrelse med Sun at skubbe nye sprog på fællesskabet.