ഉള്ളടക്ക പട്ടിക[മറയ്ക്കുക][കാണിക്കുക]
വേഗമേറിയതും കാര്യക്ഷമവുമായ ആപ്പുകൾ നിർമ്മിക്കാൻ നിങ്ങൾ എപ്പോഴെങ്കിലും ആഗ്രഹിച്ചിട്ടുണ്ടോ, എന്നിട്ടും സ്റ്റാൻഡേർഡ് പ്രോഗ്രാമിംഗ് ഭാഷകൾക്ക് നിങ്ങളുടെ ആവശ്യകതകൾ നിറവേറ്റാൻ കഴിയില്ലെന്ന്?
അപ്പോഴാണ് മോജോ ലാംഗ്വേജ് വരുന്നത്.
വികസിപ്പിച്ചെടുത്ത ഒരു പുതിയ പ്രോഗ്രാമിംഗ് ഭാഷയാണ് മോജോ മൊഡ്യുളർ, AI ഇൻഫ്രാസ്ട്രക്ചറിൽ സ്പെഷ്യലൈസ് ചെയ്ത ഒരു കമ്പനി.
AI വികസനം ഉൾപ്പെടെ നിരവധി ഉപയോഗ കേസുകൾക്കായി വേഗത്തിലും കൂടുതൽ കരുത്തുറ്റ ആപ്പുകൾ നിർമ്മിക്കാൻ ഡവലപ്പർമാരെ പ്രാപ്തരാക്കുന്നതിനാണ് ഇത് പ്രത്യേകം രൂപകൽപ്പന ചെയ്തിരിക്കുന്നത്. ഈ പോസ്റ്റിൽ, നമ്മൾ എന്താണെന്ന് നോക്കാം മോജോ ഇത് എങ്ങനെ പ്രവർത്തിക്കുന്നു, നിങ്ങളുടെ അടുത്ത പ്രോജക്റ്റിൽ എന്തുകൊണ്ട് ഇത് ഉപയോഗിക്കണം.
മോജോയുടെ ഉത്ഭവം
പൈത്തണിന്റെ ഉപയോഗക്ഷമതയും സിയുടെ വേഗതയും കാര്യക്ഷമതയും സമന്വയിപ്പിച്ച ഒരു പ്രോഗ്രാമിംഗ് ഭാഷയുടെ ആവശ്യകത മോജോയുടെ സ്രഷ്ടാക്കൾ തിരിച്ചറിഞ്ഞു.
കൂടാതെ, സ്റ്റാൻഡേർഡ് ഹാർഡ്വെയർ വിവരണ ഭാഷകൾ പഠിക്കാതെ തന്നെ ഉയർന്ന പ്രകടനമുള്ള ആപ്പുകൾ നിർമ്മിക്കാൻ ഡെവലപ്പർമാരെ അനുവദിക്കുന്ന ഒരു ഭാഷ അവർ സ്ഥാപിച്ചു.
തൽഫലമായി, അവർ മോജോ സൃഷ്ടിച്ചു, ഇത് സി-ലെവൽ വേഗത നൽകുമ്പോൾ പൈത്തൺ ഇക്കോസിസ്റ്റവുമായി പൂർണ്ണമായും പൊരുത്തപ്പെടാൻ ഉദ്ദേശിച്ചുള്ളതാണ്.
മോഡുലാർ: മോജോ ഭാഷയ്ക്ക് പിന്നിലെ സംഘടന
അപ്പോൾ, ഈ ഭാവി ഭാഷയുടെ സ്രഷ്ടാക്കൾ ആരാണ്?
ഗൂഗിളിൽ കണ്ടുമുട്ടിയ ക്രിസ് ലാറ്റ്നറും ടിം ഡേവിസും ചേർന്ന് സൃഷ്ടിച്ച ലോകത്തിലെ മുൻനിര AI ഇൻഫ്രാസ്ട്രക്ചർ സ്റ്റാർട്ടപ്പാണ് മോഡുലാർ.
മാനവികത വർദ്ധിപ്പിക്കുന്നതിന് AI ഇൻഫ്രാസ്ട്രക്ചറിനെ പുനർവിചിന്തനം ചെയ്യുക എന്നതാണ് മോഡുലറിന്റെ ലക്ഷ്യവും ലക്ഷ്യവും. അവരുടെ സംസ്കാരവും തത്വങ്ങളും ക്ലയന്റുകളിലും ഉയർന്ന നിലവാരമുള്ള പ്രൊഡക്ഷൻ സോഫ്റ്റ്വെയറിലും അർത്ഥവത്തായ ഫലങ്ങൾ നൽകുന്നതിനും പ്രീമിയം നൽകുന്നു.
മോജോയുടെ ലക്ഷ്യങ്ങൾ
മെഷീൻ ലേണിംഗ് ആക്സിലറേറ്ററുകൾക്ക് സവിശേഷമായ ഒരു പ്രോഗ്രാമിംഗ് മോഡൽ നൽകുന്നതിനാണ് മോജോ രൂപകൽപ്പന ചെയ്തിരിക്കുന്നത്.
ഇന്നത്തെ CPU-കളിൽ ടെൻസറുകളും മറ്റ് AI ആക്സിലറേറ്ററുകളും ഉള്ളതിനാൽ മോജോ പൊതു-ഉദ്ദേശ്യ പ്രോഗ്രാമിംഗ് അനുവദിക്കണമെന്ന് മോഡുലാർ നിർണ്ണയിച്ചു. കൂടാതെ, മെഷീൻ ലേണിംഗിലും മറ്റ് മേഖലകളിലും പൈത്തൺ വ്യാപകമായി ഉപയോഗിക്കുന്നതിനാൽ, പൈത്തൺ ഇക്കോസിസ്റ്റത്തിൽ ചേരാൻ മോഡുലാർ തിരഞ്ഞെടുത്തു.
പൈത്തണിന്റെ ഉപയോഗം ഭാഷയുടെ രൂപകൽപ്പനയെ കൂടുതൽ സുഗമമാക്കി. വാക്യഘടനയുടെ ഭൂരിഭാഗവും ഇതിനകം നിർണ്ണയിച്ചതിനാൽ, കോർപ്പറേഷന് പകരം കമ്പൈലേഷൻ മെക്കാനിസം നിർമ്മിക്കുന്നതിലും പ്രത്യേക പ്രോഗ്രാമിംഗ് കഴിവുകൾ നൽകുന്നതിലും ശ്രദ്ധ കേന്ദ്രീകരിക്കാൻ കഴിയും.
പരിഗണിക്കേണ്ട പ്രധാന സവിശേഷതകൾ
പ്രോഗ്രാമബിലിറ്റി
പുരോഗമന തരങ്ങൾ
മോജോ ലാംഗ്വേജിന്റെ പുരോഗമന തരം സവിശേഷത, തരം വ്യാഖ്യാനങ്ങൾ ഉപയോഗിക്കാൻ ഡെവലപ്പർമാരെ പ്രാപ്തമാക്കുന്നു കാര്യക്ഷമത വർദ്ധിപ്പിക്കുക കൂടാതെ പിശക് പരിശോധനകളും.
കൂടുതൽ സമഗ്രമായ തരത്തിലുള്ള വിവരങ്ങൾ നൽകിക്കൊണ്ട്, കംപൈൽ സമയത്ത് തെറ്റുകൾ കണ്ടെത്തുകയും ബഗുകൾ ഇല്ലാതാക്കുകയും കാര്യക്ഷമത വർദ്ധിപ്പിക്കുകയും ചെയ്യുന്ന കൂടുതൽ ഫലപ്രദമായ കോഡ് ഡവലപ്പർമാർ രൂപകൽപ്പന ചെയ്തേക്കാം.
സീറോ കോസ്റ്റ് സംഗ്രഹങ്ങൾ
മോജോ ലാംഗ്വേജ് നൽകുന്ന സീറോ-കോസ്റ്റ് അബ്സ്ട്രാക്ഷനുകൾക്ക് നന്ദി, ഘടനകളിലേക്ക് ഡാറ്റ ഇൻലൈൻ-അലോക്കേറ്റ് ചെയ്യുന്നതിലൂടെ ഡവലപ്പർമാർക്ക് സംഭരണത്തിന്റെ നിയന്ത്രണം ഏറ്റെടുക്കാനാകും.
അധിക മെമ്മറി അലോക്കേഷനുകളുടെ ആവശ്യകത ഇല്ലാതാക്കുന്നതിലൂടെ, ഈ സവിശേഷത കോഡ് കാര്യക്ഷമത മെച്ചപ്പെടുത്തുകയും ബോയിലർ പ്ലേറ്റ് കോഡിന്റെ അളവ് കുറയ്ക്കുകയും ചെയ്യുന്നു.
സംയോജിത ഭാഷ ഓട്ടോ-ട്യൂണിംഗ്
മോജോ ലാംഗ്വേജിലെ ഭാഷാ സംയോജിത ഓട്ടോ-ട്യൂണിംഗ് പ്രവർത്തനം, ടാർഗെറ്റ് ഹാർഡ്വെയറിൽ നിന്ന് പ്രയോജനം നേടുന്നതിന് പാരാമീറ്ററുകളുടെ അനുയോജ്യമായ മൂല്യങ്ങൾ സ്വയമേവ നിർണ്ണയിക്കാൻ ഡെവലപ്പർമാരെ പ്രാപ്തമാക്കുന്നു.
ഈ പ്രവർത്തനം ഉപയോഗിച്ച്, ഓരോ ഹാർഡ്വെയർ കോമ്പിനേഷനും സ്വമേധയാ ക്രമീകരിക്കാതെ കോഡ് ഒപ്റ്റിമൈസ് ചെയ്യുന്നത് ലളിതമാണ്.
എംഎൽഐആർ (മൾട്ടി-ലെവൽ ഇന്റർമീഡിയറ്റ് റെപ്രസന്റേഷൻ), സമാന്തരമായ വൈവിധ്യമാർന്ന റൺടൈം, ദ്രുത നിർമ്മാണ സമയങ്ങൾ എന്നിവയുടെ മുഴുവൻ ശക്തിയും നൽകുന്നതിനാൽ AI വികസനത്തിന് മോജോ ലാംഗ്വേജ് വഴക്കമുള്ളതും ഫലപ്രദവുമായ ഒരു ഉപകരണമാണ്.
സമാന്തരവൽക്കരണം
മോജോ MLIR ഉപയോഗിക്കുന്നു, ഇത് സമാന്തരവൽക്കരണത്തിനായി AI-യ്ക്കായി വെക്ടറുകൾ, ത്രെഡുകൾ, ഹാർഡ്വെയർ യൂണിറ്റുകൾ എന്നിവ ഉപയോഗിക്കാൻ പ്രോഗ്രാമർമാരെ അനുവദിക്കുന്നു. പൈത്തണിന്റെ സിംഗിൾ-ത്രെഡ് എക്സിക്യൂഷനിൽ നിന്ന് വ്യത്യസ്തമായി നിരവധി കോറുകളിൽ സമാന്തര പ്രോസസ്സിംഗിനെ മോജോ പിന്തുണയ്ക്കുന്നു.
പൈത്തണിനേക്കാൾ 35,000x വേഗതയുള്ള മോജോ, വേഗതയുടെ കാര്യത്തിൽ മറ്റ് ഭാഷകളെ വെല്ലുന്നു.
ഇന്ററോപ്പറബിളിറ്റി
മുഴുവൻ പൈത്തൺ ഇക്കോസിസ്റ്റവുമായുള്ള പരസ്പര പ്രവർത്തനക്ഷമത മോജോയുടെ സവിശേഷമായ നേട്ടങ്ങളിലൊന്നാണ്. നമ്പി, മാറ്റ്പ്ലോട്ട്ലിബ് എന്നിവ പോലുള്ള ഏതെങ്കിലും അനിയന്ത്രിതമായ ലൈബ്രറികളുമായും നിങ്ങളുടെ ബെസ്പോക്ക് കോഡുമായും നിങ്ങൾക്ക് മോജോ സംയോജിപ്പിക്കാമെന്ന് ഇത് സൂചിപ്പിക്കുന്നു.
ഉദാഹരണത്തിന്, പൈത്തൺ ലൈബ്രറി Matplotlib ഉപയോഗിച്ച് നിങ്ങളുടെ മോജോ കോഡിൽ ഡാറ്റ ദൃശ്യവൽക്കരിക്കാം.
എക്സ്റ്റെൻസിബിലിറ്റി
മോജോ തികച്ചും വഴക്കമുള്ളതാണ്, മോഡലുകളിലേക്ക് പ്രീ-പ്രോസസ്സിംഗ് ഘട്ടങ്ങൾ ചേർക്കാനോ പുതിയവയ്ക്കായി നിലവിലുള്ള സ്റ്റെപ്പുകൾ സ്വാപ്പ് ചെയ്യാനോ ഉപയോക്താക്കളെ അനുവദിക്കുന്നു.
അവരുടെ മോഡലുകളും മോഡുലാർ സ്റ്റാക്കും മെച്ചപ്പെടുത്തുന്നതിന്, ഡവലപ്പർമാർക്ക് കേർണൽ ഫ്യൂഷൻ, ഗ്രാഫ് റീറൈറ്റിംഗ്, ഷേപ്പ് ഫംഗ്ഷനുകൾ, മറ്റ് സാങ്കേതിക വിദ്യകൾ എന്നിവ ഉപയോഗിക്കാം.
എന്തുകൊണ്ടാണ് നിങ്ങൾ ഇത് പൈത്തണിന് പകരം തിരഞ്ഞെടുക്കുന്നത്?
പൈത്തൺ ഒരു ജനപ്രിയ AI വികസന ഭാഷയാണ്, കാരണം അതിന്റെ വഴക്കവും ഉയർന്ന പ്രകടനമുള്ള സമാഹരിച്ച ലൈബ്രറികളും. എന്നിരുന്നാലും, ഇത് C++ പോലുള്ള ഭാഷകളേക്കാൾ വളരെ മന്ദഗതിയിലാണ്.
അതിനാൽ, പ്രകടന-നിർണ്ണായക മേഖലകളിൽ പൈത്തൺ ഉപയോഗിക്കുന്നത് ഒഴിവാക്കുന്നതിന് വേഗതയേറിയ ഭാഷകളിൽ പൈത്തൺ റാപ്പറുകൾ ഉപയോഗിക്കാൻ പ്രോഗ്രാമർമാർ പഠിക്കുന്നു.
ഇത് ദ്വിഭാഷാ പ്രശ്നത്തിലേക്ക് നയിക്കുന്നു, അതിൽ മോഡലുകൾ പൈത്തണിൽ നിന്ന് വേഗത്തിലുള്ള നടപ്പാക്കലിലേക്ക് പരിവർത്തനം ചെയ്യണം, പൈത്തണിന്റെ എല്ലാ കഴിവുകളെയും പിന്തുണയ്ക്കാത്ത ONNX അല്ലെങ്കിൽ ടോർച്ച് സ്ക്രിപ്റ്റ്. പൈത്തണിന് പ്രകടന പ്രശ്നങ്ങളും നല്ല സമാന്തര പ്രോസസ്സിംഗിന്റെ അഭാവവും ഉണ്ട്.
പരിചയസമ്പന്നരായ പ്രോഗ്രാമർമാർക്കുപോലും ദ്വിഭാഷാ ധർമ്മസങ്കടം മൂലം പ്രകടന പ്രശ്നങ്ങൾ പഠിക്കാനും ഡീബഗ് ചെയ്യാനും പരിഹരിക്കാനും ബുദ്ധിമുട്ടാണ്.
ഭാഷയുടെ ഘടനാപരമായ രീതി കാരണം പൈത്തണിന് ചെയ്യാൻ കഴിയുന്ന കാര്യങ്ങളിൽ അടിസ്ഥാന നിയന്ത്രണങ്ങളും ഉണ്ട്. അടിസ്ഥാന ഘടകങ്ങൾ ഉപയോഗിച്ചുള്ള അൽഗോരിതങ്ങളുടെ യഥാർത്ഥ ലോകത്തിൽ നടപ്പിലാക്കുന്നത് എളുപ്പമാണെന്ന് തോന്നുമെങ്കിലും, ഇത് വളരെ ബുദ്ധിമുട്ടുള്ളതും വേഗത്തിലുള്ള ഭാഷയുടെ ഉപയോഗം ആവശ്യമായി വരുന്നതുമാണ്.
എങ്ങനെ തുടങ്ങാം?
ആരംഭിക്കുന്നതിന് നിങ്ങൾക്ക് അവരുടെ കളിസ്ഥലത്ത് ഇപ്പോൾ മോജോ ഭാഷ ഉപയോഗിച്ച് തുടങ്ങാം. JupyterHub-അധിഷ്ഠിതമായ കളിസ്ഥലം, മോജോ ഇപ്പോഴും പുരോഗതിയിലാണെങ്കിലും, നിങ്ങളുടെ സ്വന്തം മോജോ കോഡ് സൃഷ്ടിക്കുന്നതിനുള്ള പാഠങ്ങളും അവസരവും നൽകുന്നു.
കളിസ്ഥലം ആക്സസ് ചെയ്യുന്നതിനായി നിങ്ങൾക്ക് അവരുടെ വെബ്സൈറ്റിൽ പ്രവേശനത്തിനായി രജിസ്റ്റർ ചെയ്യാം.
അതിന്റെ പ്രകടന ലക്ഷ്യങ്ങൾ കൈവരിക്കുന്നതിന്, സംയോജിത കാഷിംഗ്, മൾട്ടിത്രെഡിംഗ്, ക്ലൗഡ് ഡിസ്ട്രിബ്യൂഷൻ സാങ്കേതികവിദ്യകൾ എന്നിവയുള്ള അടുത്ത തലമുറ കംപൈലർ സാങ്കേതികവിദ്യകൾ മോജോ ഉപയോഗിക്കുന്നു.
ഇത് സിസ്റ്റം പ്രോഗ്രാമിംഗിലേക്ക് അധിക പ്രാകൃതങ്ങൾ ചേർക്കുന്നു, കാലക്രമേണ ഒരു പൈത്തൺ സൂപ്പർസെറ്റ് ആകാൻ ആഗ്രഹിക്കുന്നു. മോജോ ഉപയോഗിച്ച് കോഡിംഗ് ആരംഭിക്കുന്നതിന്, പൈത്തൺ ചെയ്യുന്ന അതേ രീതിയിൽ ടെർമിനലിൽ നിന്ന് ഒരു മോജോ പ്രോഗ്രാം പ്രവർത്തിപ്പിക്കാൻ മോജോ കംപൈലർ ഉപയോഗിക്കുക.
ഭാഷ നിലവിൽ വികസിച്ചുകൊണ്ടിരിക്കുന്നു, കൂടാതെ സിസ്റ്റം പ്രോഗ്രാമിംഗിൽ അനുഭവപരിചയമുള്ള ഡെവലപ്പർമാരെ ലക്ഷ്യമിടുന്നു.
അവസാനിപ്പിക്കുക
മോജോയെ പൈത്തൺ സൂപ്പർസെറ്റായി കണക്കാക്കുന്നു. കൂടാതെ, സി++, റസ്റ്റ് എന്നിവയുടെ പ്രകടനവുമായി പൈത്തണിന്റെ ലാളിത്യം സംയോജിപ്പിച്ച് പ്രോഗ്രാമിംഗിൽ വിപ്ലവം സൃഷ്ടിക്കാൻ ഇതിന് കഴിവുണ്ട്.
അത് പൂർണ്ണമായി പ്രയോജനപ്പെടുത്താം പൈത്തൺ ലൈബ്രറി C, C++, Rust, CUDA എന്നിവയുടെ ആവശ്യമില്ലാതെ തന്നെ ഉയർന്ന പ്രവർത്തനക്ഷമതയുള്ള ലൈബ്രറികൾ സൃഷ്ടിക്കാൻ ഡവലപ്പർമാരെ അനുവദിക്കുന്ന ആവാസവ്യവസ്ഥ.
ഓട്ടോട്യൂണിംഗ്, കംപൈൽ-ടൈം മെറ്റാ-പ്രോഗ്രാമിംഗ് സവിശേഷതകൾ എന്നിവയ്ക്ക് നന്ദി, പോർട്ടബിൾ കോഡിന്റെ നിർമ്മാണം ഇത് പ്രാപ്തമാക്കുന്നു.
ഇത് ഇപ്പോഴും പുരോഗമിച്ചുകൊണ്ടിരിക്കുന്ന ഒരു ജോലിയാണെങ്കിലും, ഒരു മികച്ച പ്രോഗ്രാമിംഗ് ഉപകരണമായി മാറാനും പ്രോഗ്രാമിംഗ് വ്യവസായത്തെ പരിവർത്തനം ചെയ്യാനും ഇതിന് കഴിവുണ്ട്. അതിനാൽ, മോഡുലാറിൽ നിന്നുള്ള ഭാവി സംഭവവികാസങ്ങൾക്കായി നമ്മൾ കാത്തിരിക്കണം!
ക്രിസ് സാന്റോസ്
അടിസ്ഥാനം മുതൽ ഇന്റർമീഡിയറ്റ് വരെയുള്ള അറിവുള്ള ഒരാൾക്ക് ഈ പുതിയ ഭാഷയിൽ പഠനം ആരംഭിക്കാൻ കഴിയുമെന്ന് നിങ്ങൾ കരുതുന്നുണ്ടോ? അതോ Javascript അല്ലെങ്കിൽ Python പോലെയുള്ള ഒരു അടിസ്ഥാന ഭാഷ ആദ്യം പഠിക്കാൻ നിങ്ങൾ ഉപദേശിക്കുന്നുണ്ടോ?
ഇൽകെ കാൻഡൻ ബെങ്കി
ഹലോ ക്രിസ്, പ്രതികരണം വൈകിയതിൽ ഖേദിക്കുന്നു! മോജോയിൽ ആരംഭിക്കുന്നതിന് മുമ്പ് പൈത്തണിനെക്കുറിച്ച് പ്രാഥമിക ധാരണ/അനുഭവം ഉണ്ടായിരിക്കുന്നത് സഹായകരമാകുമെന്ന് ഞാൻ വിശ്വസിക്കുന്നു.