Intel kompilatori. Kāpēc bija vajadzīgi jauni kompilatori?
Intel C++ un Fortran kompilatori un MKL bibliotēka
Līdzās standarta GNU kompilatoriem operētājsistēmai Linux, NIVC skaitļošanas kompleksa klasteros ir instalēti Intel C++ un Fortran kompilatori. Pašlaik (2006. gada sākumā) visos klasteros ir instalēta kompilatoru versija 9.1. Šī lapa ir veltīta šo kompilatoru svarīgāko opciju un iestatījumu aprakstam, kā arī to galvenajām atšķirībām no GNU kompilatoriem. Lapa ir paredzēta galvenokārt MSU pētniecības skaitļošanas centra klasteru lietotājiem, taču tā var būt noderīga arī citiem krieviski runājošiem lietotājiem. Šeit nav aplūkotas problēmas, kas saistītas ar kompilāciju platformai IA-64.
Arī Intel bibliotēka ir instalēta visos klasteros Kodola matemātikas bibliotēka(MKL) versija 8.0.2. Bibliotēka atrodas direktorijā /usr/mkl. Lūdzu, ņemiet vērā, ka lib direktorijā ir pieejami apakšdirektoriji 32, 64 un em64t. Ant klasterī ir jāizmanto bibliotēkas no apakšdirektorija em64t, bet citos klasteros - no apakšdirektorija 32. Visu nepieciešamo dokumentāciju un piemērus var iegūt no /usr/mkl/doc direktorijas.
Kāpēc bija vajadzīgi jauni kompilatori?
Nepieciešamība pēc jauniem kompilatoriem galvenokārt radās, lai a) atbalstītu programmēšanu Fortran 90, kā arī b) Fortran programmu jaudīgākai optimizēšanai, nekā to nodrošina kompilators g77, kas izmanto tulkošanu uz C un pēc tam kompilāciju, izmantojot gcc.
Arī PGI (Portland Group) kompilatori atbilst šīm prasībām, taču izstrādātāju kompānija atteicās tos piegādāt Krievijai.
Kā izmantot?
Intel kompilatori tiek izsaukti, izmantojot komandas icc(C vai C++), icpc(C++) un ifort(Fortran 77/90). Komandas mpicc, mpiCC un mpif77 MPI programmu kompilēšanai un montāžai arī ir konfigurētas, lai izmantotu Intel kompilatorus.
Ir iespējams arī izmantot GNU kompilatorus, izmantojot komandas mpigcc, mpig++ un mpig77 (Fortran 90 netiek atbalstīts).
Ievades faili
Pēc noklusējuma faili ar paplašinājumu .cpp Un .cxx tiek uzskatīti par avota tekstiem C++ valodā, faili ar paplašinājumu .c- C avota kods, un icpc kompilators arī apkopo .c failus kā C++ avota kodu.
Faili ar paplašinājumiem .f, .ftn Un .priekš tiek atpazīti kā avota teksti Fotranas valodā ar fiksētu apzīmējumu formu un faili .fpp Un .F papildus iziet cauri Fortran valodas priekšapstrādātājam. Faili ar paplašinājumu .f90 tiek uzskatīti par Fortran 90/95 avota tekstiem ar brīvas formas apzīmējumiem. Izmantojot opcijas, Fortran programmām varat skaidri norādīt fiksētu vai brīvu apzīmējuma formu -FI Un -FR attiecīgi.
Faili ar paplašinājumu .s atzīts par montāžas valodas kodu IA-32.
Intel kompilatora funkcijas
Šeit mēs iepazīstinām ar Intel kompilatoru īpašībām, kā izstrādātājs norādījis lietotāja rokasgrāmatā ar dažiem mūsu komentāriem.
- Būtiska optimizācija
Acīmredzot tas nozīmē koda optimizāciju augstā līmenī, t.i. pirmkārt dažādas cilpas transformācijas, kuras ar lielākiem vai mazākiem panākumiem veic gandrīz visi kompilatori - Peldošā komata optimizācija
Acīmredzot tas, pirmkārt, nozīmē maksimālu aparatūras līmenī ieviesto komandu izmantošanu - Starpprocedūru optimizācija
tie. visas programmas globālā optimizācija, pretstatā parastajai optimizācijai, kas ietekmē tikai konkrētu funkciju kodu - Profila optimizācija
tie. iespēja palaist programmu testa režīmā, apkopot datus par laiku, kas nepieciešams, lai nodotu noteiktus koda fragmentus bieži izmantotās funkcijās, un pēc tam izmantot šos datus optimizācijai - Atbalsts SSE instrukciju kopai Pentium III procesoros
piezīme: skaitļošanas uzdevumiem vairāk interesē SSE2 komandas, t.i. vektora komandas virs 64 bitu reāliem skaitļiem, taču tās atbalsta tikai Pentium 4 procesori, kas mūsu rīcībā vēl nav - Automātiska vektorizācija
tie. atkal, izmantojot komandas SSE un SSE2, ko kompilators ievieto automātiski - OpenMP atbalsts programmēšanai SMP sistēmās
piezīme: klasterī ieteicams galvenokārt izmantot MPI saskarni; plaši izplatīta OpenMP izmantošana klasterī nav gaidāma un šādi eksperimenti vēl nav veikti; bet droši vien ir jēga izmantot bibliotēkas (BLAS utt.), kas ir paralēlas koplietošanas atmiņai. - Datu sākotnējā ielāde
tie. Acīmredzot datu kešatmiņā tiek izmantotas iepriekšējas ielādes komandas no atmiņas, kas būs nepieciešamas pēc kāda laika - "Nosūtīšanas" kods dažādiem procesoriem
tie. iespēja ģenerēt kodu dažādiem procesoriem vienā izpildāmā failā, kas ļauj izmantot priekšrocības jaunākie procesori lai sasniegtu tajos augstāko veiktspēju, vienlaikus saglabājot programmu bināro savietojamību ar iepriekšējiem procesoriem; Mūsu klasterī tas vēl nav aktuāli, jo tiek izmantoti tikai Pentium III procesori, un klasterī kompilētās programmas nav paredzēts pārsūtīt un palaist citās iekārtās.
Pamata kompilatora opcijas
Interesantākās, protams, ir koda optimizācijas iespējas. Lielākā daļa opciju ir kopīgas C++ un Fortran kompilatoriem. Vairāk Detalizēts apraksts opcijas angļu valodas lietotāja rokasgrāmatās.
Optimizācijas līmeņi | |
---|---|
Opcija | Apraksts |
-O0 | Atspējo optimizāciju |
-O1 vai -O2 | Pamata optimizācija ātrumam. Bibliotēkas funkciju iekļautā ievietošana ir atspējota. C++ kompilatoram šīs opcijas nodrošina tādu pašu optimizāciju; Fortran kompilatoram ir vēlama opcija -O2, jo ietver arī cikla veicināšanu. |
-O3 | Jaudīgākas optimizācijas, tostarp cilpas transformācijas, datu iepriekšēja ielāde un OpenMP izmantošana. Dažas programmas var negarantēt labāku veiktspēju salīdzinājumā ar -O2. Ir jēga izmantot kopā ar vektorizācijas opcijām -xK Un -xW. |
-atritināt[n] | Iespējo cilpas attīšanu līdz n reizēm. |
Optimizācija konkrētam procesoram | |
Opcija | Apraksts |
-tpp6 | Optimizācija Penitum Pro, Pentium II un Pentium III procesoriem |
-tpp7 | Optimizācija Penitum 4 procesoriem (šī opcija ir iespējota pēc noklusējuma kompilatoram IA-32) |
-xM | Kodu ģenerēšana, izmantojot MMX paplašinājumus, kas raksturīgi Pentium MMX, Pentium II un jaunākiem procesoriem |
-xK | Kodu ģenerēšana, izmantojot SSE paplašinājumus, kas raksturīgi Pentium III procesoriem |
-xW | Kodu ģenerēšana, izmantojot SSE2 paplašinājumus, kas raksturīgi Pentium 4 procesoriem |
Starpprocedūru optimizācija | |
-ip | Viena faila ietvaros ir iespējota starpprocedūru optimizācija. Ja norādāt opciju -ip_no_inlining, tad iekļautās funkciju ievietošana ir atspējota. |
-ipo | Iespējo starpprocedūru optimizāciju starp dažādiem failiem |
Optimizācija, izmantojot profilus | |
-prof_gen | Tiek ģenerēts "profilēšanas" kods, kas tiks izmantots profilēšanai, t.i. vācot datus par noteiktu vietu apbraukšanas biežumu programmā |
-prof_use | Optimizācija tiek veikta, pamatojoties uz datiem, kas iegūti profilēšanas posmā. Ir lietderīgi to izmantot kopā ar starpprocedūru optimizācijas opciju -ipo. |
Paralēlizācija SMP sistēmām | |
-openmp | Iespējo OpenMP 2.0 standarta atbalstu |
- paralēli | Automātiskā cilpas paralēlizācija ir iespējota |
Performance
Saskaņā ar SPEC CPU2000 testu rezultātiem, kas publicēti ixbt.com serverī, Intel kompilatoru versija 6.0 bija gandrīz vispārēji labāka salīdzinājumā ar gcc kompilatoru versijām 2.95.3, 2.96 un 3.1 un PGI versiju 4.0.2. Šie testi tika veikti 2002. gadā datorā ar Pentium 4/1,7 GHz procesoru un RedHat Linux 7.3.
Saskaņā ar Polyhedron veiktajiem testiem Intel Fortran kompilatora versija 7.0 bija gandrīz vispārēji pārāka par citiem Fortran 77 kompilatoriem operētājsistēmai Linux (Absoft, GNU, Lahey, NAG, NAS, PGI). Tikai dažos testos Intel kompilators ir nedaudz zemāks par Absoft, NAG un Lahey kompilatoriem. Šie testi tika veikti datorā ar Pentium 4/1,8 GHz procesoru un Mandrake Linux 8.1.
Intel kompilatoru versija 9.1 arī pārspēj gcc kompilatoru veiktspēju, un to veiktspēja ir salīdzināma ar Absoft, PathScale un PGI.
Būsim pateicīgi tiem lietotājiem un lasītājiem, kuri atsūtīs mums datus par kompilatora izvēles (GCC vai Intel) un optimizācijas iespēju ietekmi uz darba ātrumu viņu reālās dzīves problēmām.
Bibliotēkas
C valodas kompilators izmanto izpildlaika bibliotēku, kas izstrādāta GNU projektā ( libc.a).
Ar Intel C++ kompilatoru tiek piegādātas šādas bibliotēkas:
- libcprts.a- izpildlaika C++ valodu bibliotēka, ko izstrādājusi Dinkumware.
- libcxa.a- papildu izpildlaika bibliotēka Intel C++ izstrādei.
- libimf.a- Intel izstrādāta matemātisko funkciju bibliotēka, kas ietver optimizētus un augstas precizitātes trigonometrisko, hiperbolisko, eksponenciālo, speciālo, sarežģīto un citu funkciju implementācijas (sīkāku informāciju skatīt funkciju sarakstā).
- libirc.a- izpildlaika atbalsts profilēšanai (PGO) un koda nosūtīšanai atkarībā no procesora (skatīt iepriekš).
- libguide.a- OpenMP ieviešana.
Šajā sarakstā ir iekļautas statiskās bibliotēkas, taču lielākajai daļai no tām ir arī dinamiskās, t.i. startēšanas laikā pievienotās opcijas ( .tātad).
Kopā ar Fortran kompilatoru tiek piegādātas šādas bibliotēkas: libCEPCF90.a, libIEPCF90.a, libintrins.a, libF90.a, tiek izmantota arī matemātisko funkciju bibliotēka libimf.a.
Izpildāmā faila izveide
Bibliotēkas var savienot statiski (veidošanas laikā) vai dinamiski (programmas palaišanas laikā). Dinamiskā pieeja ļauj samazināt izpildāmā faila lielumu un ļauj koplietot to pašu bibliotēkas kopiju atmiņā, taču šim nolūkam ir jāinstalē pilns dinamisko bibliotēku komplekts, kas tiek izmantots katrā mezglā, kurā tiks darbinātas programmas. .
Tādējādi, ja instalējāt Intel kompilatoru savā Linux datorā un vēlaties palaist kompilētos izpildāmos failus citās iekārtās, jums ir jāizmanto statisks būvējums (kas ir vienkāršāk) vai jākopē Intel dinamiskās bibliotēkas uz šīm iekārtām (parasti no direktoriju, piemēram, /opt/intel /compiler70/ia32/lib), uz kādu no direktorijiem, kas norādīti /etc/ld.so.conf failā, kā arī pārliecinieties, vai tajos ir instalēta viena un tā pati GNU/Linux dinamisko bibliotēku kopa. mašīnas.
Pēc noklusējuma visas Intel izstrādes bibliotēkas (izņemot libcxa.so) ir saistītas statiski, un visas Linux sistēmas bibliotēkas un GNU bibliotēkas ir dinamiski saistītas. Izmantojot opciju - statisks jūs varat piespiest savācēju (saišu redaktoru) savienot visas bibliotēkas statiski (kas palielinās skaļumu). izpildāmais fails) un izmantojot opciju -i_dynamic Varat dinamiski saistīt visas Intel izstrādes bibliotēkas.
Pievienojot papildu bibliotēkas, izmantojot skata opciju - bibliotēka iespējams, jums būs jāizmanto šī opcija -Ldirektorijs lai norādītu ceļu, kur atrodas bibliotēkas.
Opciju izmantošana -Bstatisks Un -Bdinamisks varat skaidri norādīt dinamisko vai statisko savienojumu katrai no bibliotēkām, kas norādītas komandrinda.
Izmantojot opciju -c izpildāmā faila montāža ir atspējota un tiek veikta tikai kompilācija (objekta moduļa ģenerēšana).
Moduļu koplietošana Fortran un C
Lai koplietotu Fortran un C valodā rakstītos moduļus, jums jāvienojas par procedūru nosaukšanu objektu moduļos, parametru nodošanu un piekļuvi globālajiem mainīgajiem, ja tādi ir.
Pēc noklusējuma Intel Fortran kompilators pārvērš procedūru nosaukumus mazajos burtos un nosaukuma beigās pievieno pasvītrojumu. C kompilators nekad nemaina funkciju nosaukumus. Tādējādi, ja no Fortran moduļa vēlamies izsaukt funkciju vai procedūru FNNAME, kas ieviesta C valodā, tad C modulī to vajadzētu saukt par fnname_.
Fortran kompilators atbalsta šo opciju -nus [faila nosaukums], kas ļauj atspējot pasvītrojumu pievienošanu iekšējo procedūru nosaukumiem. Ja ir norādīts faila nosaukums, tas tiek darīts tikai norādītajā failā norādītajiem procedūru nosaukumiem.
Pēc noklusējuma Fortran parametri tiek nodoti pēc atsauces, un C tie vienmēr tiek nodoti pēc vērtības. Tādējādi, izsaucot Fortran procedūru no C moduļa, mums ir jānosūta norādes uz atbilstošajiem mainīgajiem, kas satur faktisko parametru vērtības kā parametrus. Rakstot funkciju C, kas būs jāizsauc no Fortran moduļa, mums jāapraksta formālie parametri kā norādes uz atbilstošajiem tipiem.
C moduļos ir iespējams izmantot COMMON blokus, kas definēti Fortran moduļos (plašāku informāciju skatiet Intel Fortran kompilatora lietotāja rokasgrāmatas nodaļā C un Fortran sajaukšana).
Intel un GCC kompilatoru koplietošana
C objektu moduļi, ko ražo Intel C++ kompilators, ir saderīgi ar GCC kompilatora un GNU C bibliotēkas ražotajiem moduļiem. Tādējādi šos moduļus var izmantot kopā vienā programmā, kas kompilēta, izmantojot komandas icc vai gcc, taču ir ieteicams izmantot icc, lai pareizi iekļautu Intel bibliotēkas.
Intel kompilators atbalsta vairākus nestandarta C valodas paplašinājumus, ko izmanto GNU projekts un atbalsta GCC kompilators (bet ne visus, sīkāku informāciju skatiet šeit).
Lietotāja rokasgrāmatā nekas nav teikts par objektu moduļu saderību C++ un Fortran valodās, acīmredzot tas netiek atbalstīts.
Standartu atbalsts
Intel C++ Compiler 7.0 operētājsistēmai Linux atbalsta ANSI/ISO C valodas standartu (ISO/IEC 9899/1990). Ir iespējams noteikt stingru saderību ar ANSI C standartu ( -ansi) vai paplašināts ANSI C dialekts ( -Xa). Izmantojot opciju -c99
Iepriekšējā žurnāla numurā mēs apspriedām Intel VTune Performance Analyzer saimes produktus - veiktspējas analīzes rīkus, kas ir pelnīti populāri lietojumprogrammu izstrādātāju vidū un ļauj noteikt kodu. komandu pieteikumi, kas tērē pārāk daudz CPU resursu, sniedzot izstrādātājiem iespēju identificēt un novērst potenciālu šauras vietas, kas saistīti ar līdzīgām koda sadaļām, tādējādi paātrinot lietojumprogrammu izstrādes procesu. Tomēr ņemiet vērā, ka lietojumprogrammu veiktspēja lielā mērā ir atkarīga no tā, cik efektīvi ir to izstrādē izmantotie kompilatori un kādas funkcijas aparatūra tos izmanto, ģenerējot mašīnas kodu.
Jaunākās Intel Intel C++ un Intel Fortran kompilatoru versijas operētājsistēmai Windows un Linux ļauj iegūt lietojumprogrammu veiktspējas priekšrocības sistēmām, kuru pamatā ir Intel procesori Itanium 2, Intel Xeon un Intel Pentium 4 līdz 40%, salīdzinot ar esošajiem citu ražotāju kompilatoriem, jo tiek izmantotas tādas šo procesoru iespējas kā Hyper-Threading tehnoloģija.
Atšķirības, kas saistītas ar šīs kompilatoru grupas koda optimizāciju, ietver steka izmantošanu peldošā komata operāciju veikšanai, starpprocedūru optimizāciju (IPO), optimizāciju saskaņā ar lietojumprogrammas profilu (Profila vadītā optimizācija (PGO), datu iepriekšēju ielādi kešatmiņā () Datu iepriekšēja ielāde), kas ļauj izvairīties no latentuma, kas saistīts ar piekļuvi atmiņai, Intel procesoru raksturīgo funkciju atbalsts (piemēram, paplašinājumi straumēšanas datu apstrādei Intel Streaming SIMD Extensions 2, kas raksturīgi Intel Pentium 4), automātiska koda izpildes paralēlizācija, lietojumprogramma. izveide, darbojas uz vairākiem dažādi veidi procesori, optimizējot vienu no tiem, rīki turpmākā koda “paredzēšanai” (zaru prognozēšana), paplašināts atbalsts darbam ar izpildes pavedieniem.
Ņemiet vērā, ka Intel kompilatorus izmanto tādos pazīstamos uzņēmumos kā Alias/Wavefront, Oracle, Fujitsu Siemens, ABAQUS, Silicon Graphics, IBM. Saskaņā ar neatkarīgu testēšanu, ko veikuši vairāki uzņēmumi, Intel kompilatoru veiktspēja ir ievērojami augstāka nekā citu ražotāju kompilatoru veiktspēja (skatiet, piemēram, http://intel.com/software/products/compilers/techtopics/compiler_gnu_perf .pdf).
Tālāk mēs apskatīsim dažas funkcijas jaunākās versijas Intel kompilatori galddatoriem un serverim operētājsistēmas.
Kompilatori Microsoft Windows platformai
Intel C++ kompilators 7.1 operētājsistēmai Windows
Intel C++ Compiler 7.1 ir šī gada sākumā izlaists kompilators, kas nodrošina ļoti optimizētu kodu Intel Itanium, Intel Itanium 2, Intel Pentium 4 un Intel Xeon procesoriem, kā arī Intel Pentium M procesoram, izmantojot Intel Centrino tehnoloģiju un paredzēts lietošanai mobilās ierīces.
Norādītais kompilators ir pilnībā savietojams ar izstrādes rīkiem Microsoft Visual C++ 6.0 un Microsoft Visual Studio .NET: to var iebūvēt attiecīgajās izstrādes vidēs.
Šis kompilators atbalsta ANSI un ISO C/C++ standartus.
Intel Fortran Compiler 7.1 operētājsistēmai Windows
Intel Fortran Compiler 7.1 for Windows, kas arī tika izlaists šī gada sākumā, ļauj izveidot optimizētu kodu Intel Itanium, Intel Itanium 2, Intel Pentium 4 un Intel Xeon, Intel Pentium M procesoriem.
Šis kompilators ir pilnībā savietojams ar Microsoft Visual C++ 6.0 un Microsoft Visual Studio .NET izstrādes rīkiem, tas ir, to var iebūvēt attiecīgajās izstrādes vidēs. Turklāt šis kompilators ļauj izstrādāt 64 bitu lietojumprogrammas operētājsistēmām, kas darbojas ar Itanium/Itanium 2 procesoriem, izmantojot Microsoft Visual Studio 32 bitu Pentium procesorā, izmantojot 64 bitu Intel Fortran Compiler. Atkļūdojot kodu, šis kompilators ļauj izmantot atkļūdotāju, lai Microsoft platformas.TĪKLS.
Ja jums ir instalēts Compaq produkts, oriģinālā Intel Fortran Compiler 7.1 vietā var izmantot Visual Fortran 6.6, jo šie kompilatori ir saderīgi līmenī. avota kods.
Intel Fortran Compiler 7.1 for Windows ir pilnībā savietojams ar ISO Fortran 95 standartu un atbalsta tādu lietojumprogrammu izveidi un atkļūdošanu, kas satur kodu divās valodās: C un Fortran.
Kompilatori Linux platformai
Intel C++ kompilators 7.1 operētājsistēmai Linux
Vēl viens kompilators, kas tika izlaists gada sākumā, Intel C++ Compiler 7.1 for Linux, ļauj sasniegt augstu koda optimizācijas pakāpi Intel Itanium, Intel Itanium 2, Intel Pentium 4, Intel Pentium M procesoriem.Šis kompilators ir pilnībā saderīgs ar GNU C kompilatoru pie pirmkoda un objektu moduļiem, kas ļauj bez papildu izmaksām migrēt uz to lietojumprogrammas, kas izveidotas, izmantojot GNU C. Intel C++ kompilators atbalsta C++ ABI (papildinājums Linux kodolam, kas ļauj palaist zem Linux vadība apkopots kods citām platformām, piemēram, agrīnajām SCO operētājsistēmām, agrīnās versijas Sun Solaris utt.), kas nozīmē pilnīgu saderību ar gcc 3.2 kompilatoru binārā koda līmenī. Visbeidzot, izmantojot Intel C++ Compiler 7.1 for Linux, jūs pat varat pārkompilēt Linux kodolu, veicot dažas nelielas izmaiņas tā avota kodā.
Intel Fortran Compiler 7.1 operētājsistēmai Linux
Intel Fortran Compiler 7.1 for Linux ļauj izveidot optimizētu kodu procesoriem Intel Itanium, Intel Itanium 2, Intel Pentium 4, Intel Pentium M. Šis kompilators ir pilnībā savietojams ar Compaq Visual Fortran 6.6 kompilatoru avota koda līmenī, kas ļauj jums pārkompilēt lietojumprogrammas, izmantojot to, kas izveidotas, izmantojot Compaq Visual Fortran, tādējādi palielinot to veiktspēju.
Turklāt norādītais kompilators ir saderīgs ar tādām izstrādātāju izmantotajām utilītprogrammām kā emacs redaktors, gdb atkļūdotājs un make Application build utilīta.
Tāpat kā šī kompilatora Windows versija, arī Intel Fortran Compiler 7.1 for Linux ir pilnībā savietojams ar ISO Fortran 95 standartu un atbalsta tādu lietojumprogrammu izveidi un atkļūdošanu, kas satur kodu divās valodās: C un Fortran.
Īpaši jāuzsver, ka nozīmīgu ieguldījumu sarakstā iekļauto Intel kompilatoru izveidē sniedza speciālisti no Intel Krievijas programmatūras izstrādes centra Ņižņijnovgorodā. Vairāk Detalizēta informācija Informāciju par Intel kompilatoriem var atrast Intel tīmekļa vietnē www.intel.com/software/products/.
Šī raksta otrā daļa būs veltīta Intel kompilatoriem, kas veido lietojumprogrammas mobilajām ierīcēm.
Tu neesi vergs!
Slēgts izglītības kurss elites bērniem: "Patiesais pasaules iekārtojums."
http://noslave.org
Materiāls no Wikipedia - brīvās enciklopēdijas
Lua kļūda modulī: Wikidata 170. rindā: mēģinājums indeksēt lauku "wikibase" (nulles vērtība). | ||||||||||||||||||||||||||||||||||||
Tips | ||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Autors |
Lua kļūda modulī: Wikidata 170. rindā: mēģinājums indeksēt lauku "wikibase" (nulles vērtība). |
|||||||||||||||||||||||||||||||||||
Izstrādātājs | ||||||||||||||||||||||||||||||||||||
Izstrādātāji |
Lua kļūda modulī: Wikidata 170. rindā: mēģinājums indeksēt lauku "wikibase" (nulles vērtība). |
|||||||||||||||||||||||||||||||||||
Uzrakstīts uz |
Lua kļūda modulī: Wikidata 170. rindā: mēģinājums indeksēt lauku "wikibase" (nulles vērtība). |
|||||||||||||||||||||||||||||||||||
Interfeiss |
Lua kļūda modulī: Wikidata 170. rindā: mēģinājums indeksēt lauku "wikibase" (nulles vērtība). |
|||||||||||||||||||||||||||||||||||
operētājsistēma | ||||||||||||||||||||||||||||||||||||
Interfeisa valodas |
Lua kļūda modulī: Wikidata 170. rindā: mēģinājums indeksēt lauku "wikibase" (nulles vērtība). |
|||||||||||||||||||||||||||||||||||
Pirmais izdevums |
Lua kļūda modulī: Wikidata 170. rindā: mēģinājums indeksēt lauku "wikibase" (nulles vērtība). |
|||||||||||||||||||||||||||||||||||
Aparatūras platforma | ||||||||||||||||||||||||||||||||||||
Jaunākā versija | ||||||||||||||||||||||||||||||||||||
Atbrīvošanas kandidāts |
Lua kļūda modulī: Wikidata 170. rindā: mēģinājums indeksēt lauku "wikibase" (nulles vērtība). |
|||||||||||||||||||||||||||||||||||
Beta versija |
Lua kļūda modulī: Wikidata 170. rindā: mēģinājums indeksēt lauku "wikibase" (nulles vērtība). |
|||||||||||||||||||||||||||||||||||
Alfa versija |
Lua kļūda modulī: Wikidata 170. rindā: mēģinājums indeksēt lauku "wikibase" (nulles vērtība). |
|||||||||||||||||||||||||||||||||||
Testa versija |
Lua kļūda modulī: Wikidata 170. rindā: mēģinājums indeksēt lauku "wikibase" (nulles vērtība). |
|||||||||||||||||||||||||||||||||||
Lasāmi failu formāti |
Lua kļūda modulī: Wikidata 170. rindā: mēģinājums indeksēt lauku "wikibase" (nulles vērtība). |
|||||||||||||||||||||||||||||||||||
Ģenerētie failu formāti |
Lua kļūda modulī: Wikidata 170. rindā: mēģinājums indeksēt lauku "wikibase" (nulles vērtība). |
|||||||||||||||||||||||||||||||||||
Valsts |
Lua kļūda modulī: Wikidata 170. rindā: mēģinājums indeksēt lauku "wikibase" (nulles vērtība). |
|||||||||||||||||||||||||||||||||||
Licence |
Galvenās iezīmes:
Kompilators atbalsta OpenMP 3.0 standartu paralēlu programmu rakstīšanai. Ietver arī OpenMP modifikāciju ar nosaukumu Cluster OpenMP, ar kuru jūs varat palaist lietojumprogrammas, kas rakstītas saskaņā ar OpenMP klasteros, izmantojot MPI. Intel C++ Compiler izmanto priekšgalu (kompilatora daļu, kas parsē kompilēto programmu) no Edison Design Group. To pašu priekšgalu izmanto SGI MIPSpro, Comeau C++ un Portland Group kompilatori. Šis kompilators tiek plaši izmantots SPEC CPU etalonu apkopošanai. Ir 4 produktu sērijas no Intel, kas satur kompilatoru:
Kompilatora Linux versijas trūkumi ietver daļēju nesaderību ar C valodas GNU paplašinājumiem (to atbalsta GCC kompilators), kas var radīt problēmas dažu programmu kompilēšanas laikā.
Eksperimentālās iespējasTika publicētas šādas kompilatora eksperimentālās versijas:
Pamata karogi
Uzrakstiet atsauksmi par rakstu "Intel C++ kompilators"PiezīmesSkatīt arīSaites
Izvilkums, kas raksturo Intel C++ kompilatoruUn vēl, viņa atgriezās pēdējo reizi redzēt Balto Magu... Savu vīru un patiesāko draugu, kuru viņa nekad nevarēja aizmirst. Savā sirdī viņa viņam piedeva. Bet, par lielu nožēlu, viņa nevarēja viņam atnest Magdalēnas piedošanu... Tātad, kā redzi, Izidora, lielā kristiešu fabula par “piedošanu” ir tikai bērnišķīgi meli naivajiem ticīgajiem, lai viņi varētu viņiem ļaut. darīt jebkuru Ļaunumu, zinot, ka neatkarīgi no tā, ko viņi darītu, viņiem galu galā tiks piedots. Bet piedot var tikai to, kas patiesi ir piedošanas cienīgs. Cilvēkam ir jāsaprot, ka viņam ir jāatbild par jebkuru izdarīto Ļaunumu... Un nevis kāda noslēpumaina Dieva priekšā, bet gan paša priekšā, piespiežot sevi nežēlīgi ciest. Magdalēna nepiedeva Vladykam, lai gan viņa viņu ļoti cienīja un patiesi mīlēja. Tāpat kā viņa nespēja mums visiem piedot Radomira briesmīgo nāvi. Galu galā VIŅA saprata labāk nekā jebkurš cits - mēs būtu varējuši viņam palīdzēt, mēs būtu varējuši viņu izglābt no nežēlīgas nāves... Bet mēs to negribējām. Uzskatot Baltā Magusa vainu par pārāk nežēlīgu, viņa lika viņam dzīvot ar šo vainu, neaizmirstot to ne mirkli... Viņa negribēja viņam piešķirt vieglu piedošanu. Mēs viņu vairs nekad neredzējām. Tāpat kā viņi nekad nav redzējuši savus mazuļus. Caur vienu no sava tempļa bruņiniekiem - mūsu burvi - Magdalēna nodeva atbildi Vladikam uz viņa lūgumu atgriezties pie mums: "Saule nelec divreiz vienā dienā... Jūsu pasaules prieks (Radomir) nekad neatgriezīsies pie tevis, tāpat kā es neatgriezīšos pie tevis un es... Es atradu savu TICĪBU un savu PATIESĪBU, viņi ir DZĪVI, bet tavējie ir MIRUSI... Apraud savus dēlus - viņi tevi mīlēja. Es nekad tev nepiedošu viņu nāvi, kamēr būšu dzīvs. Un lai tava vaina paliek tev. Varbūt kādreiz viņa tev atnesīs Gaismu un Piedošanu... Bet ne no manis. Magusa Jāņa galva netika atvesta uz Meteoru tā paša iemesla dēļ - neviens no Tempļa bruņiniekiem negribēja atgriezties pie mums... Mēs viņus pazaudējām, tāpat kā ne reizi vien esam zaudējuši daudzus citus, kuri nevēlējās saprast un pieņemt mūsu upurus... Kas darīja tāpat kā jūs - viņi aizgāja, nosodot mūs.Man galva griezās!.. Kā izslāpis, remdējot savu mūžīgo izsalkumu pēc zināšanām, es kāri uzsūcu apbrīnojamās informācijas plūsmu, ko dāsni dāvāja Ziemeļi... Un vēlējos daudz vairāk!.. Gribēju zināt visu, lai beigas. Tā bija svaiga ūdens elpa tuksnesī, kuru apdedzis sāpes un nepatikšanas! Un es nevarēju saņemties ar to... – Man ir tūkstošiem jautājumu! Bet laika vairs neatliek... Ko man darīt, Ziemeļ?.. - Jautājiet, Izidora!.. Jautājiet, es mēģināšu tev atbildēt... – Saki, Sever, kāpēc man šķiet, ka šajā stāstā ir apvienoti divi dzīvesstāsti, savijušies ar līdzīgiem notikumiem, un tie tiek pasniegti kā viena cilvēka dzīve? Vai arī man nav taisnība? – Jums ir pilnīga taisnība, Isidora. Kā jau teicu iepriekš, “šīs pasaules spēki”, kas radīja viltus cilvēces vēsturi, Kristus patiesajai dzīvei “uzvilka” ebreju pravieša Jozuas svešo dzīvi, kurš dzīvoja pirms pusotra tūkstoša gadu ( no Ziemeļu stāsta laikiem). Un ne tikai viņš pats, bet arī viņa ģimene, viņa radinieki un draugi, viņa draugi un sekotāji. Galu galā tā bija pravieša Jozuas sieva, ebreju Marija, kurai bija māsa Marta un brālis Lācars, viņa mātes Marijas Jakobes māsa un citi, kas nekad nebija Radomira un Magdalēnas tuvumā. Tāpat kā viņiem blakus nebija citu "apustuļu" - Pāvila, Mateja, Pētera, Lūkas un pārējie... Tā bija pravieša Jozua ģimene, kas pirms pusotra tūkstoša gadu pārcēlās uz Provansu (ko tajos laikos sauca par Transalpu Galliju), uz Grieķijas pilsētu Massalia (mūsdienu Marseļa), jo Massalia tajā laikā bija “vārti” starp Eiropu un Āziju, un tas bija vienkāršākais veids visiem “vajātajiem”, lai izvairītos no vajāšanām un nepatikšanām.
|