Tutorial fps boost FiveM 2020
Adăugarea de nuclee multiple la microprocesoare a creat o oportunitate semnificativă pentru programarea paralelă, dar este nevoie de o aplicație ucigașă pentru a împinge conceptul în mainstream, au declarat cercetătorii în cadrul unei discuții la conferința Hot Chips.
Cele mai multe programe de astăzi sunt încă scrise pentru execuția secvențială, iar modelele de programare trebuie să se schimbe pentru a profita de hardware-ul mai rapid și de un număr din ce în ce mai mare de jetoane pe jetoane. Programatorii trebuie să scrie coduri într-un mod care să permită împărțirea și executarea sarcinilor simultan pe mai multe nuclee și fire.
O mulțime de focalizare și bani au mers în construirea de mașini rapide și limbi de programare mai bune, a spus David Patterson, un calculator profesor universitar la Universitatea din California, Berkeley, la conferința de la Stanford, luni. În mod comparativ, puțină atenție a fost acordată scrierii de programe desktop în paralel, dar aplicații cum ar fi jocuri și muzică ar putea schimba acest lucru. Utilizatorii unor astfel de programe necesită cea mai bună performanță în timp real, astfel încât programatorii ar putea fi nevoiți să adopte modele care descompun sarcini pe mai multe fire și fire.
De exemplu, forme noi de paralelism ar putea îmbunătăți calitatea muzicii redate pe PC și smartphone-uri, a spus Patterson. Codul care face o treabă mai bună de separare a canalelor și instrumentelor ar putea genera în cele din urmă sunet prin interacțiune paralelă.
Universitatea din California, Berkeley, dispune de un laborator de calcul paralel unde cercetătorii încearcă să înțeleagă modul în care sunt utilizate aplicațiile, pentru dispozitive portabile. Un proiect urmărește să aducă navigarea în calitate de desktop în dispozitive portabile, prin optimizarea codului bazat pe sarcini specifice, cum ar fi redarea și parsarea paginilor. Un alt proiect implică optimizarea codului pentru recuperarea mai rapidă a informațiilor despre sănătate. Laboratorul este finanțat în principal de către Intel și Microsoft.
Cercetătorii de la Berkeley încearcă să aducă paralelism prin înlocuirea unor biți de cod scrise inițial folosind limbi de scriptare precum Python și Ruby on Rails cu noul cod C de nivel scăzut. Noul cod se concentrează în mod special pe anumite sarcini, cum ar fi analizarea unui anumit tip de voce într-o aplicație de recunoaștere a vorbirii, a declarat Patterson într-un interviu miercuri. Codul este scris folosind OpenMP sau MPI, interfețe de programare a aplicațiilor concepute pentru a scrie aplicații paralele la nivel de mașină.
Experții trebuie să scrie acest cod paralel foarte specializat, a spus Patterson. Acesta reduce timpul de programare pentru programatorii care altfel ar folosi Python și Ruby on Rails, ceea ce face dezvoltarea aplicațiilor mai ușoară, dar nu se concentrează pe paralelism, a spus Patterson în interviu. Laboratorul a arătat o sarcină specifică de executare a sarcinii cu un factor de 20 cu codul mașinii de nivel inferior.
Conceptul de paralelism nu este nou și a fost în mare parte domeniul computerizării de înaltă performanță. Niveluri scăzute de paralelism au fost întotdeauna posibile, dar programatorii s-au confruntat cu o sarcină descurajantă, cu o lipsă de instrumente software și medii hardware mereu în schimbare.
"Firele trebuie sincronizate corect", a declarat Christos Kozyrakis, profesor de inginerie electrică și informatică de la Universitatea Stanford, în timpul unei prezentări anterioare discuției în grup. Codul trebuie să fie scris într-o formă care se comportă previzibil și se măsoară ca mai multe nuclee devin disponibile.
Compilatorii trebuie, de asemenea, să devină mai inteligenți și să fie suficient de perceptivi pentru a rupe firele la timp, astfel încât ieșirile să fie primite într-o ordine corectă, a spus Kozyrakis. Încercările greșite de a construi paralelismul în cod ar putea crea software buggy dacă calculele specifice nu sunt executate într-o anumită ordine. Aceasta este o problemă frecvent menționată drept condiții de rasă. Coderii ar putea, de asemenea, să aibă nevoie să învețe cum să folosească mai multe instrumente de programare pentru a atinge nivele mai fine de paralelism, au spus participanții.
"Nu există o abordare leneș-băiat la programare", a spus Patterson la conferință.
Memoria și latența de rețea au creat blocaje în transferul de date, ceea ce ar putea nega performanța obținută prin executarea sarcinilor paralele. Există, de asemenea, diferite instrumente de programare pentru diferite arhitecturi, ceea ce face dificilă exploatarea tuturor hardware-ului disponibil.
Multe instrumente de paralelism disponibile astăzi sunt proiectate pentru a valorifica capacitățile de procesare paralelă a procesoarelor și a unităților de procesare grafică pentru a îmbunătăți performanța sistemului. Apple, Intel, Nvidia și Advanced Micro Devices se numără printre companiile care promovează OpenCL, un mediu de programare paralel care va fi susținut în viitorul sistem de operare Mac OS X 10.6, denumit și Snow Leopard, care urmează să fie lansat vineri. OpenCL concurează cu Microsoft, care promovează propriile instrumente de programare paralelă DirectX și Nvidia, care oferă cadrul CUDA.
OpenCL include un limbaj de programare asemănător cu AP (interfețe de programare a aplicațiilor) pentru a gestiona distribuția kernelurilor ca nuclee de procesare și alte resurse. OpenCL ar putea ajuta sistemul Mac OS să decodeze mai rapid videoclipul prin distribuirea procesării pixelilor în mai multe unități de procesare și grafică într-un sistem.
Toate instrumentele existente sunt orientate către diferite medii software și profită de diferite resurse, a spus Patterson. OpenCL, de exemplu, este orientat mai mult spre executarea sarcinilor pe GPU-uri. Modelele proprietare precum DirectX sunt greu de instalat pe medii de calcul eterogene, în timp ce unele modele, cum ar fi OpenCL, se adaptează doar mediilor specifice care se bazează pe unitățile de procesare grafică.
"Nu cred că [OpenCL] va fi îmbrățișat în toate arhitecturile. Patterson a spus. "Între timp avem nevoie să încercăm și alte lucruri", cum ar fi încercarea de a îmbunătăți modelele de programare cu instrumente de dezvoltare utilizate în mod obișnuit, cum ar fi Ruby on Rails, a spus el.
În timp ce membrii publicului au subliniat că paralelismul a fost o problemă pentru decenii, participanții la conferință au declarat că universitățile se îndreaptă acum spre o nouă abordare a lucrărilor pe mai multe instrumente de programare pentru a permite paralelismul. După ani de finanțare a dezvoltării de cipuri, guvernul acordă o atenție sporită procesării paralele prin programe de finanțare.
Kozyrakis a declarat că Stanford a înființat un laborator care are ca scop "dezvoltarea practică a aplicațiilor paralele pentru [mase]" până în 2012, Iar cercetătorii lucrează cu companii ca Intel, AMD, IBM, Sun, Hewlett-Packard și Nvidia.
Un test de sarcină imediat pentru dezvoltatori ar putea fi încercarea de a transforma codul moștenit existent în paralel pentru a fi executat pe chips-uri moderne, Berkesley's Patterson a spus. Câteva companii oferă o paralelizare automată, dar rescrierea și compilarea codului moștenit inițial scris pentru executarea secvențială ar putea fi o mare provocare.
"Exista bani în acele zone", a spus Patterson.
"Ideea că Silverlight este în orice altceva decât sănătatea nepolitică are mai mult de-a face cu ceea ce ar fi făcut Adobe cum ar fi cazul, mai degraba decat ceea ce este de fapt cazul, a scris el in blog posting. "Sugestia că" adoptarea Silverlight a izbucnit în ultimele 6-9 luni "este destul de risipă, de fapt. Pentru început, Silverlight 2 a fost expediat acum patru luni și, în prima lună de disponibilitate, am văzut peste 100 de milioane "Sneath a răspuns la comentar
Referința lui Sneath la Silverlight 2, a doua versiune a tehnologiei, este esențială pentru apărarea tehnologiei. Silverlight, care cuprinde un instrument pentru dezvoltarea și proiectarea aplicațiilor Internet și un media player pentru difuzarea conținutului, a fost introdus pentru prima oară în versiunea 1.0 în aprilie 2007. Totuși, până la lansarea lui Silverlight 2, tehnologia a fost complet arsă și a devenit cu adevărat viabilă ca o alternativă la Adobe Flash.
Ați avut vreodată o idee bună pentru o aplicație smartphone, dar nu aveați know-how-ul tehnic pentru al crea? Apoi, ați putea dori să verificați aplicația App Inventor beta, noul instrument Google pentru crearea de aplicații bazate pe Web, care permite oricărei persoane să creeze o aplicație smartphone fără cunoștințe de programare necesare.
ÎN loc să introduceți linii de cod, aplicația App Inventor vă permite să construiți o aplicație întreagă prin glisarea și plasarea unor elemente precum butoane, casete de introducere a textului și imagini în constructorul de aplicații. Aplicația Inventor vă oferă, de asemenea, acces la o varietate de caracteristici ale telefonului pe care le puteți include în aplicația dvs., cum ar fi GPS, accelerometre și integrarea cu servicii bazate pe Web, cum ar fi Twitter.
O tabletă de suprafață de 7 inch va fi D.O.A. fără o aplicație ucigașă
Zvonurile despre o tabletă de suprafață de 7 inci sunt abundente, însă diminuarea dimensiunii ecranului nu va fi suficientă pentru cumpărătorii Nexus 7 și iPad mini pentru o tabletă Windows. se învârte în jurul planurilor potențiale ale Microsoft pentru un comprimat de 7 inci de suprafață, deoarece plăcile mai mici, mai puțin costisitoare, se ridică la o parte din ce în ce mai mare a pieței.