Mojo, LLVM चे निर्माते ख्रिस लॅटनर यांनी तयार केलेली नवीन प्रोग्रामिंग भाषा

मोजो लँग

मोजो ही एक नवीन प्रोग्रामिंग भाषा आहे जी मशीन लर्निंग डेव्हलपमेंटसाठी उत्तम कामगिरीचे आश्वासन देते

काही दिवसांपूर्वी बातमी आली होती ख्रिस लॅटनर, LLVM चे संस्थापक आणि मुख्य आर्किटेक्ट आणि टिम डेव्हिस, Google मधील AI प्रकल्पांचे माजी प्रमुख "मोजो" ही ​​नवीन प्रोग्रामिंग भाषा जारी केली. Python वर आधारित, जे Python अंमलबजावणी आणि कार्यप्रदर्शन समस्यांचे निराकरण करते.

मोजो असा उल्लेख आहे que R&D साठी वापरण्यास सुलभता एकत्र करते आणि उच्च कार्यक्षमता अंतिम उत्पादनांसाठी पर्याप्ततेसह जलद प्रोटोटाइपिंग. पायथन भाषेच्या परिचित सिंटॅक्सच्या वापराद्वारे पहिले साध्य केले जाते आणि नंतरचे मशीन कोडमध्ये संकलित करण्याची क्षमता, सुरक्षित मेमरी व्यवस्थापनासाठी यंत्रणा आणि गणनांच्या हार्डवेअर प्रवेगासाठी साधनांचा वापर यामुळे प्राप्त होते.

मोजो बद्दल

ही नवीन प्रोग्रामिंग भाषा मशीन शिक्षण विकासासाठी वापरावर लक्ष केंद्रित करते, पण होयe एक सामान्य उद्देश भाषा म्हणून सादर केले जे सिस्टम प्रोग्रामिंगसह पायथन भाषेची क्षमता वाढवते आणि कार्यांच्या विस्तृत श्रेणीसाठी योग्य आहे.

उदाहरणार्थ, भाषा उच्च-कार्यक्षमता संगणन, डेटा प्रोसेसिंग आणि डेटा ट्रान्सफॉर्मेशन यासारख्या क्षेत्रांसाठी लागू आहे. Mojo चे एक मनोरंजक वैशिष्ट्य म्हणजे कोड फाइल्ससाठी विस्तार म्हणून “🔥” इमोजी चिन्ह निर्दिष्ट करण्याची क्षमता.

हा प्रकल्प हार्डवेअर संसाधनांचा समावेश करण्यासाठी डिझाइन केला आहे गणनेमध्ये सिस्टीममध्ये उपलब्ध सिस्टीमची. उदाहरणार्थ, GPUs, विशेष मशीन लर्निंग प्रवेगक, आणि वेक्टर प्रोसेसिंग सूचना (SIMDs) Mojo ऍप्लिकेशन्स चालवण्यासाठी आणि गणनेला समांतर करण्यासाठी वापरले जाऊ शकतात.

विद्यमान CPython ऑप्टिमायझेशन कार्यात सामील होण्याऐवजी, Python भाषेचा वेगळा उपसंच विकसित करण्याचे कारण असे नमूद केले आहे:

एक बिल्ड दृष्टीकोन, सिस्टमच्या प्रोग्रामिंग क्षमतांचे एकत्रीकरण आणि मूलभूतपणे भिन्न अंतर्गत आर्किटेक्चरचा वापर जे GPU आणि विविध हार्डवेअर प्रवेगकांवर कोड कार्यान्वित करण्यास अनुमती देते. त्याच वेळी, मोजो डेव्हलपर शक्य तितक्या CPython सपोर्टला चिकटून राहण्याचा विचार करतात.

मोजोचा वापर JIT इंटरप्रिटेशन मोडमध्ये आणि एक्झिक्युटेबल फाइल्समध्ये संकलित करण्यासाठी केला जाऊ शकतो (AOT, वेळेच्या आधी). कंपाइलरमध्ये स्व-ऑप्टिमायझेशन, कॅशिंग आणि वितरित संकलनासाठी अंगभूत आधुनिक तंत्रज्ञान आहे.

कोड मोजो भाषेतील स्त्रोत कोड निम्न-स्तरीय इंटरमीडिएट कोडमध्ये रूपांतरित केले जातात MLIR (मल्टी-लेव्हल इंटरमीडिएट रिप्रेझेंटेशन), LLVM प्रकल्पाद्वारे विकसित केले गेले आहे आणि डेटा प्रवाह आलेखांच्या प्रक्रियेस अनुकूल करण्यासाठी अतिरिक्त कार्ये प्रदान करते.

गणनेचा वेग वाढवण्यासाठी अतिरिक्त हार्डवेअर यंत्रणेचा वापर तुम्हाला कार्यप्रदर्शन साध्य करण्यास अनुमती देतो, जी गहन गणनेसह, C/C++ अनुप्रयोगांना मागे टाकते.

ख्रिस लॅटनर हे अनेक प्रकल्प तयार करण्यासाठी जबाबदार आहेत ज्यावर आज आपण सर्व अवलंबून आहोत, जरी आपण त्याने तयार केलेल्या प्रत्येक गोष्टीबद्दल ऐकले नसले तरीही! त्याच्या पीएचडी थीसिसचा एक भाग म्हणून, त्याने LLVM च्या विकासास सुरुवात केली, ज्याने कंपाइलर्स तयार करण्याच्या पद्धतीमध्ये मूलभूतपणे बदल केला आणि आज जगातील सर्वात मोठ्या प्रमाणावर वापरल्या जाणार्‍या अनेक भाषिक परिसंस्थांचा आधार बनला आहे.

त्यानंतर त्यांनी क्लॅंग, एक C आणि C++ कंपायलर रिलीज केला जो LLVM च्या वर बसला आहे आणि जगातील बर्‍याच शीर्ष सॉफ्टवेअर डेव्हलपर्सद्वारे वापरला जातो (Google च्या कार्यप्रदर्शन-गंभीर कोडसाठी पाठीचा कणा प्रदान करण्यासह). 

मशीन लर्निंग ट्रबलशूटिंगच्या क्षेत्रातील कामगिरीचे मूल्यमापन करताना, मोजो भाषेत लिहिलेला मॉड्युलर इन्फरन्स इंजिन एआय स्टॅक, टेन्सरफ्लो लायब्ररीवर आधारित सोल्यूशनच्या तुलनेत, इंटेल प्रोसेसर असलेल्या सिस्टमवर 3 पट वेगवान असल्याचे आढळले.

तथापि, ख्रिसने पाहिले की C आणि C++ LLVM च्या सामर्थ्याचा पुरेपूर फायदा घेत नाहीत, म्हणून Apple मध्ये काम करत असताना त्याने "Swift" नावाची एक नवीन भाषा डिझाइन केली, ज्याचे वर्णन तो "LLVM साठी सिंटॅक्स शुगर" असे करतो. 

हे उल्लेखनीय आहे भाषा स्थिर टायपिंग आणि सुरक्षित निम्न-स्तरीय मेमरी वैशिष्ट्यांचे समर्थन करते जे रस्ट वैशिष्ट्यांची आठवण करून देतात जसे की संदर्भ जीवन ट्रॅकिंग आणि व्हेरिएबल कर्ज घेणे (कर्ज तपासक).

पॉइंटर्ससह सुरक्षित ऑपरेशनसाठी साधनांव्यतिरिक्त, भाषा निम्न-स्तरीय कामासाठी वैशिष्ट्ये देखील प्रदान करते, उदाहरणार्थ, पॉइंटर प्रकार वापरून असुरक्षित मोडमध्ये मेमरीमध्ये थेट प्रवेश करणे, वैयक्तिक SIMD सूचनांवर कॉल करणे किंवा TensorCores आणि AMX सारख्या हार्डवेअर विस्तारांमध्ये प्रवेश करणे शक्य आहे.

सध्या, भाषेचा सखोल विकास होत आहे आणि फक्त इंटरफेस ऑफर केला जातो प्रयत्न करण्यासाठी ऑनलाइन. परस्परसंवादी वेब वातावरणाच्या कामावर अभिप्राय मिळाल्यानंतर, स्थानिक प्रणालींवर चालण्यासाठी स्वतंत्र बिल्ड जारी करण्याचे भविष्यातील आश्वासने आहेत.

कंपायलर, JIT आणि इतर प्रकल्प-संबंधित विकासाचा ओपन सोर्स कोड अंतर्गत आर्किटेक्चर डिझाइन पूर्ण झाल्यानंतर नियोजित केला जातो (बंद-दरवाजा कार्यरत प्रोटोटाइपचे विकास मॉडेल LLVM, क्लॅंग आणि स्विफ्टच्या विकासाच्या सुरुवातीच्या टप्प्यासारखे असते).

मोजोची वाक्यरचना पायथॉनवर आधारित असल्याने आणि टाइप सिस्टीम C/C++ च्या जवळ असल्याने, C/C++ आणि Python मध्ये लिहिलेल्या विद्यमान प्रकल्पांचे Mojo मध्ये भाषांतर करणे सोपे करण्यासाठी भविष्यात साधनांचा संच विकसित करण्याची योजना आहे. Python आणि Mojo कोड एकत्र करणारे हायब्रिड प्रकल्प विकसित करण्यासाठी.

शेवटी, जर तुम्हाला त्याबद्दल अधिक जाणून घेण्यात स्वारस्य असेल तर तुम्ही तपशीलांचा सल्ला घेऊ शकता पुढील लिंकवर


आपली टिप्पणी द्या

आपला ई-मेल पत्ता प्रकाशित केला जाणार नाही. आवश्यक फील्ड चिन्हांकित केले आहेत *

*

*

  1. डेटासाठी जबाबदार: AB इंटरनेट नेटवर्क 2008 SL
  2. डेटाचा उद्देशः नियंत्रण स्पॅम, टिप्पणी व्यवस्थापन.
  3. कायदे: आपली संमती
  4. डेटा संप्रेषण: कायदेशीर बंधन वगळता डेटा तृतीय पक्षास कळविला जाणार नाही.
  5. डेटा संग्रहण: ओकेन्टस नेटवर्क (EU) द्वारा होस्ट केलेला डेटाबेस
  6. अधिकारः कोणत्याही वेळी आपण आपली माहिती मर्यादित, पुनर्प्राप्त आणि हटवू शकता.

  1.   jaime म्हणाले

    केर्न हे मनोरंजक आहे…. (उच्चार नाही)