Kompajler GCC 10.1 je ovdje i to su njegove glavne novosti

Nakon godinu dana razvoja objavljeno je izdanje nove verzije iz besplatnog seta Sastavljači GCC 10.1, ovo je prvo značajno izdanje u novom ogranku GCC 10.x.

Prema novoj shemi numeriranja verzija, verzija 10.0 korištena je tijekom razvojnog procesa, a nedugo prije izlaska GCC 10.1, grana GCC 11.0 već je razgranata, na temelju čega će se oblikovati sljedeća verzija. Značaj GCC 11.1 .

Za one koji nisu upoznati s GCC-om (GNU Compiler Collection), trebali biste znati da eOvo je skup kompajlera stvoren projektom GNU, besplatan je softver i distribuira ga Fondacija za slobodni softver (FSF) pod GPL općom javnom licencom.

Ovi kompajleri se široko koriste na većini Unix sustava do te mjere da se smatraju standardom za Unix operativne sustave i derivate otvorenog koda, a također su vlasnički, poput Mac OS X.

GCC zahtijeva skup aplikacija poznatih kao binutils za obavljanje zadataka poput identificiranja objektnih datoteka ili dobivanja njihove veličine za kopiranje, prijevod ili stvaranje popisa, njihovo povezivanje ili uklanjanje nepotrebnih simbola.

Što je novo u OUU 10.1

GCC 10.1 izdvaja se po provedbi mnogih inovacija jezika C ++ razvijen za standard C ++ 20, poboljšanja vezana uz budući standard jezika C (C2x), nove optimizacije u pozadini kompajlera i eksperimentalna podrška za način statičke analize.

Za jezike C, C ++ i Fortran implementirana je specifikacija paralelnog programiranja OpenACC 2.6, koji definira alate za preuzimanje na GPU-ima i specijaliziranim procesorima kao što je NVIDIA PTX.

Provedba standarda Otvorite MP 5.0 (Open Multi-Processing), koji definira API i metode za upotrebu paralelnih metoda programiranja u višejezgrenim i hibridnim sustavima (CPU + GPU / DSP) s dijeljenom memorijom i vektorizacijskim jedinicama (SIMD), gotovo je gotovo.

Značajke se dodaju kao uvjetni izrazi lastprivate, direktive o skeniranju i petlji, izrazi order_device_addr i use_device_addr. Za OpenMP i OpenACC, dodano je podrška za preuzimanje na XNUMX. i XNUMX. generaciji AMD Radeon grafičkih procesora.

Za jezike C dodana je funkcija "pristup" koja opisuje pristup funkciji objekata proslijeđenih referencom ili pokazivačem i za povezivanje tih objekata s cjelobrojnim argumentima koji sadrže informacije o veličini objekata.

Da bi radio zajedno s "pristupom", atribut "tip" implementiran je za otkrivanje pogrešnog pristupa iz korisničkih funkcija, na primjer, prilikom upisivanja vrijednosti u područje izvan granica polja. Atribut symver također je dodan za povezivanje znakova u ELF datoteci s određenim brojevima verzija.

Za C ++ je primijenjeno oko 16 promjena i inovacija razvijen u standardu C ++ 20 uključujući ključnu riječ "constinit" dodana i implementirana podrška za proširenje predložaka «koncept»To vam omogućuje da definirate skup zahtjeva za parametre predloška, ​​koji tijekom kompilacije ograničavaju skup argumenata koji se mogu uzeti kao parametri predloška.

Unaprijediti istaknute su poboljšane interproceduralne optimizacije, IPA-SRA je redizajniran za rad tijekom vezanja, a između ostalog sada uklanja neiskorištene izračunate i vraćene vrijednosti.

U načinu optimizacije "-O2" omogućena je opcija "-finline-functions", koja je rekonfigurirana za kompaktniji kod nego za izvedbu.

The poboljšana optimizacija veze (LTO), si dodao novu izvršnu datoteku lto-dump za izbacivanje podataka na LTO byte-kodiranim objektnim datotekama. U LTO paralelnim prolazima moguće je automatski odrediti broj istodobnih zadataka izvršenja i, ako se to ne može utvrditi, koristiti podatke o broju CPU jezgri kao faktor paralelizacije.

Poboljšan je mehanizam optimizacije a temelji se na rezultatima profiliranja koda (PGO), koji generira optimalniji kod na temelju analize karakteristika izvršavanja koda.

Ako želite znati više o tome, možete provjeriti detalje ovog izdanja U sljedećem linku. 


Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.