LLVM Creator programmandi novam linguam Mojo . evolvit

Chris Lattner, conditor et princeps architectus LLVM et creator linguae programmationis Celeris, et Tim Davis, caput pristinum Google AI inceptis sicut Tensorflow et JAX, novam programmandi linguam Mojo induxit, quae faciliorem usum ad investigationes evolutionis et evolutionis componit. celeri prototyping cum potentia ad finem products summus perficientur formare. Prima per usum linguae Pythonis nota syntaxis, secunda per facultatem componendi machinas in codicem, machinas scientificas tutas et usum instrumentorum accelerationis ferrariae.

Exertum in usu evolutionis in campo machinarum discendi tenditur, sed pro proposito generali exhibetur lingua quae Pythonis facultates cum instrumentis programmandi systematis extendit et ad amplis muneribus aptum est. Exempli gratia, lingua in locis applicata est ut summus perficientur computando, MGE et transformatio. Interestinger notae Mojo est facultas denotandi indolem emoji "πŸ”₯" sicut extensionem imaginum codicis (exempli gratia "helloworld.πŸ”₯"), praeter extensionem textus ".mojo".

Nunc, lingua in scaena intensiva evolutionis est et solum online instrumenti ad probationem offertur. Coetus separatus ad currendum in systemata locali serius evulgandum promittitur, acceptis sententiis de operatione interactivarum ambitus interactivae. Fons codicis compilator, JIT et aliae explicationes ad propositum pertinentes aperiendae sunt, postquam architecturae internae perficitur (exemplar ad elaborandum opus prototypum post fores clausas simile est initium evolutionis LLVM, Clang et Celeris). Cum Mojo syntaxis in lingua Pythone innitatur et ratio generis prope C/C++ sit, in posterum disponunt instrumenta explicandi ad simpliciorem translationem consiliorum exsistentium scriptarum in C/C++ et Pythone ad Mojo, tum. ut develop incepta hybrida coniungendo codicem Pythonis et Mojo.

Proiectum destinatur ad involvere facultates ferrarias praesto systematum heterogeneorum in calculis faciendo. Exempli gratia, GPUs, apparatus specialissimus discendi acceleratores, et vector processus instructionis (SIMD) ad applicationes Mojo currere et computationes parallelisare possunt. Causae ad explicandum quoddam subsetulum linguae Pythonis potius quam CPythonis operis optimiizationis existentium includunt umbilicum compilationem, integrationem systematis facultatum programmandi, usumque architecturae internae diversae fundamentaliter quae codicem currere patitur in GPUs et variis. odio acceleratores. Tamen tincidunt Mojo intendunt compatible cum CPython quam maxime manere.

Mojo adhiberi potest tum in interpretatione modus utendi JIT, tum compilatio in documentorum exsecutabilium (AOT, ante tempus). Compilator in modernis technologiis optimizationem latae, caching compilationem ac distribuit, aedificavit. Fontes textus in lingua Mojo in medium codicem medium MLIR (Multi-Level Intermedium Repraesentationis), a LLVM inceptum evolvit et adiectis facultatibus ad optimizing processus notitiarum graph graphiae fluentis praebens. Compilator permittit te variis tergum utere, qui MLIR sustinent ad machinae codicem generandum.

Machinis ferramentis additis utendo ad calculos accelerandos sinit efficere ut perficiendi causa C/C++ in applicationibus intensivis calculis praestantior sit. Exempli gratia, cum applicationem Mandelbrot generare tentat, applicationem in lingua Mojo confectam in nube AWS (r7iz.metal-16xl) confectam esse 6 temporibus velocius evasit quam exsecutionem in C++ (0.03 sec. vs. 0.20 sec.), et etiam 35 millies velocius quam Python in applicatione cum vexillum CPython 3.10.9 (0.03 sec. vs. 1027 sec.) et 1500 velocius cum utens PYPY (0.03 sec. vs. 46.1 sec.). .

Cum perpendendis perficiendis in campo machinae solvendae difficultates discendi, AI acervus Modularis Conference Engine scriptus in lingua Mojo, ad solutionem in bibliotheca TensorFlow fundata comparata, III temporibus velocior fuit cum exemplar linguae in systemate componendo cum processus Intel, 3 temporibus velocius cum exsecutio commendationis generationis exemplar processit et 6.4 velocius cum exemplaribus operando ad informationes visuales processus. Cum programmatibus AMD utentibus, quaestus cum Mojo utendi erant 2.1, 3.2 et 5 temporibus, et cum processoribus ARM utentibus - 2.2, 5.3 et 7.5 temporibus, respective. Solutio PyTorch fundata post Mojo lacessit per 1.7, 1.4 et 1.1 temporibus in CPUs Intel, 1.5, 2.1 et 1.2 temporibus in AMD CPUs et 1.5, 4 et 4.3 temporibus in ARM CPUs.

LLVM Creator programmandi novam linguam Mojo . evolvit

Lingua stabilis typum et humilem gradum notarum scientificarum tutarum simile Rubiginis sustinet, ut referat vitam sequi et tesselatum mutuari. Praeter facilitates ad laborem tutum cum indicibus, lingua etiam lineamenta praebet ad laborem humilitatis graduum, exempli gratia, aditum ad memoriam dirigere in modo tuto utendi genus monstratorem, singulas SIMD instructiones vocans, vel extensiones ferrariae accessiones quales TensorCores et AMX .

LLVM Creator programmandi novam linguam Mojo . evolvit

Ad simpliciorem reddendam separationem classici et optimized Pythonis codicis pro functionibus cum definitionibus generis expressis pro omnibus variabilibus, proponitur ut keyword separatum "fn" pro "def". Similiter pro classibus, si in memoria scribendo (ut in C) notitias stabiliter colligere debes, "instruere" pro "genus" uti potes. Licet etiam modulos in linguis C/C ++ importare, exempli gratia, ad munus de bibliotheca math importare, denotare potes "ex "math.h" cos importare.

Source: opennet.ru