ക്ലെപ്സിദ്ര-ലോഗോ

Klepsydra ROS2 മൾട്ടി കോർ റിംഗ് ബഫർ എക്സിക്യൂട്ടർ

Klepsydra-ROS2-Multi-Core-Ring-Buffer-Executor-product-image

ഉൽപ്പന്ന വിവരം

സ്പെസിഫിക്കേഷനുകൾ

  • ഭാരം കുറഞ്ഞതും മോഡുലാർ ആയതും ഏറ്റവും കൂടുതൽ ഉപയോഗിക്കുന്ന ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങളുമായി പൊരുത്തപ്പെടുന്നതും
  • CPU ഉപഭോഗത്തിൽ 2% വരെ കുറവ് വരുത്തിക്കൊണ്ട് 10 മടങ്ങ് കൂടുതൽ ഡാറ്റ പ്രോസസ്സ് ചെയ്യാൻ കഴിവുള്ള ROS50 എക്സിക്യൂട്ടർ പ്ലഗിൻ
  • ഉയർന്ന സമാന്തരവൽക്കരണത്തിനും വർദ്ധിച്ച പ്രോസസ്സിംഗ് ഡാറ്റ നിരക്കിനും GPU ഉപയോഗത്തിനുമുള്ള GPU (ഗ്രാഫിക് പ്രോസസ്സിംഗ് യൂണിറ്റ്)
  • ക്ലെപ്‌സിദ്ര AI
  • ക്ലെപ്സിദ്ര എസ്ഡികെ
  • ക്ലെപ്സിദ്ര ജിപിയു
  • സ്ട്രീമിംഗ് കഴിവ്
  • Klepsydra ROS2 എക്സിക്യൂട്ടർ പ്ലഗിൻ ലോകമെമ്പാടുമുള്ള ആപ്ലിക്കേഷൻ

ഉൽപ്പന്ന ഉപയോഗ നിർദ്ദേശങ്ങൾ

  1. സന്ദർഭം: സമാന്തര പ്രോസസ്സിംഗ്
    സിപിയു ഉപയോഗം, ഡാറ്റ വോളിയം, പവർ ആവശ്യകതകൾ എന്നിവ ആശങ്കാജനകമായ ബഹിരാകാശ ആപ്ലിക്കേഷനുകളിലെ ഓൺ-ബോർഡ് പ്രോസസ്സിംഗുമായി ബന്ധപ്പെട്ട വെല്ലുവിളികളെ അഭിമുഖീകരിക്കുന്നതിനാണ് ഉൽപ്പന്നം രൂപകൽപ്പന ചെയ്തിരിക്കുന്നത്. മീഡിയം ഡാറ്റ വോള്യങ്ങൾ കാര്യക്ഷമമായി കൈകാര്യം ചെയ്യുന്നതിലൂടെ ആധുനിക ഹാർഡ്‌വെയറിനും പഴയ സോഫ്റ്റ്‌വെയറിനുമുള്ള ഒരു പരിഹാരം ഇത് വാഗ്ദാനം ചെയ്യുന്നു.
  2. താരതമ്യം ചെയ്യുക, സ്വാപ്പ് ചെയ്യുക
    സമന്വയം നേടുന്നതിന് മൾട്ടിത്രെഡിംഗിൽ ഉപയോഗിക്കുന്ന ഒരു അൽഗോരിതം ആണ് "താരതമ്യപ്പെടുത്തുക, സ്വാപ്പ് ചെയ്യുക". ഇത് ഒരു മെമ്മറി ലൊക്കേഷൻ്റെ ഉള്ളടക്കത്തെ തന്നിരിക്കുന്ന മൂല്യവുമായി താരതമ്യം ചെയ്യുന്നു, അവ സമാനമാണെങ്കിൽ മാത്രം, ആ മെമ്മറി ലൊക്കേഷൻ്റെ ഉള്ളടക്കത്തെ ഒരു പുതിയ മൂല്യത്തിലേക്ക് പരിഷ്‌ക്കരിക്കുന്നു. ഈ പ്രവർത്തനം ഒരു ആറ്റോമിക് ഓപ്പറേഷൻ ആയി നടത്തുന്നു. ഉൽപ്പന്നം അതിൻ്റെ പ്രവർത്തനത്തിൻ്റെ ഭാഗമായി ഈ അൽഗോരിതം നടപ്പിലാക്കുന്നു.

ലോക്ക്-ഫ്രീ പ്രോഗ്രാമിംഗിൻ്റെ ഗുണവും ദോഷവും
ഉൽപ്പന്നം ലോക്ക്-ഫ്രീ പ്രോഗ്രാമിംഗ് ടെക്നിക്കുകൾ ഉപയോഗിക്കുന്നു, അവയ്ക്ക് അഡ്വാൻ ഉണ്ട്tagഎസും വിസമ്മതിക്കുന്നുtages

  • പ്രോസ്:
    • CPU ഉപയോഗം കുറച്ചു
    • ഡാറ്റ വോളിയം കാര്യക്ഷമമായി കൈകാര്യം ചെയ്യുന്നു
  • ദോഷങ്ങൾ:
    • നടപ്പിലാക്കുന്നതിലെ സങ്കീർണ്ണത
    • അടിസ്ഥാന ഹാർഡ്‌വെയറിൽ നിന്നുള്ള പിന്തുണ ആവശ്യമാണ് (ഏറ്റവും ആധുനിക ഹാർഡ്‌വെയറുകൾ ലോക്ക്-ഫ്രീ പ്രോഗ്രാമിംഗിനെ പിന്തുണയ്ക്കുന്നു)

ROS2 എക്സിക്യൂട്ടർ
സബ്‌സ്‌ക്രിപ്‌ഷനുകൾ, സന്ദേശങ്ങൾ, സേവനങ്ങൾ, ടൈമറുകൾ, നോഡുകൾ എന്നിവയുടെ കോൾബാക്കുകൾ മാനേജുചെയ്യുന്നതിലൂടെ ROS2 ആപ്ലിക്കേഷൻ ഷെഡ്യൂൾ ചെയ്യുന്ന ഒരു ROS2 എക്‌സിക്യൂട്ടർ ഉൽപ്പന്നത്തിൽ ഉൾപ്പെടുന്നു. ഇത് അന്തർലീനമായ മിഡിൽവെയർ ഡിഡിഎസ് ക്യൂകളിൽ നിന്നുള്ള സന്ദേശങ്ങൾ ഉപയോഗിക്കുകയും ത്രെഡുകളിലൊന്നിലേക്ക് നിർവ്വഹിക്കുന്നതിനായി അവ അയയ്ക്കുകയും ചെയ്യുന്നു. കോൾബാക്കുകൾ തുടർച്ചയായി അല്ലെങ്കിൽ സമാന്തരമായി എക്സിക്യൂട്ട് ചെയ്യുന്നതിനായി എക്സിക്യൂട്ടർ കോൺഫിഗർ ചെയ്യാവുന്നതാണ്.

അത്യാധുനിക ROS2 എക്സിക്യൂട്ടർമാർ
വ്യത്യസ്‌ത നിർവ്വഹണ തന്ത്രങ്ങൾ നൽകുന്ന അത്യാധുനിക ROS2 എക്‌സിക്യൂട്ടറുകൾ ഉൽപ്പന്നത്തിൽ ഉൾപ്പെടുന്നു

  • സിംഗിൾ ത്രെഡഡ് എക്സിക്യൂട്ടർ: നോഡുകൾ, സബ്‌സ്‌ക്രിപ്‌ഷനുകൾ, സേവനങ്ങൾ മുതലായവ അപ്‌ഡേറ്റ് ചെയ്യുന്നതിന് കോൾബാക്കുകൾ തുടർച്ചയായി നടപ്പിലാക്കുകയും ആനുകാലികമായി ആപ്ലിക്കേഷൻ ഘടന സ്കാൻ ചെയ്യുകയും ചെയ്യുന്നു.
  • മൾട്ടി-ത്രെഡഡ് എക്സിക്യൂട്ടർ: സമാന്തരമായി കോൾബാക്കുകൾ നിർവ്വഹിക്കുകയും പ്രശ്‌നത്തിൻ്റെ വിവരണം അപ്‌ഡേറ്റ് ചെയ്യുന്നതിന് ആനുകാലികമായി ആപ്ലിക്കേഷൻ ഘടന സ്കാൻ ചെയ്യുകയും ചെയ്യുന്നു.

സ്ട്രീമിംഗ് എക്സിക്യൂട്ടർ
ഉൽപ്പന്നം ഒരു സ്ട്രീമിംഗ് എക്സിക്യൂട്ടറെ അവതരിപ്പിക്കുന്നു, അത് ത്രെഡ് ചെയ്ത എക്സിക്യൂട്ടറിൽ നിന്ന് വ്യത്യസ്തമാണ്

  • ഇത് ഓരോ ആവർത്തനത്തിനും എക്സിക്യൂട്ടബിൾ ലിസ്റ്റ് പുനർനിർമ്മിക്കുന്നില്ല.
  • എല്ലാ നോഡുകൾ, കോൾബാക്ക് ഗ്രൂപ്പുകൾ, ടൈമറുകൾ, സബ്സ്ക്രിപ്ഷനുകൾ മുതലായവ നിർമ്മാണ സമയത്ത് സൃഷ്ടിക്കപ്പെടുന്നു.
  • സ്ട്രീമിംഗ് സജ്ജീകരണത്തിനായി ഉപയോഗിക്കുന്ന കോറുകളുടെ എണ്ണം പരിഗണിക്കാതെ, ഒരു നോഡിനുള്ളിലെ എല്ലാ സബ്‌സ്‌ക്രിപ്‌ഷനുകളും ഒരേ ത്രെഡിൽ എക്‌സിക്യൂട്ട് ചെയ്യുന്നു.
  1. ക്ലെപ്സിദ്ര സ്ട്രീമിംഗ് എക്സിക്യൂട്ടർ
    പ്രസാധക-സബ്‌സ്‌ക്രൈബർ ജോഡികൾ ഉപയോഗിച്ച് സ്‌ട്രീമിംഗ് വിഷയങ്ങൾ കൈകാര്യം ചെയ്യാൻ ഉൽപ്പന്നത്തിൻ്റെ സ്‌ട്രീമിംഗ് എക്‌സിക്യൂട്ടർ പ്രത്യേകം രൂപകൽപ്പന ചെയ്‌തിരിക്കുന്നു. മിഡിൽവെയറിൽ നിന്ന് rmw വഴി ലഭിക്കുന്ന എല്ലാ നോഡുകളിലെയും വരിക്കാർക്ക് ഇത് കാര്യക്ഷമമായി സന്ദേശങ്ങൾ നൽകുന്നു. ഇവൻ്റ് ലൂപ്പ് ഈ വിഷയങ്ങൾ കൈകാര്യം ചെയ്യുന്നു, സുഗമമായ ഡാറ്റ ഫ്ലോ ഉറപ്പാക്കുന്നു.
  2. ക്ലെപ്‌സിഡ്ര സാമ്രാജ്യം
    ഒരു ഷെഡ്യൂളറായി പ്രവർത്തിക്കുന്ന സ്ട്രീമിംഗ് എക്‌സിക്യൂട്ടറിൻ്റെ ഒരു ഘടകമാണ് ക്ലെപ്‌സിദ്ര റിയൽം. സ്ട്രീമിംഗ് സജ്ജീകരണത്തിനുള്ളിൽ നിർമ്മാതാക്കളുടെയും ഉപഭോക്താക്കളുടെയും നിർവ്വഹണത്തെ ഇത് ഏകോപിപ്പിക്കുന്നു.
  3. നിർമ്മാതാവ്
    സബ്‌സ്‌ക്രൈബർമാർ ഉപയോഗിക്കുന്ന ഡാറ്റ സൃഷ്‌ടിക്കുന്നതിന് ഒരു നിർമ്മാതാവ് ഉത്തരവാദിയാണ്. സ്ട്രീമിംഗ് സജ്ജീകരണത്തിൽ ഉൽപ്പന്നം ഒന്നിലധികം നിർമ്മാതാക്കളെ പിന്തുണയ്ക്കുന്നു.
  4. ഉപഭോക്താവ്
    നിർമ്മാതാക്കൾ സൃഷ്ടിക്കുന്ന ഡാറ്റ പ്രോസസ്സ് ചെയ്യുന്നതിനും ഉപയോഗിക്കുന്നതിനും ഒരു ഉപഭോക്താവ് ഉത്തരവാദിയാണ്. സ്ട്രീമിംഗ് സജ്ജീകരണത്തിൽ ഉൽപ്പന്നം ഒന്നിലധികം ഉപഭോക്താക്കളെ പിന്തുണയ്ക്കുന്നു.

പതിവ് ചോദ്യങ്ങൾ (FAQ)

  1. ഉൽപ്പന്നവുമായി പൊരുത്തപ്പെടുന്ന ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങൾ ഏതാണ്?
    ഉൽപ്പന്നം സാധാരണയായി ഉപയോഗിക്കുന്ന ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങളുമായി പൊരുത്തപ്പെടുന്നു.
  2. പരമ്പരാഗത രീതികളുമായി താരതമ്യപ്പെടുത്തുമ്പോൾ ഉൽപ്പന്ന പ്രക്രിയയ്ക്ക് എത്ര ഡാറ്റ ലഭിക്കും?
    പരമ്പരാഗത രീതികളെ അപേക്ഷിച്ച് സിപിയു ഉപഭോഗത്തിൽ 10% വരെ കുറവ് വരുത്തിക്കൊണ്ട് 50 മടങ്ങ് കൂടുതൽ ഡാറ്റ പ്രോസസ്സ് ചെയ്യാൻ ഉൽപ്പന്നത്തിന് കഴിയും.
  3. ഉൽപ്പന്നം GPU സമാന്തരവൽക്കരണം ഉപയോഗിക്കുന്നുണ്ടോ?
    അതെ, ഉയർന്ന സമാന്തരവൽക്കരണത്തിനായി ഉൽപ്പന്നം GPU (ഗ്രാഫിക് പ്രോസസ്സിംഗ് യൂണിറ്റ്) ഉപയോഗിക്കുന്നു, ഇത് പ്രോസസ്സിംഗ് ഡാറ്റാ നിരക്കും GPU ഉപയോഗവും വർദ്ധിപ്പിക്കുന്നു.

മൾട്ടി-കോർ ROS2 ആപ്ലിക്കേഷനുകൾക്കായുള്ള ഒരു ഓഫ്‌ലൈൻ ഒപ്റ്റിമൈസേഷൻ സമീപനം: മൾട്ടി-കോർ റിംഗ്-ബഫർ ROS2 എക്സിക്യൂട്ടർ

ROS മീറ്റപ്പ് സ്റ്റട്ട്ഗാർട്ട് 2023

ഡോ പാബ്ലോ ഗിഗ്ലിനോ ( pablo.ghiglino@klepsydra.com )

ROS2 സ്ട്രീമിംഗ് എക്സിക്യൂട്ടർ

സന്ദർഭം: സമാന്തര പ്രോസസ്സിംഗ്

  • ഓൺ-ബോർഡ് പ്രോസസ്സിംഗിലെ വെല്ലുവിളികൾKlepsydra-ROS2-Multi-Core-ring-Buffer-Executor-01 (1)
  • ആധുനിക ഹാർഡ്‌വെയറും പഴയ സോഫ്റ്റ്‌വെയറും:
    • കുറഞ്ഞതും ഇടത്തരവുമായ ഡാറ്റ വോള്യങ്ങളിൽ കമ്പ്യൂട്ടറുകൾ പരമാവധി ഔട്ട് ചെയ്യുന്നു
    • വിഭവങ്ങളുടെ കാര്യക്ഷമമല്ലാത്ത ഉപയോഗം
    • കുറഞ്ഞ ഡാറ്റ പ്രോസസ്സിംഗിനുള്ള അമിത ശക്തി

സ്പേസ് ആപ്ലിക്കേഷനുകളുടെ അനന്തരഫലങ്ങൾ

  • സോഫ്റ്റ്‌വെയർ കാരണം ആവർത്തിച്ചുള്ള മിഷൻ പരാജയങ്ങൾ
  • ഭൂമിയിൽ നിന്നുള്ള സെൻസർ ഡാറ്റയിലേക്കുള്ള പ്രവേശനം സമയമെടുക്കുന്നതാണ്.
  • വൈദ്യുതി ആവശ്യങ്ങൾ നിറവേറ്റാൻ ഉപഗ്രഹങ്ങൾ പാടുപെടുന്നുKlepsydra-ROS2-Multi-Core-ring-Buffer-Executor-01 (2)

താരതമ്യം ചെയ്യുക, സ്വാപ്പ് ചെയ്യുക

  • സമന്വയം നേടുന്നതിന് മൾട്ടിത്രെഡിംഗിൽ ഉപയോഗിക്കുന്ന ഒരു നിർദ്ദേശമാണ് താരതമ്യം-ആൻഡ്-സ്വാപ്പ് (CAS). ഇത് ഒരു മെമ്മറി ലൊക്കേഷൻ്റെ ഉള്ളടക്കത്തെ ഒരു നിശ്ചിത മൂല്യവുമായി താരതമ്യം ചെയ്യുന്നു, അവ സമാനമാണെങ്കിൽ മാത്രം, ആ മെമ്മറി ലൊക്കേഷൻ്റെ ഉള്ളടക്കത്തെ ഒരു പുതിയ മൂല്യത്തിലേക്ക് പരിഷ്‌ക്കരിക്കുന്നു. ഒരൊറ്റ ആറ്റോമിക് ഓപ്പറേഷൻ എന്ന നിലയിലാണ് ഇത് ചെയ്യുന്നത്.
  • 370 മുതൽ IBM 1970 ആർക്കിടെക്ചറുകളുടെ ഒരു അവിഭാജ്യ ഘടകമാണ് താരതമ്യം-സ്വപ്നം.
  • മൗറീസ് ഹെർലിഹി (1991) ആറ്റോമിക് റീഡ്, റൈറ്റ്, പെച്ച് ആൻഡ് ആഡ് എന്നിവയേക്കാൾ കൂടുതൽ ഈ അൽഗോരിതങ്ങൾ നടപ്പിലാക്കാൻ CAS-ന് കഴിയുമെന്ന് തെളിയിച്ചു.Klepsydra-ROS2-Multi-Core-ring-Buffer-Executor-01 (3)

ലോക്ക്-ഫ്രീ പ്രോഗ്രാമിംഗിൻ്റെ ഗുണങ്ങളും ദോഷങ്ങളുംKlepsydra-ROS2-Multi-Core-ring-Buffer-Executor-01 (4)

പ്രൊഫ

  • കുറഞ്ഞ CPU ഉപഭോഗം ആവശ്യമാണ്
  • കുറഞ്ഞ ലേറ്റൻസിയും ഉയർന്ന ഡാറ്റ ത്രൂപുട്ടും
  • ഡിറ്റർമിനിസത്തിൽ ഗണ്യമായ വർദ്ധനവ്

ദോഷങ്ങൾ

  • വളരെ ബുദ്ധിമുട്ടുള്ള പ്രോഗ്രാമിംഗ് ടെക്നിക്
  • CAS നിർദ്ദേശങ്ങളുള്ള പ്രോസസർ ആവശ്യമാണ് (90% വിപണിയിലും അവയുണ്ട്, എന്നിരുന്നാലും)

ക്ലെപ്സിദ്ര റിംഗ്-ബഫർ

Klepsydra-ROS2-Multi-Core-ring-Buffer-Executor-01 (5)

ഉത്പന്നം
ഭാരം കുറഞ്ഞതും മോഡുലാർ ആയതും ഏറ്റവും കൂടുതൽ ഉപയോഗിക്കുന്ന ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങളുമായി പൊരുത്തപ്പെടുന്നതും

  • SDK - സോഫ്റ്റ്‌വെയർ ഡെവലപ്‌മെൻ്റ് കിറ്റ്
    പൊതുവായ ആപ്ലിക്കേഷനുകൾക്കും പ്രോസസ്സർ തീവ്രമായ അൽഗോരിതങ്ങൾക്കുമായി എഡ്ജിൽ ഡാറ്റ പ്രോസസ്സിംഗ് ബൂസ്റ്റ് ചെയ്യുക
  • AI - കൃത്രിമ ബുദ്ധി
    അരികിൽ ഏതെങ്കിലും AI അല്ലെങ്കിൽ മെഷീൻ ലേണിംഗ് മൊഡ്യൂൾ വിന്യസിക്കാൻ ഉയർന്ന പ്രകടനമുള്ള ഡീപ് ന്യൂറൽ നെറ്റ്‌വർക്ക് (DNN) എഞ്ചിൻ
  • ROS2 എക്സിക്യൂട്ടർ പ്ലഗിൻ
    CPU ഉപഭോഗത്തിൽ 2% വരെ കുറവുള്ള ROS10-നുള്ള എക്സിക്യൂട്ടറിന് 50 മടങ്ങ് കൂടുതൽ ഡാറ്റ പ്രോസസ്സ് ചെയ്യാൻ കഴിയും.
  • ജിപിയു (ഗ്രാഫിക് പ്രോസസ്സിംഗ് യൂണിറ്റ്)
    പ്രോസസ്സിംഗ് ഡാറ്റ നിരക്കും GPU ഉപയോഗവും വർദ്ധിപ്പിക്കുന്നതിന് GPU- യുടെ ഉയർന്ന സമാന്തരവൽക്കരണംKlepsydra-ROS2-Multi-Core-ring-Buffer-Executor-01 (6)

സന്ദർഭം: ബഹിരാകാശത്ത് ROS1

  • പ്രയോജനങ്ങൾ:
  • ബഹിരാകാശത്ത് സ്വയംഭരണം, ധാരണ, നിയന്ത്രണം എന്നിവ പ്രാപ്തമാക്കുന്നുKlepsydra-ROS2-Multi-Core-ring-Buffer-Executor-01 (1)
  • ഫ്ലെക്സിബിൾ, മോഡുലാർ, ഒരു വലിയ കമ്മ്യൂണിറ്റിയുടെ പിന്തുണ.Klepsydra-ROS2-Multi-Core-ring-Buffer-Executor-01 (2)
  • Exampലെസ്:
    • നാസയുടെ റോബോനട്ട് 2 (R2) - ഐഎസ്എസിലെ അസിസ്റ്റഡ് ബഹിരാകാശയാത്രികർ
    • നാസയുടെ ആസ്ട്രോബീ - ISS-ലെ സ്വയംഭരണ പ്രവർത്തനങ്ങൾ
    • ഗോളങ്ങൾ - ISS-നെക്കുറിച്ചുള്ള ഗവേഷണത്തിനുള്ള ഗോളാകൃതിയിലുള്ള ഉപഗ്രഹങ്ങൾ
    • ഡെക്‌സ്ട്രെ - ISS-ൽ കൃത്രിമത്വത്തിനും അറ്റകുറ്റപ്പണികൾക്കുമുള്ള റോബോട്ടിക് ഭുജം
    • ഗൂഗിൾ ലൂണാർ എക്സ്പ്രൈസ് - ചാന്ദ്ര റോവർ ദൗത്യങ്ങൾക്കായി ഉപയോഗിക്കുന്നുKlepsydra-ROS2-Multi-Core-ring-Buffer-Executor-01 (3)

സന്ദർഭം: Space-ROS

  • ബഹിരാകാശ പര്യവേക്ഷണത്തിലും റോബോട്ടിക്സിലും ROS ചട്ടക്കൂട്
    Klepsydra-ROS2-Multi-Core-ring-Buffer-Executor-01 (4)
  • ബഹിരാകാശ ഉപയോഗത്തിന് ഭാഗികമായി യോഗ്യത നേടി
  •  Exampകുറവ്:
    Klepsydra-ROS2-Multi-Core-ring-Buffer-Executor-01 (5)
    • ബഹിരാകാശയാത്രികർക്കുള്ള റോബോട്ടിക് സഹായികൾ
    • സ്വയംഭരണ റോവറുകൾ ഉപയോഗിച്ച് ഗ്രഹ പര്യവേക്ഷണം
    • ഉപഗ്രഹ പ്രവർത്തനങ്ങളും നിയന്ത്രണവും
      Klepsydra-ROS2-Multi-Core-ring-Buffer-Executor-01 (6)
    • സ്വയംഭരണ പേടകം ഡോക്കിംഗ്
    • ഓൺ-ഓർബിറ്റ് സേവനവും അറ്റകുറ്റപ്പണികളും
      Klepsydra-ROS2-Multi-Core-ring-Buffer-Executor-01 (7)
  • പ്രയോജനങ്ങൾ:
    • സ്വയംഭരണം, ആശയവിനിമയം, ധാരണ എന്നിവ സാധ്യമാക്കുന്നു
    • ബഹിരാകാശ ദൗത്യത്തിൻ്റെ വികസനവും പ്രവർത്തനങ്ങളും ത്വരിതപ്പെടുത്തുന്നു.Klepsydra-ROS2-Multi-Core-ring-Buffer-Executor-01 (8)

ROS2 എക്സിക്യൂട്ടർ വിശദീകരിച്ചു

സബ്‌സ്‌ക്രിപ്‌ഷനുകൾ, സന്ദേശങ്ങൾ, സേവനങ്ങൾ, ടൈമറുകൾ, നോഡുകൾ എന്നിവയുടെ കോൾബാക്കുകൾ മാനേജുചെയ്യുന്നതിലൂടെ ഒരു എക്‌സിക്യൂട്ടർ ROS2 ആപ്ലിക്കേഷൻ ഏകോപിപ്പിക്കുകയും ഷെഡ്യൂൾ ചെയ്യുകയും ചെയ്യുന്നു. ROS2-ൽ, എക്സിക്യൂട്ടർ അവരുടേതായ സന്ദേശങ്ങളുടെയും കോൾബാക്കുകളുടെയും ക്യൂ സൂക്ഷിക്കുന്നില്ല, പകരം അണ്ടർലയിങ്ങ് മിഡിൽവെയർ DDS ക്യൂകളിൽ നിന്നുള്ള സന്ദേശങ്ങൾ ഉപയോഗിക്കുന്നു, തുടർന്ന് അത് ത്രെഡുകളിലൊന്നിലേക്ക് എക്‌സിക്യൂഷൻ അയയ്‌ക്കുന്നു.Klepsydra-ROS2-Multi-Core-ring-Buffer-Executor-01 (9)

സ്റ്റേറ്റ് ഓഫ് ദി ആർട്ട്

ROS2 എക്സിക്യൂട്ടർമാർ

  • സിംഗിൾ ത്രെഡഡ് എക്സിക്യൂട്ടർ: ഒരൊറ്റ ത്രെഡ് മിഡിൽവെയറിനെ അന്വേഷിക്കുകയും കോൾബാക്കുകൾ തുടർച്ചയായി നടപ്പിലാക്കുകയും ചെയ്യുന്നു. ഇത് പിന്നീട് ഘടന സ്കാൻ ചെയ്യുകയും നോഡുകൾ, സബ്സ്ക്രിപ്ഷനുകൾ, സേവനങ്ങൾ മുതലായവ അപ്ഡേറ്റ് ചെയ്യുകയും ചെയ്യുന്നു.
  • സ്റ്റാറ്റിക് സിംഗിൾ ത്രെഡഡ് എക്സിക്യൂട്ടർ, അവിടെ നിർമ്മാണ സമയത്ത്, ഘടനയുടെ സ്കാനും നിർവചനവും ഒരിക്കൽ മാത്രം നടപ്പിലാക്കുന്നു. എല്ലാ നോഡുകൾ, കോൾബാക്ക് ഗ്രൂപ്പുകൾ, ടൈമറുകൾ, സബ്‌സ്‌ക്രിപ്‌ഷനുകൾ മുതലായവ സ്‌പിൻ() വിളിക്കുന്നതിന് മുമ്പ് സൃഷ്‌ടിക്കപ്പെട്ടിരിക്കുന്നു.
  • മൾട്ടി-ത്രെഡ് എക്സിക്യൂട്ടർ സമാന്തരമായി കോൾബാക്കുകൾ നടപ്പിലാക്കുന്ന നിരവധി ത്രെഡുകൾ സൃഷ്ടിക്കുന്നു. സിംഗിൾ ത്രെഡഡ് എക്സിക്യൂട്ടറിന് സമാനമായി, ഇത് ആപ്പിൻ്റെ ഘടന ഇടയ്ക്കിടെ സ്കാൻ ചെയ്യുകയും പ്രശ്നത്തിൻ്റെ വിവരണം അപ്ഡേറ്റ് ചെയ്യുകയും ചെയ്യും.

സ്ട്രീമിംഗ് എക്സിക്യൂട്ടർ ഓവർview

  • മിഡിൽവെയറിൽ നിന്ന് rmw വഴി വരുന്ന എല്ലാ നോഡുകളിലെയും വരിക്കാർക്ക് സന്ദേശങ്ങൾ കൈമാറാൻ സ്ട്രീമിംഗ് എക്സിക്യൂട്ടർ Klepsydra ഇവൻ്റ് ലൂപ്പ് ഉപയോഗിക്കുന്നു. പ്രസാധക-സബ്‌സ്‌ക്രൈബർ ജോഡികൾ ഉപയോഗിച്ച് ഇവൻ്റ് ലൂപ്പ് ഈ വിഷയങ്ങൾ നിയന്ത്രിക്കുന്നു.
  • സ്ട്രീമിംഗ് എക്സിക്യൂട്ടർ നിരവധി വശങ്ങളിൽ സ്റ്റാറ്റിക് സിംഗിൾ ത്രെഡ് എക്സിക്യൂട്ടറിന് സമാനമായി പ്രവർത്തിക്കുന്നു. ഒന്നാമതായി, ഇത് ഓരോ ആവർത്തനത്തിനും എക്സിക്യൂട്ടബിൾ ലിസ്റ്റ് പുനർനിർമ്മിക്കുന്നില്ല. എല്ലാ നോഡുകൾ, കോൾബാക്ക് ഗ്രൂപ്പുകൾ, ടൈമറുകൾ, സബ്‌സ്‌ക്രിപ്‌ഷനുകൾ മുതലായവ നിർമ്മാണ സമയത്ത് സൃഷ്ടിക്കപ്പെടുന്നു. രണ്ടാമതായി, സ്ട്രീമിംഗ് സജ്ജീകരണത്തിനായി ഉപയോഗിക്കുന്ന കോറുകളുടെ എണ്ണം പരിഗണിക്കാതെ, ഒരു നോഡിനുള്ളിലെ എല്ലാ സബ്‌സ്‌ക്രിപ്‌ഷനുകളും ഒരേ ത്രെഡിൽ എക്‌സിക്യൂട്ട് ചെയ്യുന്നു.

ക്ലെപ്സിദ്ര സ്ട്രീമിംഗ് എക്സിക്യൂട്ടർ

Klepsydra-ROS2-Multi-Core-ring-Buffer-Executor-01 (7)

സ്ട്രീമിംഗ് എക്സിക്യൂട്ടർ

ഇത് എങ്ങനെ പ്രവർത്തിക്കുന്നു?

  • നൽകിയിരിക്കുന്ന ROS2 നോഡിന് ആവശ്യമായ ഓരോ വിഷയത്തിനും ഒരു പ്രസാധക-വരിക്കാരൻ ജോടി സൃഷ്ടിക്കപ്പെടുന്നു.
  • ആന്തരികമായി, ഓരോ പ്രസാധക-സബ്‌സ്‌ക്രൈബർ ജോഡിയെയും രണ്ട് പാരാമീറ്ററുകൾ ഉപയോഗിച്ച് തിരിച്ചറിയുന്നു: നോഡിൻ്റെ പേരും വിഷയത്തിൻ്റെ പേരും. മറ്റൊരു വിധത്തിൽ പറഞ്ഞാൽ, ഒരേ വിഷയത്തിലേക്ക് പ്രസിദ്ധീകരിക്കുന്ന രണ്ട് വ്യത്യസ്ത നോഡുകൾ സ്വതന്ത്രമായി കൈകാര്യം ചെയ്യും.
  • ഒരേ നോഡിലുള്ള വിഷയങ്ങളുമായി ബന്ധപ്പെട്ട എല്ലാ പ്രസാധക-സബ്‌സ്‌ക്രൈബർ ജോഡികളും ഒരേ ഇവൻ്റ് ലൂപ്പാണ് നിയന്ത്രിക്കുന്നത്.Klepsydra-ROS2-Multi-Core-ring-Buffer-Executor-01 (10)

സ്ട്രീമിംഗ് എക്സിക്യൂട്ടർ സിംഗിൾ-കോർ വേഴ്സസ് മൾട്ടി-കോർKlepsydra-ROS2-Multi-Core-ring-Buffer-Executor-01 (8)

  • അഡ്വാൻtagസ്‌ട്രീമിംഗ് എക്‌സിക്യൂട്ടറുടെ e, സബ്‌സ്‌ക്രൈബർമാരുടെ മൾട്ടിത്രെഡിംഗ് മാനേജ്‌മെൻ്റിൻ്റെ ആവശ്യമില്ല, കാരണം അവയെല്ലാം നിയന്ത്രിക്കുന്നത് അനുബന്ധ ഇവൻ്റ് ലൂപ്പിൻ്റെ ത്രെഡാണ്, ഇത് സിംഗിൾ-കോർ, മൾട്ടി-കോർ എന്നിവയ്‌ക്ക് പൊതുവായതാണ്.
  • എല്ലാ നോഡുകളിലെയും എല്ലാ സബ്‌സ്‌ക്രൈബർമാരെയും ഒരേ ത്രെഡ് ഉപയോഗിച്ച് വിളിക്കുന്നതിനാൽ, മുമ്പത്തേത് സ്റ്റാറ്റിക് സിംഗിൾ-ത്രെഡ് എക്‌സിക്യൂട്ടറിന് സമാനമായ രീതിയിൽ പ്രവർത്തിക്കുന്നു.

പ്രകടന ബെഞ്ച്മാർക്ക്: റെഫ്-സിസ്റ്റം

  • മെമ്മറി മാനേജ്‌മെൻ്റ്, തത്സമയ പബ്/സബ്, റിയൽ-ടൈം ഡിഡിഎസ്, ട്രെയ്‌സിംഗ്, പ്രൊഫൈൽ ചെയ്യൽ, ഒപ്റ്റിമൈസ് ചെയ്യൽ എന്നിവ അനുവദിക്കുന്ന ടൂളുകൾക്ക് വേണ്ടി വാദിക്കുകയും പ്രവർത്തിക്കുകയും ചെയ്യുക എന്നതാണ് തത്സമയ വർക്കിംഗ് ഗ്രൂപ്പിൻ്റെ ദൗത്യം ( https://github.com/ros-realtime )
  • റഫറൻസ്_സിസ്റ്റം പാക്കേജ് വികസിപ്പിച്ചെടുത്തത് സങ്കീർണ്ണമായ സംവിധാനങ്ങൾ സൃഷ്ടിക്കുന്നതിനുള്ള അടിസ്ഥാന നിർമ്മാണ ബ്ലോക്കുകൾ ലഭ്യമാക്കുന്നതിനാണ്, അത് സ്റ്റാൻഡേർഡ് ചെയ്തതും ആവർത്തിക്കാവുന്നതുമായ രീതിയിൽ ഫീച്ചറുകൾ അല്ലെങ്കിൽ പ്രകടനം വിലയിരുത്തുന്നതിന് ഉപയോഗിക്കാവുന്നതാണ്. ( https://github.com/ros-realtime/reference-system )
  • ഈ റഫറൻസ്_സിസ്റ്റം ഉപയോഗിക്കുന്ന ആദ്യത്തെ പ്രോജക്റ്റ് autoware_reference_system ആണ് ( https://github.com/ros-realtime/referencesystem/blob/main/autoware_reference_system/README.md )Klepsydra-ROS2-Multi-Core-ring-Buffer-Executor-01 (11)

പ്രകടന ബെഞ്ച്മാർക്ക്

  • Klepsydra സ്ട്രീമിംഗ് ബെഞ്ച്മാർക്കുകളുടെ സജ്ജീകരണം:
    • മാനദണ്ഡം ഓട്ടോവെയർ റഫറൻസ് സിസ്റ്റത്തെ അടിസ്ഥാനമാക്കിയുള്ളതായിരുന്നു. ഇത് ഒരു റിയലിസ്റ്റിക് ഡ്രൈവിംഗ് ആപ്ലിക്കേഷൻ അനുകരിക്കുന്നു.
    • എല്ലാ അളവുകളും റാസ്‌ബെറി പൈ 4B ഉപയോഗിച്ചാണ് എടുത്തത്: ROS ഗാലക്‌റ്റിക്, ഉബുണ്ടു 20.04, 4 GB റാം, 1.50GHz സ്ഥിരമായ ആവൃത്തി
    • റഫറൻസ് സിസ്റ്റത്തിൻ്റെ അനുയോജ്യമായ സജ്ജീകരണം, കൂടാതെ സിപിയു ഐസൊലേഷൻ ഇല്ലാതെ
  • പ്രോസസ്സറുകൾ പരീക്ഷിച്ചു:
    • Raspberry PI 4 (RTWG-യുടെ റഫറൻസ് പ്രൊസസർ)
    • Unibap's iX10 (NASA and Blue Origin Testbed)
    • ടെലിഡൈൻ e2v LS1046

പ്രകടന ബെഞ്ച്മാർക്ക്

Klepsydra-ROS2-Multi-Core-ring-Buffer-Executor-01 (9)

Klepsydra-ROS2-Multi-Core-ring-Buffer-Executor-01 (10)

Klepsydra-ROS2-Multi-Core-ring-Buffer-Executor-01 (12)

  • നിർണായക പാതയുടെ ശരാശരി ലേറ്റൻസി കുറയ്ക്കുക എന്നതാണ് ജനിതക അൽഗോരിതത്തിൻ്റെ ലക്ഷ്യം.
  • അതായത്, ലിഡാർ ഡാറ്റ പ്രസിദ്ധീകരിച്ചത് മുതൽ ഒബ്ജക്റ്റ് കൊളിഷൻ എസ്റ്റിമേറ്റർ അതിൻ്റെ ജോലി പൂർത്തിയാക്കുന്നത് വരെ എടുക്കുന്ന സമയം.
  • ഞങ്ങളുടെ ഗവേഷണം ഒപ്റ്റിമൈസ് ചെയ്യാൻ ശ്രമിച്ച നിർണായക പാത ചിത്രം കാണിക്കുന്നു

സ്ട്രീമിംഗ് എക്സിക്യൂട്ടർ
Klepsydra സ്ട്രീമിംഗ് വിതരണ ഒപ്റ്റിമൈസർ (SDO)

  • കോറുകൾക്കിടയിലുള്ള നോഡുകളുടെ ലോഡ് ഡിസ്ട്രിബ്യൂഷൻ ഒപ്റ്റിമൈസ് ചെയ്യുമ്പോൾ സ്ട്രീമിംഗ് എക്സിക്യൂട്ടറിൻ്റെ മൾട്ടി-കോർ വേരിയേഷൻ മികച്ച രീതിയിൽ പ്രവർത്തിക്കുകയും ലേറ്റൻസി, പവർ ഉപഭോഗം, ഡാറ്റ ത്രൂപുട്ട് എന്നിവയിൽ കാര്യമായ വ്യത്യാസം വരുത്തുകയും ചെയ്യും.
  • എന്നിരുന്നാലും, കോറുകളുടെ മാപ്പിംഗ് നിസ്സാരമല്ല കൂടാതെ ചിട്ടയായ സമീപനം ആവശ്യമാണ്. കോർ കോൺഫിഗറേഷനെ അടിസ്ഥാനമാക്കി സിസ്റ്റത്തിൻ്റെ പ്രകടനം അളക്കുന്ന ഒരു ടാർഗെറ്റ് ഫംഗ്ഷൻ നിർവചിക്കുക എന്നതാണ് സാധ്യമായ ഒരു സമീപനം.
  • വ്യത്യസ്‌ത കോൺഫിഗറേഷനുകൾ ആവർത്തിച്ച് പരിശോധിച്ച് ടാർഗെറ്റ് ഫംഗ്‌ഷനനുസരിച്ച് മികച്ച പ്രകടനം കാഴ്ചവെക്കുന്നവ തിരഞ്ഞെടുത്ത് കോർ കോൺഫിഗറേഷൻ ഒപ്റ്റിമൈസ് ചെയ്യാൻ ഒരു ജനിതക അൽഗോരിതം ഉപയോഗിക്കാം. ഒപ്റ്റിമൽ കോൺഫിഗറേഷൻ കണ്ടെത്തുന്നതുവരെ ഈ പ്രക്രിയ തുടരുന്നു.
  • ഈ സമീപനം മൾട്ടി-കോർ സിസ്റ്റത്തിൻ്റെ കൂടുതൽ കാര്യക്ഷമമായ ഉപയോഗത്തിന് അനുവദിക്കുകയും ലോഡ് ഏറ്റവും ഒപ്റ്റിമൽ രീതിയിൽ വിതരണം ചെയ്യപ്പെടുന്നുണ്ടെന്ന് ഉറപ്പാക്കുകയും ചെയ്യുന്നു.

ഫലങ്ങളുടെ സംഗ്രഹം

  • ചെറിയ നോഡ് വർക്കിന്, ചേർത്ത സങ്കീർണ്ണത മികച്ച ഫലങ്ങളിലേക്ക് വിവർത്തനം ചെയ്യില്ല. സ്റ്റാറ്റിക് സിംഗിൾ ത്രെഡ്, വളരെ ലളിതമാണ്, ബാക്കി എക്സിക്യൂട്ടർമാരെ മറികടക്കുന്നു.
  • ജോലിഭാരം വർധിപ്പിച്ചുകൊണ്ട്, സ്ട്രീമിംഗ് എക്സിക്യൂട്ടർ മികച്ച എക്സിക്യൂട്ടറാണ്, തുടർന്ന് സ്റ്റാറ്റിക് സിംഗിൾ ത്രെഡഡ് എക്സിക്യൂട്ടർ.
  • പ്രവർത്തിക്കുന്ന സമയത്ത് ആപ്ലിക്കേഷൻ അതിൻ്റെ ടോപ്പോളജി പരിഷ്കരിക്കാത്തതിനാൽ, സ്ട്രീമിംഗ് എക്സിക്യൂട്ടർ സിംഗിൾ ത്രെഡിനേക്കാൾ മികച്ച പ്രകടനം കാഴ്ചവെക്കുമെന്ന് പ്രതീക്ഷിച്ചിരുന്നു. ഇത് ശരിക്കും അങ്ങനെയാണെന്ന് കാണിക്കുന്നുKlepsydra-ROS2-Multi-Core-ring-Buffer-Executor-01 (13)
  • Raspberry PI4-ൻ്റെ ഫലങ്ങൾ
  • Unibap ൻ്റെ iX10, Teledyne ൻ്റെ LS1046 എന്നിവയ്‌ക്ക് ലഭിച്ച പ്രകടനത്തിൽ സമാനമായ വർദ്ധനവ്Klepsydra-ROS2-Multi-Core-ring-Buffer-Executor-01 (14)

നിഗമനങ്ങൾ

സംഗ്രഹം

  • ലോക്ക്-ഫ്രീ റിംഗ്-ബഫർ അടിസ്ഥാനമാക്കിയുള്ള ROS2 എക്സിക്യൂട്ടർ നടപ്പിലാക്കലും ടാർഗെറ്റ് കമ്പ്യൂട്ടറിൽ ലഭ്യമായ കോറുകളിലേക്ക് റോബോട്ടിക് ആപ്ലിക്കേഷൻ ലോഡ് വിതരണം ഒപ്റ്റിമൈസ് ചെയ്യുന്നതിന് ജനിതക അൽഗോരിതങ്ങളുടെ ഉപയോഗവും സംയോജിപ്പിക്കുന്ന ROS2 എക്സിക്യൂഷൻ മോഡൽ ഒപ്റ്റിമൈസ് ചെയ്യുന്നതിനുള്ള ഒരു പുതിയ സമീപനമാണ് ഈ ലേഖനം അവതരിപ്പിക്കുന്നത്.
  • മുകളിൽ വിവരിച്ച റഫറൻസ് സിസ്റ്റം പോലെ, കനത്ത കമ്പ്യൂട്ടേഷണൽ ലോഡുള്ള സിസ്റ്റത്തിന് ഈ കോമ്പിനേഷൻ വളരെ കാര്യക്ഷമമായി പ്രവർത്തിക്കുമെന്ന് തെളിയിക്കപ്പെട്ടിട്ടുണ്ട്. അവതരിപ്പിച്ച ഗവേഷണത്തിൻ്റെ ഒരു പ്രധാന നേട്ടം വ്യത്യസ്ത ആപ്ലിക്കേഷനുകളുമായുള്ള അതിൻ്റെ പൊരുത്തപ്പെടുത്തലാണ്: സ്ട്രീമിംഗ് എക്സിക്യൂട്ടറും ജനിതക ഒപ്റ്റിമൈസേഷനും ഉപയോഗിച്ച് വ്യത്യസ്ത ROS2 നോഡ് ടോപ്പോളജികൾ ത്വരിതപ്പെടുത്താൻ കഴിയും, ഇത് ROS2 ലെ ഏറ്റവും ചർച്ച ചെയ്യപ്പെടുന്ന വെല്ലുവിളികളിലൊന്നാണ്.

ഭാവി പ്രവർത്തനങ്ങൾ

സംഗ്രഹം

  • ഈ ഗവേഷണത്തിൻ്റെ ഭാവി പ്രവർത്തനങ്ങളെ സംബന്ധിച്ചിടത്തോളം, സ്ട്രീമിംഗ് എക്സിക്യൂട്ടറിൽ ഉൾപ്പെടുത്തേണ്ട നിരവധി സവിശേഷതകൾ ഉണ്ട്:
    • വിനയാനും ഉരുളാനും പിന്തുണ,
    • സിംഗിൾ-കോർ സ്ട്രീമിംഗ് എക്സിക്യൂട്ടറിൻ്റെ ഓപ്പൺ സോഴ്സ് റിലീസ് കൂടാതെ
    • സെൻസർ മൾട്ടിപ്ലക്‌സറിൻ്റെ ഉപയോഗവും നിരവധി സബ്‌സ്‌ക്രൈബർമാരുള്ള വിഷയങ്ങൾക്കായുള്ള ഇവൻ്റ് ലൂപ്പും.
    • RISC-V ആർക്കിടെക്ചർ ടെസ്റ്റിംഗ്

പ്രമാണങ്ങൾ / വിഭവങ്ങൾ

Klepsydra ROS2 മൾട്ടി കോർ റിംഗ് ബഫർ എക്സിക്യൂട്ടർ [pdf] ഉപയോക്തൃ ഗൈഡ്
ROS2 മൾട്ടി കോർ റിംഗ് ബഫർ എക്സിക്യൂട്ടർ, ROS2, മൾട്ടി കോർ റിംഗ് ബഫർ എക്സിക്യൂട്ടർ, റിംഗ് ബഫർ എക്സിക്യൂട്ടർ, ബഫർ എക്സിക്യൂട്ടർ, എക്സിക്യൂട്ടർ

റഫറൻസുകൾ

ഒരു അഭിപ്രായം ഇടൂ

നിങ്ങളുടെ ഇമെയിൽ വിലാസം പ്രസിദ്ധീകരിക്കില്ല. ആവശ്യമായ ഫീൽഡുകൾ അടയാളപ്പെടുത്തി *