Revealing the True Donald Trump: A Devastating Indictment of His Business & Life (2016)
Tilføjelsen af flere kerner til mikroprocessorer har skabt en betydelig mulighed for parallel programmering, men der kræves en killer applikation for at skubbe konceptet i mainstream, sagde forskere under en paneldiskussion på Hot Chips-konferencen.
De fleste software i dag er stadig skrevet til sekventiel udførelse, og programmeringsmodellerne skal ændres for at drage fordel af hurtigere hardware og et stigende antal kerner på chips, sagde panelister. Programmører skal skrive kode på en måde, der gør det muligt at opdele opgaver og udføres samtidig på tværs af flere kerner og tråde.
En masse fokus og penge er gået i at opbygge hurtige maskiner og bedre programmeringssprog, sagde David Patterson, en computer videnskabsprofessor ved University of California, Berkeley, på konferencen i Stanford mandag. Forholdsvis lidt opmærksomhed er blevet givet på at skrive skrivebordsprogrammer parallelt, men applikationer som spil og musik kan ændre det. Brugere af sådanne programmer kræver den bedste realtidseffektivitet, så programmerere må muligvis vedtage modeller, der opdeler opgaver over flere tråde og kerner.
For eksempel kan nye former for parallelisme medføre forbedring af kvaliteten af musik afspilles på pc'er og smartphones, sagde Patterson. Kode, der gør et bedre arbejde med at adskille kanaler og instrumenter, kan i sidste ende skabe lyd gennem parallel interaktion.
University of California, Berkeley, har et parallelt computerlaboratorium, hvor forskere forsøger at forstå, hvordan applikationer anvendes, hvilket kunne hjælpe med at optimere kode til håndholdte enheder. Et projekt sigter mod at bringe browseren til desktop kvalitet til håndholdte enheder ved at optimere kode baseret på specifikke opgaver som gengivelse og parsing af sider. Et andet projekt indebærer optimering af kode til hurtigere hentning af sundhedsoplysninger. Lab'et finansieres primært af Intel og Microsoft.
Berkeley-forskere forsøger at bringe parallelisme i stedet ved at erstatte bits af kode, der oprindeligt blev skrevet ved hjælp af skriptsprog som Python og Ruby on Rails med ny lav C-kode. Den nye kode fokuserer specifikt på bestemte opgaver som at analysere et bestemt stemme mønster i en talegenkendelsesapplikation, sagde Patterson i et interview onsdag. Koden er skrevet ved hjælp af OpenMP eller MPI, applikationsprogrammeringsgrænseflader designet til at skrive parallelle applikationer på maskinniveau.
Eksperter er nødt til at skrive denne højt specialiserede parallelle kode, sagde Patterson. Det reducerer udviklingstiden for programmører, der ellers ville bruge Python og Ruby on Rails, hvilket gør applikationsudvikling lettere, men fokuserer ikke på parallelisme, sagde Patterson i interviewet. Laboratoriet har vist en specifik opgaveudførelse med 20 gange med maskinens lave kode.
Begrebet parallelisme er ikke nyt, og har for det meste været domænet for højtydende computing. Lavt niveau af parallelisme har altid været muligt, men programmører har oplevet en skræmmende opgave med mangel på softwareværktøjer og stadigt skiftende hardwaremiljøer.
"Tråd skal synkronisere korrekt", siger Christos Kozyrakis, professor i elektroteknik og computervidenskab ved Stanford University, under en præsentation forud for paneldiskussionen. Koden skal skrives i en form, der foregår forudsigeligt og skaleres, efterhånden som flere kerner bliver tilgængelige.
Kompilere skal også gøres klogere og være følsomme nok til at opdele tråde til tiden, så outputene modtages i en korrekt rækkefølge, sagde Kozyrakis. Fejlfulde forsøg på at opbygge parallelisme i kode kan skabe buggy-software, hvis specifikke beregninger ikke udføres i en bestemt rækkefølge. Det er et problem, der almindeligvis betegnes som raceforhold. Codere kan også have brug for at lære at bruge flere programmeringsværktøjer for at opnå fynere niveauer af parallelisme, sagde panelister.
"Der er ingen dovenskabende tilgang til programmering", sagde Patterson på konferencen.
Hukommelse og netværksforsinkelse har skabt flaskehalser i data-gennemstrømning, hvilket kunne negere den præstation, der opnås ved parallel task execution. Der findes også forskellige programmeringsværktøjer til forskellige arkitekturer, hvilket gør det vanskeligt at udnytte al den tilgængelige hardware.
Mange parallelle værktøjer, der er tilgængelige i dag, er designet til at udnytte parallelbehandlingsfunktionerne hos processorer og grafikbehandlingsenheder for at forbedre systemets ydeevne. Apple, Intel, Nvidia og Advanced Micro Devices er blandt de virksomheder, der fremmer OpenCL, et parallelt programmeringsmiljø, der vil blive understøttet i Apples kommende Mac OS X 10.6-operativsystem, også kaldet Snow Leopard, som skal udgives fredag. OpenCL konkurrerer med Microsoft, som fremmer sine proprietære DirectX parallelle programmeringsværktøjer, og Nvidia, der tilbyder CUDA-rammen.
OpenCL indeholder et C-lignende programmeringssprog med API'er (applikationsprogrammeringsinterfaces) til styring af distribution af kerner på tværs af hardware som processor kerner og andre ressourcer. OpenCL kunne hjælpe Mac OS med at afkode video hurtigere ved at distribuere pixelbehandling på tværs af flere CPU- og grafikbehandlingsenheder i et system.
Alle eksisterende værktøjer er rettet mod forskellige software-miljøer og udnytter forskellige ressourcer, siger Patterson. OpenCL, for eksempel, er gearet mere mod udførelse af opgaver på GPU'er. Proprietære modeller som DirectX er vanskelige at implementere på tværs af heterogene computermiljøer, mens nogle modeller som OpenCL tilpasser sig kun bestemte miljøer, der er afhængige af GPU'er.
"Jeg tror ikke [OpenCL] skal omfavnes på tværs af alle arkitekturer." Patterson sagde. "Vi har brug for i mellemtiden at forsøge andre ting", som at forsøge at forbedre programmeringsmodellerne med almindeligt anvendte udviklingsværktøjer, som Ruby on Rails, sagde han.
Mens publikum påpegede, at parallelisme har været et problem for årtier, sagde panelerne, at universiteter nu tager en ny tilgang til at arbejde på flere programmeringsværktøjer for at muliggøre parallelisme. Efter mange års finansiering af chipudvikling, betaler regeringen også mere opmærksomhed på parallelbehandling ved finansieringsrelaterede programmer.
Kozyrakis sagde, at Stanford har etableret et laboratorium, der sigter mod at "gøre parallel applikationsudvikling praktisk til masserne" inden 2012 Forskerne arbejder sammen med virksomheder som Intel, AMD, IBM, Sun, Hewlett-Packard og Nvidia.
En øjeblikkelig opgaveprøve for udviklere kan være at forsøge at konvertere eksisterende arvskode parallelt til udførelse på moderne chips, Berkeleys Patterson sagde. Et par virksomheder tilbyder automatisk parallelisering, men omskrivning og samling af arvskoden oprindeligt skrevet til sekventiel udførelse kunne være en stor udfordring.
"Der er penge, der skal laves på disse områder," sagde Patterson.
Bredbåndsforbedringsloven, som blev godkendt af enstemmigt samtykke fra det amerikanske senat sent på tirsdag, ville kræve, at US Federal Communications Commission udsteder en årsrapport om tilgængeligheden af bredbånd over hele USA, i stedet for gældende lov, som kræver, at FCC udsteder en rapport "jævnligt". Lovforslaget er forfattet af senator Daniel Inouye, en Hawaii-demokrat, med et sprog fra en regning af repræsentant Edward Markey, en Massachusetts Demokrater kræver, at FCC ud
Regningen, som nu leder til Bush for sin underskrift, tillader også USA's Department of Handel til at tildele statsstøtte til at oprette kort, der viser, hvor bredbånd er og ikke er tilgængeligt. Regningen giver ikke tilladelse til et budget for det pågældende tilskudsprogram.
For flere måneder siden ændrede Google sine profilsider med dækbilleder. Ikke i modsætning til Facebook, er disse dækbilleder bredt og korte og integreret med et profilbillede af dit valg. I modsætning til Facebook kræver disse coverbilleder dog temmelig underlige dimensioner: 940 x 180 pixel. I et nyligt forsøg på at oprette et nyt coverfoto fandt jeg det meget svært at finde noget, der passer til disse dimensioner korrekt. Derudover kommer Google-profiler ikke med en forhåndsvisningsfunktion,
Du kan styre alle aspekter af dine knapper, herunder størrelse, farve, ikoner, tekst, skygger og positioner. yngre søskende til Slicetige-T, Slicetige-G blev lavet specielt til disse stædige Google-profiler. Med overraskende enkelhed kan du designe et coverbillede med lige de rigtige dimensioner, skære dit profilbillede fra det eller tilføje en fra fil, og endda tilføje ekstrafunktioner som knapper, tekst, billeder og QR-koder. Resultaterne, som du vil se, er temmelig imponerende.
Der er forskellige måder at dele filer mellem pc og mobil på. Du kan f.eks. Bruge Bluetooth, WiFi File Transfer apps, datakabel mv til at overføre dokument, video, lyd og andre filer. Men du vil bemærke, at disse metoder kun virker, hvis din pc og mobil er foran dig. Hvis din pc er i dit hjem, og din mobil er på dit kontor, kan du ikke bede nogen om at sende en fil fra din pc til din mobil. Du kan selvfølgelig bruge skylagring til at dele filer, men det kræver dine loginoplysninger. For at løse
PushBullet