Inżynierowie zajmujący się kompilatorami firmy Intel są nadal bardzo zajęci pracą nad wprowadzeniem jak największej ilości obsługi nowych funkcji procesora do GCC 13 w ramach kolejnego corocznego wydania kompilatora, które zadebiutuje jako GCC 13.1 na początku 2023 roku.
GCC 13 w najbliższych dniach przejdzie do kolejnego etapu rozwoju, skupiającego się na naprawianiu błędów/regresji i oficjalnym zakończeniu pracy nad funkcjami. Inżynierowie Intela pracowali ostatnio nad zapewnieniem, że ich procesory 2023 i 2024 znajdą wsparcie w GCC 13, aby kompilator był stabilny i przyjęty, zanim te procesory dotrą do klientów. Wspaniale jest widzieć, jak Intel kontynuuje ten trend wczesnego udostępniania nowych celów kompilatorów i obsługi nowych rozszerzeń zestawu instrukcji dla procesorów, które nie zostaną wydane za ponad rok. Tymczasem po drugiej stronie tabeli, GCC 13 dodaje również obsługę Znver4 dla już sprzedawanych procesorów AMD Zen 4 (na razie nadal używa tabel kosztów Zen 3) i nie wspominając o braku wcześniejszej obsługi Znver5, przy czym AMD nadal być zupełnie inną historią niż ich praca nad włączaniem kompilatora w porównaniu z Intelem.
W ostatnich tygodniach wprowadzono nowe rozszerzenia zestawu instrukcji Intel x86_64, połączono obsługę Meteor Lake i połączono Sierra Forest.
Opublikowanie w ten weekend na liście dyskusyjnej i już scalone to Obsługa Intel RAO-INT. Instrukcje RAO-INT mają premierę z procesorami Grand Ridge dla nowych instrukcji atomowych ADD/AND/OR/XOR.
Następnie scalanie z kodem GCC 13 po wcześniejszym umieszczeniu na liście dyskusyjnej to Obsługa procesorów Grand Ridge i Grand wsparcie, więc zarówno „-march=grandridge”, jak i „-march=graniterapids” są dostępne dla GCC 13.
graniterapids
Intel graniterapids Procesor z rozszerzeniami 64-bitowymi, MOVBE, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT, CX16, SAHF, FXSR, AVX, XSAVE, PCLMUL, FSGSBASE, RDRND, F16C, AVX2, BMI , BMI2, LZCNT, FMA, MOVBE, HLE, RDSEED, ADCX, PREFETCHW, AES, CLFLUSHOPT, XSAVEC, XSAVES, SGX, AVX512F, AVX512VL, AVX512BW, AVX512DQ, AVX512CD, PKUBXNI, AVX5, AVX512 , AVX512VBMI2, VPCLMULQDQ, AVX512BITALG, RDPID, AVX512VPOPCNTDQ, PCONFIG, WBNOINVD, CLWB, MOVDIRI, MOVDIR64B, AVX51 2VP2INTERSECT, ENQCMD, CLDEMOTE, PTWRITE, WAITPKG, SERIALIZE, TSXLDTRK, UINTR, AMX-BF16, AMX-TILE, AMX-INT8, AVX-VNNI, AVX512FP16, AVX512BF16, AMX-FP16 i zestaw instrukcji obsługi PREFETCHIgrandridge
Procesor Intel Grand Ridge z rozszerzeniami 64-bitowymi, MOVBE, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT, AES, PREFETCHW, PCLMUL, RDRND, XSAVE, XSAVEC, XSAVES, XSAVEOPT, FSGSBASE, PTWRITE, RDPID, SGX, GFNI-SSE, CLWB, MOVDIRI, MOVDIR64B, CLDEMOTE, WAITPKG, ADCX, AVX, AVX2, BMI, BMI2, L16ZC, F Obsługa zestawów instrukcji PCONFIG, PKU, VAES, VPCLMULQDQ, SERIALIZE, HRESET, KL, WIDEKL, AVX-VNNI, AVXIFMA, AVXVNNIINT8, AVXNECONVERT, CMPCCXADD i RAOINT.
Wspaniale jest widzieć wszystkie Dodatki Intela są przygotowywane do GCC 13 na długo przed wprowadzeniem tych procesorów na rynek. Obsługa LLVM/Clang prawdopodobnie również zostanie wkrótce dopięta, ale przynajmniej istnieje korzyść z sześciomiesięcznych cykli wydawniczych.