ഇൻ്റൽ ലോഗോഇന്റൽ ® ഇതർനെറ്റ് 700 സീരീസ്
ലിനക്സ് പ്രകടന ട്യൂണിംഗ് ഗൈഡ്
NEX ക്ലൗഡ് നെറ്റ്‌വർക്കിംഗ് ഗ്രൂപ്പ് (NCNG)
റവ. 1.2
ഡിസംബർ 2024

റിവിഷൻ ചരിത്രം

പുനരവലോകനം തീയതി അഭിപ്രായങ്ങൾ
1.2 ഡിസംബർ 2024 · അധിക പവർ മാനേജ്മെന്റ് മാർഗ്ഗനിർദ്ദേശം ചേർത്തു.
· ഇന്റൽ* ടർബോ ബൂസ്റ്റ് ചേർത്തു.
· നെറ്റ്‌വർക്ക് ഉപകരണ ബാക്ക്‌ലോഗ് ചേർത്തു.
· പ്ലാറ്റ്‌ഫോം-നിർദ്ദിഷ്ട കോൺഫിഗറേഷനുകളും ട്യൂണിംഗും ചേർത്തു.
· നാലാം തലമുറ ഇന്റൽ* %eon* സ്കേലബിൾ പ്രോസസ്സറുകൾ ചേർത്തു.
· AMD EPYC ചേർത്തു.
· അപ്ഡേറ്റ് ചെയ്ത സിസ്റ്റം ഹാർഡ്‌വെയർ ശേഷികൾ പരിശോധിക്കുക.
· iPerf2 അപ്ഡേറ്റ് ചെയ്തു.
· iPerf3 അപ്ഡേറ്റ് ചെയ്തു.
· അപ്ഡേറ്റ് ചെയ്ത Tx/Rx ക്യൂകൾ.
· അപ്ഡേറ്റ് ചെയ്ത ഇന്ററപ്റ്റ് മോഡറേഷൻ.
· അപ്ഡേറ്റ് ചെയ്ത മോതിരത്തിന്റെ വലുപ്പം.
· അപ്ഡേറ്റ് ചെയ്ത പ്ലാറ്റ്ഫോം ട്യൂണിംഗ് (i40e നോൺ-സ്പെസിഫിക്).
· ബയോസ് ക്രമീകരണങ്ങൾ അപ്ഡേറ്റ് ചെയ്തു.
· അപ്ഡേറ്റ് ചെയ്ത സി-സ്റ്റേറ്റ് നിയന്ത്രണം.
· അപ്ഡേറ്റ് ചെയ്ത CPU ഫ്രീക്വൻസി സ്കെയിലിംഗ്.
· അപ്ഡേറ്റ് ചെയ്ത ആപ്ലിക്കേഷൻ ക്രമീകരണങ്ങൾ.
· ഓപ്പറേറ്റിംഗ് സിസ്റ്റം/കേർണൽ ക്രമീകരണങ്ങൾ അപ്ഡേറ്റ് ചെയ്തു.
· അപ്ഡേറ്റ് ചെയ്ത ഐപി ഫോർവേഡിംഗ്.
· അപ്ഡേറ്റ് ചെയ്ത കുറഞ്ഞ ലേറ്റൻസി.
ഓഗസ്റ്റ് 2023 ഈ പ്രമാണത്തിലെ മാറ്റങ്ങൾ സൂചിപ്പിക്കുന്നത്:
· ബന്ധപ്പെട്ട റഫറൻസുകൾ ചേർത്തു.
· DDP പാക്കേജ് ശരിയായി ലോഡുചെയ്യുന്നുണ്ടെന്ന് ഉറപ്പാക്കുക.
· iPerf2 ചേർത്തു.
· iPerf3 ചേർത്തു.
· നെറ്റ്പെർഫ് ചേർത്തു.
· അപ്ഡേറ്റ് ചെയ്ത IRQ അഫിനിറ്റി.
· Tx/Rx ക്യൂകൾ ചേർത്തു.
· അപ്ഡേറ്റ് ചെയ്ത മോതിരത്തിന്റെ വലുപ്പം.
· ജംബോ ഫ്രെയിമുകൾ ചേർത്തു.
· അഡാപ്റ്റർ ബോണ്ടിംഗ് ചേർത്തു.
· ഇന്റൽ എസ്വിആർ-ഇൻഫോ ടൂൾ ചേർത്തു.
1.0 2016 മാർച്ച് പ്രാരംഭ പതിപ്പ് (ഇന്റൽ പബ്ലിക്).

ആമുഖം

ലിനക്സ് പരിതസ്ഥിതികളിൽ ഇന്റൽ ® ഇതർനെറ്റ് 700 സീരീസ് എൻഐസികൾ ഉപയോഗിച്ച് ഒപ്റ്റിമൽ നെറ്റ്‌വർക്കിംഗ് പ്രകടനത്തിനായി എൻവയോൺമെന്റുകൾ ട്യൂൺ ചെയ്യുന്നതിനുള്ള മാർഗ്ഗനിർദ്ദേശം നൽകുന്നതിനാണ് ഈ ഗൈഡ് ഉദ്ദേശിക്കുന്നത്. ഹാർഡ്‌വെയർ, ഡ്രൈവർ, ഓപ്പറേറ്റിംഗ് സിസ്റ്റം അവസ്ഥകൾ, നെറ്റ്‌വർക്ക് പ്രകടനം മെച്ചപ്പെടുത്താൻ കഴിയുന്ന ക്രമീകരണങ്ങൾ എന്നിവയിൽ ഇത് ശ്രദ്ധ കേന്ദ്രീകരിക്കുന്നു. എത്ര ബാഹ്യ സ്വാധീനങ്ങളാലും നെറ്റ്‌വർക്കിംഗ് പ്രകടനത്തെ ബാധിക്കാമെന്നത് ശ്രദ്ധിക്കേണ്ടതാണ്, അവയിൽ ഏറ്റവും സാധാരണവും നാടകീയവുമായവ മാത്രമേ ഈ ഗൈഡിൽ ഉൾപ്പെടുത്തിയിട്ടുള്ളൂ.
1.1 ബന്ധപ്പെട്ട മാനുവലുകൾ

പ്രാരംഭ ചെക്ക്‌ലിസ്റ്റ്

2.1 ഡ്രൈവർ/ഫേംവെയർ പതിപ്പുകൾ അപ്ഡേറ്റ് ചെയ്യുക
ethtool -i ethx ഉപയോഗിച്ച് ഡ്രൈവർ/ഫേംവെയർ പതിപ്പുകൾ പരിശോധിക്കുക.
ആവശ്യാനുസരണം ഇനിപ്പറയുന്നവ അപ്‌ഡേറ്റ് ചെയ്യുക:

2.2 README വായിക്കുക
അറിയപ്പെടുന്ന പ്രശ്നങ്ങൾ പരിശോധിക്കുകയും README-യിൽ നിന്ന് ഏറ്റവും പുതിയ കോൺഫിഗറേഷൻ നിർദ്ദേശങ്ങൾ നേടുകയും ചെയ്യുക. file i40e സോഴ്‌സ് പാക്കേജിൽ ഉൾപ്പെടുത്തിയിട്ടുണ്ട്.
2.3 നിങ്ങളുടെ PCI എക്സ്പ്രസ് (PCIe) സ്ലോട്ട് x8 ആണോ എന്ന് പരിശോധിക്കുക
ചില PCIe x8 സ്ലോട്ടുകൾ യഥാർത്ഥത്തിൽ x4 സ്ലോട്ടുകളായി ക്രമീകരിച്ചിരിക്കുന്നു. ഡ്യുവൽ പോർട്ട്, ക്വാഡ് പോർട്ട് ഉപകരണങ്ങൾ ഉള്ള പൂർണ്ണ ലൈൻ റേറ്റിന് ഈ സ്ലോട്ടുകൾക്ക് അപര്യാപ്തമായ ബാൻഡ്‌വിഡ്ത്ത് ഇല്ല. കൂടാതെ, നിങ്ങൾ ഒരു PCIe v3.0-ശേഷിയുള്ള അഡാപ്റ്റർ ഒരു PCIe v2.x സ്ലോട്ടിൽ ഇടുകയാണെങ്കിൽ, നിങ്ങൾക്ക് പൂർണ്ണ ബാൻഡ്‌വിഡ്ത്ത് ലഭിക്കില്ല. സോഫ്റ്റ്‌വെയർ ഉപകരണ ഡ്രൈവർ ഈ സാഹചര്യം കണ്ടെത്തി സിസ്റ്റം ലോഗിൽ ഇനിപ്പറയുന്ന സന്ദേശം എഴുതുന്നു:
ഈ കാർഡിന് ലഭ്യമായ പിസിഐ-എക്സ്പ്രസ് ബാൻഡ്‌വിഡ്ത്ത് ഒപ്റ്റിമൽ പ്രകടനത്തിന് പര്യാപ്തമല്ല. ഒപ്റ്റിമൽ പ്രകടനത്തിന് ഒരു x8 പിസിഐ-എക്സ്പ്രസ് സ്ലോട്ട് ആവശ്യമാണ്.
ഈ പിശക് സംഭവിച്ചാൽ, പ്രശ്നം പരിഹരിക്കാൻ നിങ്ങളുടെ അഡാപ്റ്റർ ഒരു യഥാർത്ഥ PCIe v3.0 x8 സ്ലോട്ടിലേക്ക് നീക്കുക.
2.4 സിസ്റ്റം ഹാർഡ്‌വെയർ ശേഷികൾ പരിശോധിക്കുക
10 Gbps, 25 Gbps, 40 Gbps ഇതർനെറ്റ് എന്നിവയിൽ, ചില മിനിമം CPU, സിസ്റ്റം ആവശ്യകതകൾ ഉണ്ട്. പൊതുവേ, ഒരു ആധുനിക സെർവർ ക്ലാസ് പ്രോസസ്സറും നിങ്ങളുടെ പ്ലാറ്റ്‌ഫോമിനായി ഒപ്റ്റിമൽ മെമ്മറി കോൺഫിഗറേഷനും മതിയാകും, പക്ഷേ നിങ്ങളുടെ ജോലിഭാരത്തെ ആശ്രയിച്ച് ആവശ്യങ്ങൾ വ്യത്യാസപ്പെടും. എല്ലാ മെമ്മറി ചാനലുകളും പോപ്പുലേറ്റ് ചെയ്യുകയും BIOS-ൽ മെമ്മറി പ്രകടന മോഡ് പ്രവർത്തനക്ഷമമാക്കുകയും വേണം. നിങ്ങളുടെ ജോലിഭാരത്തിന് ആവശ്യമായ നെറ്റ്‌വർക്ക് പ്രകടന നിലവാരത്തെ പിന്തുണയ്ക്കാൻ നിങ്ങളുടെ CPU-യും മെമ്മറി കോൺഫിഗറേഷനും പ്രാപ്തമാണെന്ന് ഉറപ്പാക്കുക.
കുറിപ്പ്
XL710 ഒരു 40 GbE കൺട്രോളറാണ്. ഈ കൺട്രോളർ ഉപയോഗിക്കുന്ന 2 x 40 GbE അഡാപ്റ്റർ 2 x 40 GbE ആകാൻ ഉദ്ദേശിച്ചുള്ളതല്ല, മറിച്ച് ഒരു സജീവ ബാക്കപ്പ് പോർട്ടുള്ള 1 x 40 GbE ആകാനാണ് ഉദ്ദേശിക്കുന്നത്. രണ്ട് പോർട്ടുകളും ഉൾപ്പെടുന്ന ലൈൻ-റേറ്റ് ട്രാഫിക് ഉപയോഗിക്കാൻ ശ്രമിക്കുമ്പോൾ, ആന്തരിക സ്വിച്ച് പൂരിതമാവുകയും രണ്ട് പോർട്ടുകൾക്കിടയിലുള്ള സംയോജിത ബാൻഡ്‌വിഡ്ത്ത് മൊത്തം SO Gbps ആയി പരിമിതപ്പെടുത്തുകയും ചെയ്യുന്നു.
2.4.1 കേർണൽ ബൂട്ട് പാരാമീറ്ററുകൾ
ബയോസിൽ ഇന്റൽ® വെർച്വലൈസേഷൻ ടെക്നോളജി ഫോർ ഡയറക്റ്റഡ് ഐ/ഒ (ഇന്റൽ® വിടി-ഡി) പ്രവർത്തനക്ഷമമാക്കിയിട്ടുണ്ടെങ്കിൽ, ഒപ്റ്റിമൽ ഹോസ്റ്റ് നെറ്റ്‌വർക്ക് പ്രകടനത്തിനായി ഐഒഎംഎംയു പാസ്-ത്രൂ മോഡിൽ ആയിരിക്കണമെന്ന് ഇന്റൽ ശുപാർശ ചെയ്യുന്നു. ഇത് ഹോസ്റ്റ് ട്രാഫിക്കിലെ ഡിഎംഎ ഓവർഹെഡ് ഒഴിവാക്കുകയും വെർച്വൽ മെഷീനുകൾക്ക് (വിഎം) ഇന്റൽ® വിടി-ഡിയുടെ ഗുണങ്ങൾ ഇപ്പോഴും ലഭിക്കാൻ പ്രാപ്തമാക്കുകയും ചെയ്യുന്നു. കേർണൽ ബൂട്ട് പാരാമീറ്ററുകളിലേക്ക് ഇനിപ്പറയുന്ന വരി ചേർത്താണ് ഇത് സാധ്യമാക്കുന്നത്: fommu-pt.
2.5 DDP പാക്കേജ് ശരിയായി ലോഡ് ചെയ്യുന്നുണ്ടെന്ന് ഉറപ്പാക്കുക
140ea, 140eb ബേസ് ഡ്രൈവറുകൾക്ക് ഡൈനാമിക് ഡിവൈസ് പേഴ്‌സണലൈസേഷനായി (DDP) നേരിട്ടുള്ള പിന്തുണയില്ല. 700 സീരീസ് ഉപകരണങ്ങളിൽ DDP ഉപയോഗിക്കുന്നതിന്, ഒരു DDP പ്രോfile testpmd ആപ്ലിക്കേഷൻ ഉപയോഗിച്ച് അപേക്ഷിക്കാം.
ഡിഡിപി പ്രോയെക്കുറിച്ചുള്ള വിശദാംശങ്ങൾക്ക്fileകൾ, ഒരു ഡിഡിപി പ്രോ എങ്ങനെ പ്രയോഗിക്കാംfile 700 സീരീസ് ഉപകരണങ്ങളിൽ testpmd ഉള്ളതിനാൽ, Intel® Ethernet 700 സീരീസ് ഡൈനാമിക് ഡിവൈസ് പേഴ്‌സണലൈസേഷൻ (DDP) ടെക്‌നോളജി ഗൈഡ് കാണുക.
ഒരു DDP പ്രൊഫഷണലാണോ എന്ന് പരിശോധിക്കാൻfile വിജയകരമായി ലോഡ് ചെയ്തു:
testpmd> ddp ലിസ്റ്റ് 0 പ്രോ നേടുകfile നമ്പർ: 1 ആണ്
കുറിപ്പ്
എങ്കിൽ പ്രൊfile നമ്പർ 0 ആണ്, ഒരു DDP പാക്കേജും ലോഡ് ചെയ്തിട്ടില്ല. ഒരു DDP പാക്കേജ് ലോഡ് പിശക് സംഭവിച്ചാൽ, ഉപകരണം ഡിഫോൾട്ടായി സേഫ് മോഡിലേക്ക് മാറുന്നു, കൂടാതെ നിരവധി പ്രകടന സവിശേഷതകൾ ലഭ്യമല്ല. DDP പാക്കേജ് ലോഡ് ചെയ്യുന്നതുമായി ബന്ധപ്പെട്ട പിശകുകൾ ഉണ്ടെങ്കിൽ, അത് പ്രകടന പ്രശ്നങ്ങൾക്ക് കാരണമാകും. ട്രബിൾഷൂട്ടിംഗ് ഘട്ടങ്ങൾക്ക്, Inte/* Ethernet 700 Series Dynamic Device Personalization (DDP) ടെക്നോളജി ഗൈഡ് കാണുക.

അടിസ്ഥാന പ്രകടന അളവുകളും ട്യൂണിംഗ് രീതിശാസ്ത്രവും

3.1 നെറ്റ്‌വർക്ക് പ്രകടന ബെഞ്ച്മാർക്കുകൾ
ട്യൂണിംഗ് വ്യായാമം ആരംഭിക്കുന്നതിന് മുമ്പ്, നിങ്ങളുടെ നെറ്റ്‌വർക്ക് പ്രകടനത്തിന്റെ ഒരു നല്ല അടിസ്ഥാന അളവ് ഉണ്ടായിരിക്കേണ്ടത് പ്രധാനമാണ്. സാധാരണയായി നിങ്ങളുടെ നിർദ്ദിഷ്ട ആപ്ലിക്കേഷന്റെ/വർക്ക്‌ലോഡിന്റെ പ്രകടനത്തിന്റെ പ്രാരംഭ അളവ് ലഭിക്കുന്നതിന് പുറമേ, നിങ്ങളുടെ നെറ്റ്‌വർക്ക് ഉപകരണം നല്ല നിലയിലാണെന്ന് പരിശോധിക്കാൻ ഒരു സ്റ്റാൻഡേർഡ് നെറ്റ്‌വർക്ക് പ്രകടന ബെഞ്ച്മാർക്ക് ഉപയോഗിക്കുന്നതും നല്ലതാണ്.
സിംഗിൾ സിസ്റ്റം ഒപ്റ്റിമൈസേഷനായി, netperf അല്ലെങ്കിൽ iperf, NetPIPE എന്നിവയെല്ലാം ഒരു കണക്ഷന് സമ്മർദ്ദം ചെലുത്താനും പ്രകടന പ്രശ്നങ്ങൾ കണ്ടെത്താനും നിങ്ങളെ പ്രാപ്തമാക്കുന്ന സോളിഡ് ഓപ്പൺ സോഴ്‌സ് ഫ്രീ ടൂളുകളാണ്.
ത്രൂപുട്ടിനും ലേറ്റൻസി പരിശോധനയ്ക്കും Netperf ശക്തമാണ്. NetPIPE ഒരു ലേറ്റൻസി-നിർദ്ദിഷ്ട ഉപകരണമാണ്, പക്ഷേ ഏത് തരത്തിലുള്ള പരിതസ്ഥിതിക്കും വേണ്ടി കംപൈൽ ചെയ്യാൻ കഴിയും.
കുറിപ്പ്
netperf-ലെ TCP_RR ടെസ്റ്റ്, ഇടപാടുകളുടെ/സെക്കൻഡിന്റെ മൂല്യത്തിൽ ലേറ്റൻസി നൽകുന്നു. ഇതൊരു റൗണ്ട്-ട്രിപ്പ് നമ്പറാണ്. ഇനിപ്പറയുന്ന സമവാക്യം ഉപയോഗിച്ച് വൺ-വേ ലേറ്റൻസി കണക്കാക്കാം:
ലേറ്റൻസി(usec) = (1/2) / [ഇടപാടുകൾ/സെക്കൻഡ്] * 1,000,000
3.1.1 ഐപെർഫ്2
ഒരൊറ്റ ആപ്ലിക്കേഷൻ സന്ദർഭത്തിൽ ഒന്നിലധികം ത്രെഡുകളുടെ ഉപയോഗ എളുപ്പവും പിന്തുണയും കാരണം മിക്ക ബെഞ്ച്മാർക്കിംഗ് സാഹചര്യങ്ങളിലും ഇന്റൽ iperf2 നെക്കാൾ iperf3 ശുപാർശ ചെയ്യുന്നു. 2G കണക്ഷനുകൾക്ക് 4-25 ത്രെഡുകളും 4G കണക്ഷനുകൾക്ക് ഏകദേശം 6-40 ത്രെഡുകളും ഉള്ള -P ഓപ്ഷൻ ഉപയോഗിച്ച് പ്രവർത്തിപ്പിക്കാൻ ഇന്റൽ ശുപാർശ ചെയ്യുന്നു.

  • ക്ലയന്റിൽ നിന്ന് സെർവറിലേക്കുള്ള ഏകദിശ ട്രാഫിക് പ്രവർത്തിപ്പിക്കാൻ: സെർവർ കമാൻഡ് example: iperf2 -s
    ക്ലയന്റ് കമാൻഡ് ഉദാample: iperf2 -c -പി
  • ക്ലയന്റിൽ നിന്ന് സെർവറിലേക്കുള്ള ദ്വിദിശ ട്രാഫിക് പ്രവർത്തിപ്പിക്കുന്നതിന് (തിരിച്ചും): സെർവർ കമാൻഡ് example: iperf2 –s –p
    ക്ലയന്റ് കമാൻഡ് ഉദാampLe:
    iperf2 -c -പി -പി -–പൂർണ്ണ-ഡ്യൂപ്ലെക്സ് OR
    iperf2 -c -പി -പി –ഡി

കുറിപ്പ്
iperf2 ലെ –full-duplex, -d ഓപ്ഷനുകൾ ഉപയോക്താവിനെ ബൈഡയറക്ഷണൽ ടെസ്റ്റിംഗ് നടത്താൻ അനുവദിക്കുന്നു. എന്നിരുന്നാലും, –full-duplex ഓപ്ഷൻ പ്രത്യേകമായി പൂർണ്ണ ഡ്യൂപ്ലെക്സ് ടെസ്റ്റിംഗിൽ ശ്രദ്ധ കേന്ദ്രീകരിക്കുന്നു.
കുറിപ്പ്
ഒന്നിലധികം സെർവർ പോർട്ടുകളിൽ iperf2 പരീക്ഷിക്കുമ്പോൾ, ഒരേ ടെർമിനൽ വിൻഡോയിൽ നിന്ന് പശ്ചാത്തലത്തിൽ എല്ലാ സെർവർ സെഷനുകളും പ്രവർത്തിപ്പിക്കുന്നതിന് സെർവർ കമാൻഡിലേക്ക് -d ഫ്ലാഗ് ചേർക്കാൻ കഴിയും. ഒരു സ്ക്രിപ്റ്റിൽ ഒരു ഫോർ-ലൂപ്പിനുള്ളിൽ സെർവർ കമാൻഡ് ഉൾച്ചേർക്കുമ്പോഴും -d ഫ്ലാഗ് ഉപയോഗിക്കാം.
കുറിപ്പ്
ഒരൊറ്റ സ്ട്രീം/ത്രെഡ് ഉപയോഗിച്ച് നെറ്റ്‌വർക്ക് ത്രൂപുട്ട് ടെസ്റ്റ് നടത്തുമ്പോൾ (ഉദാ.ample: P1), AMD പ്രോസസ്സറുകൾ പ്രതീക്ഷിച്ച ത്രൂപുട്ട് നൽകിയേക്കില്ല, പ്രത്യേകിച്ച് ഉയർന്ന ബാൻഡ്‌വിഡ്ത്ത് NIC-കൾ (വേഗത >= 25G ബാൻഡ്‌വിഡ്ത്ത് ആണെങ്കിൽ). തൽഫലമായി, ഉയർന്ന ത്രൂപുട്ട് നേടുന്നതിന് നിർദ്ദിഷ്ട കോറുകളിലേക്ക് ആപ്ലിക്കേഷൻ പിൻ ചെയ്യേണ്ടതുണ്ട്. പേജ് 22-ലെ ആപ്ലിക്കേഷൻ ക്രമീകരണങ്ങൾ കാണുക.
3.1.2 ഐപെർഫ്3
iperf3 ഉപയോഗിക്കുകയാണെങ്കിൽ, അഡ്വാൻസ് എടുക്കുന്നതിന് ആപ്ലിക്കേഷന്റെ ഒന്നിലധികം സന്ദർഭങ്ങൾ ആവശ്യമാണ്.tagമൾട്ടി-ത്രെഡുകൾ, RSS, ഹാർഡ്‌വെയർ ക്യൂകൾ എന്നിവയുടെ e. 2G കണക്ഷനുകൾക്ക് 4-25 ആപ്ലിക്കേഷൻ സെഷനുകളും 4G കണക്ഷനുകൾക്ക് ഏകദേശം 6-40 സെഷനുകളും ഉപയോഗിച്ച് പ്രവർത്തിപ്പിക്കാൻ ഇന്റൽ ശുപാർശ ചെയ്യുന്നു. -p ഓപ്ഷൻ ഉപയോഗിച്ച് ഓരോ സെഷനും ഒരു അദ്വിതീയ TCP പോർട്ട് മൂല്യം വ്യക്തമാക്കണം.

  • ക്ലയന്റിൽ നിന്ന് സെർവറിലേക്കുള്ള ഏകദിശ ട്രാഫിക് പ്രവർത്തിപ്പിക്കാൻ:
    സെർവർ കമാൻഡ് ഉദാampLe:
    iperf3 -s -p --
    ക്ലയന്റ് കമാൻഡ് ഉദാampLe:
    iperf3 -സി -പി
  • ക്ലയന്റിൽ നിന്ന് സെർവറിലേക്കുള്ള ദ്വിദിശ ട്രാഫിക് പ്രവർത്തിപ്പിക്കാൻ (തിരിച്ചും):
    സെർവർ കമാൻഡ് ഉദാampLe:
    iperf3 –s –p
    ക്ലയന്റ് കമാൻഡ് ഉദാample: iperf3 -c -പി -പി –-ബിദിർ
  • iperf3-ന്റെ ഒന്നിലധികം ഇൻസ്റ്റൻസുകൾ (ത്രെഡുകൾ) ആരംഭിക്കുന്നതിന്, TCP പോർട്ടുകളിലേക്ക് ത്രെഡുകൾ മാപ്പ് ചെയ്യുന്നതിന് ഒരു ഫോർ-ലൂപ്പ് ഉപയോഗിക്കാനും സമാന്തരമായി ഒന്നിലധികം പ്രോസസ്സുകൾ സൃഷ്ടിക്കാൻ & ഉപയോഗിച്ച് പശ്ചാത്തലത്തിൽ iperf3 പ്രവർത്തിപ്പിക്കാനും ശുപാർശ ചെയ്യുന്നു.
    സെർവർ കമാൻഡ് ഉദാample, 4 ത്രെഡുകൾ ആരംഭിക്കുക: port=””; for i in {0..3}; do port=520$i; bash -c “iperf3 -s -p $port &”; done; ക്ലയന്റ് കമാൻഡ് example, 4 ത്രെഡുകൾ ആരംഭിക്കുക – ട്രാൻസ്മിറ്റ് ടെസ്റ്റ് പോർട്ട്=””; for i in {0..3}; do port=520$i; bash -c “iperf3 -c $serverIP -p $port &”; done; ക്ലയന്റ് കമാൻഡ് example, 4 ത്രെഡുകൾ ആരംഭിക്കുക – ടെസ്റ്റ് പോർട്ട്=”” സ്വീകരിക്കുക; {0..3}-ൽ i-ക്ക്; do port=520$i; bash -c “iperf3 -R -c $serverIP -p $port &”; ചെയ്തു; 40G കണക്ഷനുകൾക്ക്, 6 ഇൻസ്റ്റൻസുകൾ/ത്രെഡുകൾ വരെ സൃഷ്ടിക്കാൻ ഫോർ-ലൂപ്പ് വർദ്ധിപ്പിക്കുക.

കുറിപ്പ്
ഒരൊറ്റ സ്ട്രീം/ത്രെഡ് ഉപയോഗിച്ച് നെറ്റ്‌വർക്ക് ത്രൂപുട്ട് ടെസ്റ്റ് നടത്തുമ്പോൾ (ഉദാ.ample: P1), AMD പ്രോസസ്സറുകൾ പ്രതീക്ഷിക്കുന്ന ത്രൂപുട്ട്, പ്രത്യേകിച്ച് ഉയർന്ന ബാൻഡ്‌വിഡ്ത്ത് നൽകിയേക്കില്ല.
NIC-കൾ (വേഗത >= 25G ബാൻഡ്‌വിഡ്ത്ത് ആണെങ്കിൽ). തൽഫലമായി, ഉയർന്ന ത്രൂപുട്ട് നേടുന്നതിന് നിർദ്ദിഷ്ട കോറുകളിലേക്ക് ആപ്ലിക്കേഷൻ പിൻ ചെയ്യേണ്ടതുണ്ട്. പേജ് 22-ലെ ആപ്ലിക്കേഷൻ ക്രമീകരണങ്ങളും പേജ് 26-ലെ AMD EPYC-യും കാണുക.
3.1.3 നെറ്റ്പെർഫ്
ത്രൂപുട്ടിനും ലേറ്റൻസി പരിശോധനയ്ക്കും നെറ്റ്പെർഫ് ടൂൾ ശക്തമായ തിരഞ്ഞെടുപ്പാണ്.

  • netperf-ലെ TCP_STREAM ടെസ്റ്റ് ഉപകരണത്തിന്റെ ത്രൂപുട്ട് ശേഷികൾ അളക്കുന്നു. സെർവർ കമാൻഡ് example: netserver Client കമാൻഡ് example: netperf -t TCP_STREAM -l 30 -H
  • netperf-ലെ TCP_RR ടെസ്റ്റ്, ഇടപാടുകൾ/സെക്കൻഡ് എന്ന മൂല്യത്തിൽ ലേറ്റൻസി നൽകുന്നു. ഇതൊരു റൗണ്ട്-ട്രിപ്പ് നമ്പറാണ്. x ഉപകരണത്തിൽ CPU ലോക്കൽ ആണെങ്കിൽ -T x,x ഓപ്ഷൻ ഉപയോഗിക്കാൻ ശുപാർശ ചെയ്യുന്നു. വൺ-വേ ലേറ്റൻസി ഇനിപ്പറയുന്നവ ഉപയോഗിച്ച് കണക്കാക്കാം: ലേറ്റൻസി(usec)=(1⁄2)/ [ട്രാൻസാക്ഷനുകൾ/സെക്കൻഡ്]*1,000,\ സെർവർ കമാൻഡ് exampലെ: നെറ്റ്സെർവർ
    ക്ലയന്റ് കമാൻഡ് ഉദാample: netperf -t TCP_RR -l 30 -H -ടി x,x
  • netperf-ന്റെ ഒന്നിലധികം ഇൻസ്റ്റൻസുകൾ (ത്രെഡുകൾ) ആരംഭിക്കുന്നതിന്, TCP പോർട്ടുകളിലേക്ക് ത്രെഡുകൾ മാപ്പ് ചെയ്യുന്നതിന് ഒരു ഫോർ-ലൂപ്പ് ഉപയോഗിക്കാനും സമാന്തരമായി ഒന്നിലധികം പ്രോസസ്സുകൾ സൃഷ്ടിക്കാൻ & ഉപയോഗിച്ച് പശ്ചാത്തലത്തിൽ netperf പ്രവർത്തിപ്പിക്കാനും ശുപാർശ ചെയ്യുന്നു.
    സെർവർ കമാൻഡ് ഉദാampലെ, 8 ത്രെഡുകൾ ആരംഭിക്കുക:
    port=””; {0..7}-ൽ i-യ്‌ക്ക്; do port=520$i; bash -c “netserver -L $serverIP -p $port &”; done;
    ക്ലയന്റ് കമാൻഡ് ഉദാample, 8 ത്രെഡുകൾ ആരംഭിക്കുക: port=””; for i in {0..7}; do port=520$i; bash -c “netperf -H $serverIP -p $port -t TCP_STREAM -l 30 &”; done;

3.2 ട്യൂണിംഗ് രീതിശാസ്ത്രം
ഓരോ ട്യൂണിംഗ് മാറ്റത്തിലും ശ്രദ്ധ കേന്ദ്രീകരിക്കുക, അതുവഴി ഓരോ മാറ്റവും നിങ്ങളുടെ പരീക്ഷയിൽ എന്ത് സ്വാധീനം ചെലുത്തുന്നുവെന്ന് നിങ്ങൾക്ക് അറിയാൻ കഴിയും. ട്യൂണിംഗ് പ്രക്രിയയിൽ നിങ്ങൾ കൂടുതൽ രീതിശാസ്ത്രപരനാണെങ്കിൽ, പ്രകടനത്തിലെ തടസ്സങ്ങളുടെ കാരണങ്ങൾ തിരിച്ചറിയാനും പരിഹരിക്കാനും എളുപ്പമായിരിക്കും.

i40e ഡ്രൈവർ ക്രമീകരണങ്ങൾ ട്യൂൺ ചെയ്യുന്നു

4.1 IRQ അഫിനിറ്റി
വ്യത്യസ്ത നെറ്റ്‌വർക്ക് ക്യൂകൾക്കുള്ള ഇന്ററപ്റ്റുകൾ വ്യത്യസ്ത സിപിയു കോറുകളുമായി അഫിനിറ്റൈസ് ചെയ്യുന്ന തരത്തിൽ IRQ അഫിനിറ്റി കോൺഫിഗർ ചെയ്യുന്നത് പ്രകടനത്തിൽ, പ്രത്യേകിച്ച് മൾട്ടിത്രെഡ് ത്രൂപുട്ട് ടെസ്റ്റുകളിൽ വലിയ സ്വാധീനം ചെലുത്തും.
IRQ അഫിനിറ്റി കോൺഫിഗർ ചെയ്യുന്നതിന്, irqbalance നിർത്തി i40e സോഴ്‌സ് പാക്കേജിൽ നിന്നുള്ള set_irq_affinity സ്ക്രിപ്റ്റ് ഉപയോഗിക്കുകയോ ക്യൂകൾ മാനുവലായി പിൻ ചെയ്യുകയോ ചെയ്യുക. ക്യൂ പിന്നിംഗ് പ്രാപ്തമാക്കുന്നതിന് യൂസർ-സ്‌പേസ് IRQ ബാലൻസർ പ്രവർത്തനരഹിതമാക്കുക:

  • systemctl ഇർക്ബാലൻസ് പ്രവർത്തനരഹിതമാക്കുക
  • സിസ്റ്റംസിടിഎൽ സ്റ്റോപ്പ് ഇർക്യുബാലൻസ്
    i40e സോഴ്‌സ് പാക്കേജിൽ നിന്നുള്ള set_irq_affinity സ്ക്രിപ്റ്റ് ഉപയോഗിക്കുന്നു (ശുപാർശ ചെയ്യുന്നത്):
  • എല്ലാ കോറുകളും ഉപയോഗിക്കുന്നതിന്:
    [പാത്ത്-ടു-i40epackage]/scripts/set_irq_affinity -X എല്ലാം ethX
  • ലോക്കൽ NUMA സോക്കറ്റിൽ കോറുകൾ മാത്രം ഉപയോഗിക്കുന്നതിന്: [path-to-i40epackage]/scripts/set_irq_affinity -X ലോക്കൽ ethX
  • നിങ്ങൾക്ക് കോറുകളുടെ ഒരു ശ്രേണിയും തിരഞ്ഞെടുക്കാം. ടൈമർ ടാസ്‌ക്കുകൾ പ്രവർത്തിപ്പിക്കുന്നതിനാൽ cpu0 ഉപയോഗിക്കുന്നത് ഒഴിവാക്കുക. [path-to-i40epackage]/scripts/set_irq_affinity 1-2 ethX

കുറിപ്പ്
-x ഓപ്ഷൻ വ്യക്തമാക്കുമ്പോൾ, പിൻ ചെയ്യൽ പ്രക്രിയയുടെ ഭാഗമായി അഫിനിറ്റി സ്ക്രിപ്റ്റ് ട്രാൻസ്മിറ്റ് പാക്കറ്റ് സ്റ്റിയറിംഗ് (XPS) പ്രാപ്തമാക്കുന്നു. XPS പ്രാപ്തമാക്കുമ്പോൾ, irqbalance പ്രവർത്തനരഹിതമാക്കാൻ ഇന്റൽ ശുപാർശ ചെയ്യുന്നു, കാരണം XPS ഉള്ള കേർണൽ ബാലൻസർ പ്രവചനാതീതമായ പ്രകടനത്തിന് കാരണമാകും. -X ഓപ്ഷൻ വ്യക്തമാക്കുമ്പോൾ അഫിനിറ്റി സ്ക്രിപ്റ്റ് XPS പ്രവർത്തനരഹിതമാക്കുന്നു. Tx, Rx ട്രാഫിക് ഒരേ ക്യൂ ജോഡികളിൽ (ജോടികളിൽ) സേവനം ലഭിക്കുമ്പോൾ മികച്ച പ്രകടനം കൈവരിക്കുന്ന വർക്ക്ലോഡുകൾക്ക് XPS പ്രവർത്തനരഹിതമാക്കുകയും സമമിതി ക്യൂകൾ പ്രവർത്തനക്ഷമമാക്കുകയും ചെയ്യുന്നത് പ്രയോജനകരമാണ്.
ലിനക്സിൽ സിമെട്രിക് ക്യൂകൾ കോൺഫിഗർ ചെയ്യുന്നതിൽ, പിന്തുണയ്ക്കുന്ന നെറ്റ്‌വർക്ക് അഡാപ്റ്ററുകൾക്കായി സിമെട്രിക് റിസീവ് ക്യൂകളും (Rx) സിമെട്രിക് ട്രാൻസ്മിറ്റ് ക്യൂകളും (Tx) പ്രാപ്തമാക്കുന്നതിന് നെറ്റ്‌വർക്ക് ഇന്റർഫേസ് ഡ്രൈവർ പാരാമീറ്ററുകൾ ട്യൂൺ ചെയ്യുന്നത് ഉൾപ്പെടുന്നു.
കുറിപ്പ്

  • സിമെട്രിക് ക്യൂകൾ ഒരു നൂതന നെറ്റ്‌വർക്കിംഗ് സവിശേഷതയാണ്, എല്ലാ 700 സീരീസ് നെറ്റ്‌വർക്ക് അഡാപ്റ്ററുകളോ ഡ്രൈവറുകളോ അവയെ പിന്തുണയ്ക്കുന്നില്ല.
  • സിമെട്രിക് ക്യൂകൾ ക്രമീകരിക്കാൻ ശ്രമിക്കുന്നതിന് മുമ്പ് നിങ്ങൾക്ക് ആവശ്യമായ ഡ്രൈവറും ഹാർഡ്‌വെയർ പിന്തുണയും ഉണ്ടെന്ന് ഉറപ്പാക്കുക.

സമമിതി ക്യൂകൾ ക്രമീകരിക്കുന്നതിന്, ഈ പൊതുവായ ഘട്ടങ്ങൾ പാലിക്കുക:

  1. നെറ്റ്‌വർക്ക് ഇന്റർഫേസ് കോൺഫിഗറേഷൻ എഡിറ്റ് ചെയ്യുക File: ഒരു ടെക്സ്റ്റ് എഡിറ്റർ ഉപയോഗിക്കുക (ഉദാ.ampനെറ്റ്‌വർക്ക് ഇന്റർഫേസ് കോൺഫിഗറേഷൻ എഡിറ്റ് ചെയ്യാൻ le, vi, nano, അല്ലെങ്കിൽ gedit) ഉപയോഗിക്കുക. file. ദി file സാധാരണയായി /etc/sysconfig/network-scripts/ ഡയറക്ടറിയിൽ സ്ഥിതി ചെയ്യുന്നു, കൂടാതെ ifcfg-ethX പോലുള്ള ഒരു പേരും ഉണ്ട്, ഇവിടെ ethX എന്നത് നിങ്ങളുടെ നെറ്റ്‌വർക്ക് ഇന്റർഫേസിന്റെ പേരാണ്.
  2. സിമെട്രിക് ക്യൂ പാരാമീറ്ററുകൾ ചേർക്കുക. നെറ്റ്‌വർക്ക് ഇന്റർഫേസ് കോൺഫിഗറേഷനിലേക്ക് ഇനിപ്പറയുന്ന വരികൾ ചേർക്കുക. file: ETHTOOL_OPTS=”rx-ക്യൂകൾ 8 tx-ക്യൂകൾ 8″
  3. നെറ്റ്‌വർക്ക് സേവനം പുനരാരംഭിക്കുക.
    മാറ്റങ്ങൾ വരുത്തിയ ശേഷം, പുതിയ കോൺഫിഗറേഷൻ പ്രയോഗിക്കുന്നതിന് നെറ്റ്‌വർക്ക് സേവനം പുനരാരംഭിക്കുക. sudo systemctl നെറ്റ്‌വർക്ക് പുനരാരംഭിക്കുക.

സ്വമേധയാ:

  • ഓരോ നോഡിലും ഘടിപ്പിച്ചിരിക്കുന്ന പ്രോസസ്സറുകൾ കണ്ടെത്തുക: numactl –hardware lscpu
  • ഓരോ പ്രോസസ്സറുകൾക്കുമുള്ള ബിറ്റ് മാസ്കുകൾ കണ്ടെത്തുക:
  • നോഡ് 0 ന് 11-0 കോറുകൾ അനുമാനിക്കുമ്പോൾ: [1,2,4,8,10,20,40,80,100,200,400,800]
  • അസൈൻ ചെയ്തിരിക്കുന്ന പോർട്ടിലേക്ക് അസൈൻ ചെയ്തിരിക്കുന്ന IRQ-കൾ കണ്ടെത്തുക: grep ethX /proc/interrupts കൂടാതെ IRQ മൂല്യങ്ങൾ ശ്രദ്ധിക്കുക. ഉദാഹരണത്തിന്ample, ലോഡ് ചെയ്ത 181 വെക്റ്ററുകൾക്ക് 192-12.
  • SMP അഫിനിറ്റി മൂല്യം അനുബന്ധ IRQ എൻട്രിയിലേക്ക് എക്കോ ചെയ്യുക. ഓരോ IRQ എൻട്രിക്കും ഇത് ചെയ്യേണ്ടതുണ്ടെന്ന് ശ്രദ്ധിക്കുക: echo 1 > /proc/irq/181/smp_affinity echo 2 > /proc/irq/182/smp_affinity echo 4 > /proc/irq/183/smp_affinity IRQ അഫിനിറ്റി കാണിക്കുക:
  • എല്ലാ കോറുകൾക്കുമുള്ള IRQ അഫിനിറ്റി കാണിക്കാൻ: /scripts/set_irq_affinity -s ethX
  • ലോക്കൽ NUMA സോക്കറ്റിൽ കോറുകൾ മാത്രം കാണിക്കാൻ: /scripts/set_irq_affinity -s ലോക്കൽ ethX
  • നിങ്ങൾക്ക് കോറുകളുടെ ഒരു ശ്രേണിയും തിരഞ്ഞെടുക്കാം: /scripts/set_irq_affinity -s 40-0-8,16 ethX

കുറിപ്പ്
i40e ഡ്രൈവർ പതിപ്പ് 2.16.11 ലും അതിനുശേഷമുള്ളതിലും set_irq_affinity സ്ക്രിപ്റ്റ് -s ഫ്ലാഗിനെ പിന്തുണയ്ക്കുന്നു.
4.2 Tx/Rx ക്യൂകൾ
ഓരോ ഇതർനെറ്റ് പോർട്ടിനും ഡ്രൈവർ ഇനീഷ്യലൈസേഷൻ സമയത്ത് പ്രാപ്തമാക്കിയിട്ടുള്ള ഡിഫോൾട്ട് ക്യൂകളുടെ എണ്ണം പ്ലാറ്റ്‌ഫോമിൽ ലഭ്യമായ ആകെ സിപിയുകളുടെ എണ്ണത്തിന് തുല്യമാണ്. ഇത് പല പ്ലാറ്റ്‌ഫോമുകൾക്കും വർക്ക്‌ലോഡ് കോൺഫിഗറേഷനുകൾക്കും നന്നായി പ്രവർത്തിക്കുന്നു. എന്നിരുന്നാലും, ഉയർന്ന കോർ കൗണ്ടുകളും/അല്ലെങ്കിൽ ഉയർന്ന ഇതർനെറ്റ് പോർട്ട് സാന്ദ്രതയുമുള്ള പ്ലാറ്റ്‌ഫോമുകളിൽ, ഈ കോൺഫിഗറേഷൻ റിസോഴ്‌സ് തർക്കത്തിന് കാരണമാകും. അതിനാൽ, സിസ്റ്റത്തിലെ ഓരോ പോർട്ടിനുമുള്ള ഡിഫോൾട്ട് പരിഷ്‌ക്കരിക്കേണ്ടത് ചില സന്ദർഭങ്ങളിൽ ആവശ്യമായി വന്നേക്കാം.
നിർദ്ദിഷ്ട മോഡലും ഡ്രൈവർ പതിപ്പും അനുസരിച്ച് Tx/Rx ക്യൂകളുടെ ഡിഫോൾട്ട് എണ്ണം വ്യത്യാസപ്പെടാം. താഴെ പട്ടികപ്പെടുത്തിയിരിക്കുന്ന ethtool -L കമാൻഡ് ഉപയോഗിച്ച് ക്യൂകളുടെ എണ്ണം ക്രമീകരിക്കാവുന്നതാണ്.
കുറിപ്പ്
ഇത്തരം സാഹചര്യങ്ങളിൽ, ഓരോ പോർട്ടിനുമുള്ള ഡിഫോൾട്ട് ക്യൂ എണ്ണം, അഡാപ്റ്റർ പോർട്ടിലേക്കുള്ള NUMA നോഡിൽ ലഭ്യമായ CPU-കളുടെ എണ്ണത്തേക്കാൾ കൂടുതലാകരുതെന്ന് ഇന്റൽ ശുപാർശ ചെയ്യുന്നു. ചില സന്ദർഭങ്ങളിൽ, ഉയർന്ന പോർട്ട് കൗണ്ട് ഇംപ്ലിമെന്റേഷനുകളിൽ റിസോഴ്‌സുകൾ സന്തുലിതമാക്കാൻ ശ്രമിക്കുമ്പോൾ, ഈ സംഖ്യ ഇനിയും കുറയ്ക്കേണ്ടത് ആവശ്യമായി വന്നേക്കാം.
ക്യൂ കോൺഫിഗറേഷൻ പരിഷ്കരിക്കാൻ:
ഇനിപ്പറയുന്ന മുൻample പോർട്ട് 32 Tx/Rx ക്യൂകളായി സജ്ജമാക്കുന്നു: ethtool -L ethX സംയോജിപ്പിച്ചത് 32
Example ഔട്ട്പുട്ട്:
ethtool -l ethX
ethX-നുള്ള ചാനൽ പാരാമീറ്ററുകൾ: മുൻകൂട്ടി സജ്ജീകരിച്ച പരമാവധികൾ:
RX: 96
TX: 96
മറ്റുള്ളവ: 1
സംയോജിപ്പിച്ചത്: 96
നിലവിലെ ഹാർഡ്‌വെയർ ക്രമീകരണങ്ങൾ:
RX: 0
TX: 0
മറ്റുള്ളവ: 1
സംയോജിപ്പിച്ചത്: 32
4.3 ഇന്ററപ്റ്റ് മോഡറേഷൻ
അഡാപ്റ്റീവ് ഇന്ററപ്റ്റ് മോഡറേഷൻ ഡിഫോൾട്ടായി ഓണാണ്, കുറഞ്ഞ CPU ഉപയോഗത്തിനും ഉയർന്ന പ്രകടനത്തിനും ഇടയിൽ ഒരു സന്തുലിത സമീപനം നൽകുന്നതിനാണ് ഇത് രൂപകൽപ്പന ചെയ്തിരിക്കുന്നത്. എന്നിരുന്നാലും, നിങ്ങളുടെ ഉപയോഗ സാഹചര്യത്തിന് അനുയോജ്യമായ രീതിയിൽ ഇന്ററപ്റ്റ് ക്രമീകരണങ്ങൾ സ്വമേധയാ ട്യൂൺ ചെയ്യാൻ നിങ്ങൾക്ക് ശ്രമിക്കാം.
0-235 മൈക്രോസെക്കൻഡ് പരിധി സെക്കൻഡിൽ 4,310 മുതൽ 250,000 വരെ ഇന്ററപ്റ്റുകൾ ഫലപ്രദമായി നൽകുന്നു. rx-μsecs-high ന്റെ മൂല്യം ഒരേ ethtool കമാൻഡിൽ rx-μsecs, tx-μsecs എന്നിവയിൽ നിന്ന് സ്വതന്ത്രമായി സജ്ജമാക്കാൻ കഴിയും, കൂടാതെ അഡാപ്റ്റീവ് ഇന്ററപ്റ്റ് മോഡറേഷൻ അൽഗോരിതത്തിൽ നിന്നും സ്വതന്ത്രവുമാണ്. അടിസ്ഥാന ഹാർഡ്‌വെയർ 2 മൈക്രോസെക്കൻഡ് ഇടവേളകളിൽ ഗ്രാനുലാരിറ്റിയെ പിന്തുണയ്ക്കുന്നു, അതിനാൽ അടുത്തുള്ള മൂല്യങ്ങൾ ഒരേ ഇന്ററപ്റ്റ് നിരക്കിൽ കലാശിച്ചേക്കാം.

  • അഡാപ്റ്റീവ് ഇന്ററപ്റ്റ് മോഡറേഷൻ ഓഫ് ചെയ്യാൻ: ethtool -C ethX adaptive-rx off adaptive-tx off
  • അഡാപ്റ്റീവ് ഇന്ററപ്റ്റ് മോഡറേഷൻ ഓണാക്കാൻ: ethtool -C ethX adaptive-rx on adaptive-tx on

പൊതുവായ ട്യൂണിംഗിന് ആരംഭിക്കാൻ ഒരു നല്ല സ്ഥലം 84 μs ആണ്, അല്ലെങ്കിൽ ~12000 ഇന്ററപ്റ്റുകൾ/സെക്കൻഡ് ആണ്. ട്രാഫിക് സമയത്ത് rx_dropped കൗണ്ടറുകൾ പ്രവർത്തിക്കുന്നത് നിങ്ങൾ കാണുകയാണെങ്കിൽ (ethtool -S ethX ഉപയോഗിക്കുന്നു), അപ്പോൾ നിങ്ങളുടെ CPU വളരെ മന്ദഗതിയിലായിരിക്കാം, അഡാപ്റ്ററിന്റെ റിംഗ് വലുപ്പത്തിൽ നിന്ന് (ethtool -G) 84 μs പാക്കറ്റുകൾ സൂക്ഷിക്കാൻ ആവശ്യമായ ബഫറുകൾ ഇല്ലായിരിക്കാം അല്ലെങ്കിൽ കുറഞ്ഞ ഇന്ററപ്റ്റ് നിരക്കിൽ ആയിരിക്കില്ല.

  • ഇന്ററപ്റ്റുകൾക്കിടയിൽ (84 ഇന്ററപ്റ്റുകൾ/സെക്കൻഡ്) 12000 μs എന്ന ഫിക്സഡ് ഇന്ററപ്റ്റ് റേറ്റ് ഇന്ററപ്റ്റ് മോഡറേഷൻ സജ്ജമാക്കാൻ: ethtool -C ethX adaptive-rx off adaptive-tx off rx-usecs 84 tx-usecs 84 CPU ഉപയോഗത്തിൽ പരമാവധി പരിധി ലംഘിച്ചിട്ടില്ലെങ്കിൽ, ശ്രമിക്കേണ്ട അടുത്ത മൂല്യം 62 μs ആണ്. ഇത് കൂടുതൽ CPU ഉപയോഗിക്കുന്നു, പക്ഷേ ഇത് വേഗത്തിൽ ബഫറുകൾ നൽകുന്നു, കൂടാതെ കുറച്ച് ഡിസ്ക്രിപ്റ്ററുകൾ ആവശ്യമാണ് (റിംഗ് വലുപ്പം, ethtool -G).
  • ഇന്ററപ്റ്റുകൾക്കിടയിൽ (62 ഇന്ററപ്റ്റുകൾ/സെക്കൻഡ്) 16000 യൂസെക്കുകളുടെ ഫിക്സഡ് ഇന്ററപ്റ്റ് റേറ്റ് ഇന്ററപ്റ്റ് മോഡറേഷൻ സജ്ജമാക്കാൻ. ethtool -C ethX adaptive-rx ഓഫ് adaptive-tx ഓഫ് rx-usecs 62 tx-usecs 62
    ട്രാഫിക് സമയത്ത് rx_dropped കൗണ്ടറുകൾ വർദ്ധിക്കുകയാണെങ്കിൽ (ethtool -S ethX ഉപയോഗിച്ച്), നിങ്ങളുടെ CPU വളരെ മന്ദഗതിയിലായിരിക്കാം, അഡാപ്റ്ററിന്റെ റിംഗ് വലുപ്പത്തിൽ നിന്ന് (ethtool -G) ആവശ്യത്തിന് ബഫറുകൾ ഇല്ലായിരിക്കാം, അല്ലെങ്കിൽ ഇന്ററപ്റ്റ് നിരക്ക് വളരെ കുറവായിരിക്കാം. CPU ഉപയോഗം പരമാവധി പ്രയോജനപ്പെടുത്തിയിട്ടില്ലെങ്കിൽ, ITR മൂല്യം കുറച്ചുകൊണ്ട് നിങ്ങൾക്ക് ഇന്ററപ്റ്റ് നിരക്ക് വർദ്ധിപ്പിക്കാൻ കഴിയും. ഇത് കൂടുതൽ CPU ഉപയോഗിക്കുന്നു, പക്ഷേ സേവനങ്ങൾ വേഗത്തിൽ ബഫർ ചെയ്യുന്നു, കൂടാതെ കുറച്ച് ഡിസ്ക്രിപ്റ്ററുകൾ മാത്രമേ ആവശ്യമുള്ളൂ (റിംഗ് വലുപ്പം, ethtool -G).
    നിങ്ങളുടെ CPU 100% ആണെങ്കിൽ, ഇന്ററപ്റ്റ് നിരക്ക് വർദ്ധിപ്പിക്കുന്നത് ഉചിതമല്ല. CPU ബന്ധിത വർക്ക്‌ലോഡ് പോലുള്ള ചില സാഹചര്യങ്ങളിൽ, മറ്റ് ആപ്ലിക്കേഷനുകൾക്ക് കൂടുതൽ CPU സമയം പ്രാപ്തമാക്കുന്നതിന് നിങ്ങൾ μs മൂല്യം വർദ്ധിപ്പിക്കേണ്ടതുണ്ട്.
    കുറഞ്ഞ ലേറ്റൻസി പ്രകടനം ആവശ്യമാണെങ്കിൽ കൂടാതെ/അല്ലെങ്കിൽ നെറ്റ്‌വർക്ക് പ്രോസസ്സിംഗിനായി നീക്കിവയ്ക്കാൻ ധാരാളം CPU ഉണ്ടെങ്കിൽ, നിങ്ങൾക്ക് ഇന്ററപ്റ്റ് മോഡറേഷൻ പൂർണ്ണമായും പ്രവർത്തനരഹിതമാക്കാം, ഇത് ഇന്ററപ്റ്റുകൾ കഴിയുന്നത്ര വേഗത്തിൽ പ്രവർത്തിപ്പിക്കാൻ അനുവദിക്കുന്നു.
  • ഇന്ററപ്റ്റ് മോഡറേഷൻ പ്രവർത്തനരഹിതമാക്കാൻ ethtool -C ethX adaptive-rx ഓഫ് adaptive-tx ഓഫ് rx-usecs 0 tx-usecs 0

കുറിപ്പ്
ഇന്ററപ്റ്റ് മോഡറേഷൻ പ്രവർത്തനരഹിതമാക്കി പ്രവർത്തിക്കുമ്പോൾ, ഓരോ ക്യൂവിലെയും ഇന്ററപ്റ്റ് നിരക്ക് വളരെ ഉയർന്നതായിരിക്കും. ഇന്ററപ്റ്റ് നിരക്കിൽ ഉയർന്ന പരിധി സജ്ജീകരിക്കുന്നതിന് rx-usec-high പാരാമീറ്റർ ഉൾപ്പെടുത്തുന്നത് പരിഗണിക്കുക. ഇനിപ്പറയുന്ന കമാൻഡ് അഡാപ്റ്റീവ് ഇന്ററപ്റ്റ് മോഡറേഷൻ പ്രവർത്തനരഹിതമാക്കുകയും ഒരു റിസീവ് അല്ലെങ്കിൽ ട്രാൻസ്മിറ്റ് പൂർത്തിയായി എന്ന് സൂചിപ്പിക്കുന്നതിന് മുമ്പ് പരമാവധി 5 മൈക്രോസെക്കൻഡ് അനുവദിക്കുകയും ചെയ്യുന്നു. സെക്കൻഡിൽ 200,000 ഇന്ററപ്റ്റുകൾ വരെ ലഭിക്കുന്നതിന് പകരം, rx-usec-high പാരാമീറ്റർ വഴി ഇത് സെക്കൻഡിൽ മൊത്തം ഇന്ററപ്റ്റുകളെ 50,000 ആയി പരിമിതപ്പെടുത്തുന്നു. # ethtool -C ethX adaptive-rx off adaptive-tx off rx-usecs-high 20 rx-usecs 5 txusecs 5 വർക്ക്‌ലോഡിന് ഒപ്റ്റിമൽ മൂല്യം കണ്ടെത്താൻ ട്രാൻസ്മിറ്റ്/റീവേറ്റ്/ഹൈ-പ്രയോറിറ്റി കോളസിംഗ് ടൈമർ ഉയർന്നതോ (80/100/150/200) അല്ലെങ്കിൽ താഴ്ന്നതോ (25/20/10/5) ക്രമീകരിക്കാൻ ശ്രമിക്കുക.
4.4 മോതിരത്തിന്റെ വലിപ്പം
ethtool -S-ൽ rx_dropped കൗണ്ടറുകൾ കാണുന്നുണ്ടെങ്കിൽ ethX (rx_dropped, rx_dropped.nic), അല്ലെങ്കിൽ ഒന്നിലധികം ക്യൂകൾ സജീവമായ കാഷെ മർദ്ദം സംശയിക്കുന്നുവെങ്കിൽ, നിങ്ങൾക്ക് റിങ്ങിന്റെ വലുപ്പം ഡിഫോൾട്ട് മൂല്യത്തിൽ നിന്ന് ക്രമീകരിക്കാൻ ശ്രമിക്കാം. ഡിഫോൾട്ട് മൂല്യം 512 ആണ്, പരമാവധി 4096 ആണ്.

  • നിലവിലെ മൂല്യങ്ങൾ പരിശോധിക്കാൻ: ethtool -g ethX
    ബഫറിംഗിന്റെ അഭാവം നിലവിലെ ഇന്ററപ്റ്റ് നിരക്കിൽ കുറവുണ്ടാക്കുന്നുവെന്ന് സംശയിക്കുന്നുവെങ്കിൽ, ആദ്യം പരമാവധിയും പിന്നീട് ഏറ്റവും കുറഞ്ഞതും പരീക്ഷിച്ച്, ഒപ്റ്റിമൽ പ്രകടനം കാണുന്നത് വരെ ബൈനറി തിരയലിൽ തുടരുക.
    കാഷെ പ്രഷർ സംശയിക്കുകയാണെങ്കിൽ (നിരവധി ക്യൂകൾ സജീവമാണ്), ഡിഫോൾട്ടിൽ നിന്നുള്ള ബഫറുകൾ കുറയ്ക്കുന്നത് ഇന്റൽ ® ഡാറ്റ ഡയറക്ട് ഐ/ഒ (ഇന്റൽ ® DDIO) മികച്ച കാര്യക്ഷമതയോടെ പ്രവർത്തിക്കാൻ സഹായിക്കും. rx_dropped ന്റെ വർദ്ധനവ് ഒഴിവാക്കാൻ ethtool -C വഴി ഇന്ററപ്റ്റ് റേറ്റ് വർദ്ധിപ്പിക്കേണ്ടത് ആവശ്യമാണെന്ന് അറിഞ്ഞിരിക്കെ, ഓരോ ക്യൂവിലും 128 അല്ലെങ്കിൽ 256 പരീക്ഷിക്കാൻ ഇന്റൽ ശുപാർശ ചെയ്യുന്നു.
  • റിംഗ് വലുപ്പം നിശ്ചിത മൂല്യത്തിലേക്ക് സജ്ജമാക്കാൻ: ethtool -G eth12 rx 256 tx 256

കുറിപ്പ്
ethtool -S ethX|grep ഡ്രോപ്പിൽ കാണപ്പെടുന്ന Rx പാക്കറ്റ് ഡ്രോപ്പുകൾ പരിഹരിക്കുന്നതിന്, റിംഗ് വലുപ്പം 4096 ആയി വർദ്ധിപ്പിക്കുന്നത് പരിഗണിക്കുക. വർക്ക്‌ലോഡിന് ഏറ്റവും അനുയോജ്യമായ ക്രമീകരണം കണ്ടെത്താൻ ശ്രമിക്കുക, എന്നാൽ ഉയർന്ന മൂല്യങ്ങളിൽ അമിതമായ മെമ്മറി ഉപയോഗം ശ്രദ്ധിക്കുക.
4.5 ഒഴുക്ക് നിയന്ത്രണം
ലെയർ 2 ഫ്ലോ നിയന്ത്രണം TCP പ്രകടനത്തെ സാരമായി ബാധിക്കും, അതിനാൽ മിക്ക വർക്ക്‌ലോഡുകളിലും ഇത് പ്രവർത്തനരഹിതമാക്കാൻ ശുപാർശ ചെയ്യുന്നു. ഒരു സാധ്യതയുള്ള അപവാദം ബർസ്റ്റി ട്രാഫിക് ആണ്, അവിടെ ബർസ്റ്റുകൾ ദീർഘനേരം നീണ്ടുനിൽക്കില്ല.
ഫ്ലോ നിയന്ത്രണം സ്ഥിരസ്ഥിതിയായി അപ്രാപ്തമാക്കിയിരിക്കുന്നു.

  • ഫ്ലോ നിയന്ത്രണം പ്രാപ്തമാക്കുന്നതിന്: ethtool -A ethX rx on tx on
  • ഫ്ലോ നിയന്ത്രണം പ്രവർത്തനരഹിതമാക്കാൻ: ethtool -A ethX rx ഓഫ് tx ഓഫ്

കുറിപ്പ്
ഫ്ലോ നിയന്ത്രണം വിജയകരമായി പ്രാപ്തമാക്കുന്നതിന് നിങ്ങൾക്ക് ഒരു ഫ്ലോ നിയന്ത്രണ ശേഷിയുള്ള ലിങ്ക് പാർട്ണർ ഉണ്ടായിരിക്കണം.
4.6 ജംബോ ഫ്രെയിമുകൾ
പ്രതീക്ഷിക്കുന്ന ട്രാഫിക് പരിതസ്ഥിതിയിൽ വലിയ അളവിലുള്ള ഡാറ്റ കൈമാറ്റം ചെയ്യപ്പെടുമ്പോൾ, ജംബോ ഫ്രെയിം സവിശേഷത പ്രവർത്തനക്ഷമമാക്കുന്നത് ഗുണം ചെയ്യും. മാക്സിമം ട്രാൻസ്മിഷൻ യൂണിറ്റ് (MTU) 1500 എന്ന ഡിഫോൾട്ട് മൂല്യത്തേക്കാൾ വലിയ മൂല്യത്തിലേക്ക് മാറ്റുന്നതിലൂടെ ജംബോ ഫ്രെയിംസ് പിന്തുണ പ്രവർത്തനക്ഷമമാക്കുന്നു. നെറ്റ്‌വർക്ക് പരിതസ്ഥിതിയിൽ വലിയ പാക്കറ്റുകളിൽ ഡാറ്റ കൈമാറാൻ ഇത് ഉപകരണത്തെ അനുവദിക്കുന്നു. ഈ ക്രമീകരണം ത്രൂപുട്ട് മെച്ചപ്പെടുത്തുകയും വലിയ I/O വർക്ക്‌ലോഡുകൾക്കുള്ള CPU ഉപയോഗം കുറയ്ക്കുകയും ചെയ്തേക്കാം. എന്നിരുന്നാലും, ഇത് ചെറിയ പാക്കറ്റുകളെയോ ലേറ്റൻസി സെൻസിറ്റീവ് വർക്ക്‌ലോഡുകളെയോ ബാധിച്ചേക്കാം.
കുറിപ്പ്
നിങ്ങളുടെ നെറ്റ്‌വർക്ക് പരിതസ്ഥിതിയിലുടനീളം ജംബോ ഫ്രെയിമുകൾ അല്ലെങ്കിൽ അതിൽ കൂടുതൽ വലുപ്പമുള്ള MTU സജ്ജീകരണം ശരിയായി കോൺഫിഗർ ചെയ്തിരിക്കണം.
MTU വലുപ്പം വർദ്ധിപ്പിക്കാൻ ifconfig കമാൻഡ് ഉപയോഗിക്കുക. ഉദാ:ample, താഴെ കൊടുത്തിരിക്കുന്നത് നൽകുക, എവിടെ ഇന്റർഫേസ് നമ്പർ ആണ്: ifconfig mtu 9000 വരെ
പകരമായി, നിങ്ങൾക്ക് ഇനിപ്പറയുന്ന രീതിയിൽ ip കമാൻഡ് ഉപയോഗിക്കാം: ip ലിങ്ക് സെറ്റ് mtu 9000 dev ഐപി ലിങ്ക് സജ്ജീകരണം ഡെവലപ്പർ

പ്ലാറ്റ്‌ഫോം ട്യൂണിംഗ് (i40e നോൺ-സ്പെസിഫിക്)

5.1 ബയോസ് ക്രമീകരണങ്ങൾ

  • വെർച്വലൈസേഷൻ വർക്ക്‌ലോഡുകൾക്കായി Intel® VT-d പ്രവർത്തനക്ഷമമാക്കുക.
  • ഹൈപ്പർ-ത്രെഡിംഗ് (ലോജിക്കൽ പ്രോസസ്സറുകൾ) പ്രകടനത്തെ ബാധിച്ചേക്കാം. നിങ്ങളുടെ ജോലിഭാരത്തിനായി ഇത് ഓൺ അല്ലെങ്കിൽ ഓഫ് ഉപയോഗിച്ച് പരീക്ഷിക്കുക.
  • Intel® Turbo Boost, CPU കോറുകൾ CPU-യുടെ അടിസ്ഥാന ഫ്രീക്വൻസിയേക്കാൾ ഉയർന്ന ഫ്രീക്വൻസിയിൽ പ്രവർത്തിക്കാൻ അനുവദിക്കുന്നു. Intel® Turbo Boost പ്രവർത്തനക്ഷമമാക്കുന്നത് നിരവധി വർക്ക്‌ലോഡുകളിൽ പ്രകടനം മെച്ചപ്പെടുത്തുമെങ്കിലും കോറുകൾ ഉയർന്ന ഫ്രീക്വൻസിയിൽ നിലനിർത്താൻ കൂടുതൽ പവർ ഉപയോഗിക്കുന്നു. നിങ്ങളുടെ വർക്ക്‌ലോഡിനായി Turbo Boost ഓഫ്/ഓൺ ഉപയോഗിച്ച് പരീക്ഷിക്കുക.

കുറിപ്പ്
പ്ലാറ്റ്‌ഫോമിൽ മൊത്തത്തിലുള്ള ഉയർന്ന CPU ഉപയോഗം അനുഭവപ്പെടുന്നുണ്ടെങ്കിൽ ടർബോ ഫ്രീക്വൻസികൾ ഉറപ്പുനൽകാൻ കഴിയില്ല. മൊത്തത്തിലുള്ള CPU ഉപയോഗം വർദ്ധിക്കുന്നതിനനുസരിച്ച് ഉയർന്ന കോർ ടർബോ ഫ്രീക്വൻസികൾ കുറയുന്നു.
5.2 പവർ മാനേജ്മെൻ്റ്
പവർ മാനേജ്മെന്റ് പ്രകടനത്തെ ബാധിക്കും, പ്രത്യേകിച്ച് കുറഞ്ഞ ലേറ്റൻസി വർക്ക്‌ലോഡുകളിൽ. പവർ ഉപഭോഗം കുറയ്ക്കുന്നതിനേക്കാൾ പ്രകടനമാണ് ഉയർന്ന മുൻഗണനയെങ്കിൽ, പവർ മാനേജ്‌മെന്റിന്റെ ഫലങ്ങൾ പരിമിതപ്പെടുത്തുന്നതിൽ പരീക്ഷണം നടത്താൻ ഇന്റൽ ശുപാർശ ചെയ്യുന്നു. ഓപ്പറേറ്റിംഗ് സിസ്റ്റം ടൂളുകൾ, ബയോസ് ക്രമീകരണങ്ങൾ, കേർണൽ ബൂട്ട് പാരാമീറ്ററുകൾ എന്നിവയിലൂടെ പവർ മാനേജ്‌മെന്റ് പരിമിതപ്പെടുത്തുന്നതിന് നിരവധി വ്യത്യസ്ത മാർഗങ്ങളുണ്ട്. നിങ്ങളുടെ പരിസ്ഥിതിക്ക് അനുയോജ്യമായ ഏറ്റവും മികച്ച രീതിയും ലെവലും തിരഞ്ഞെടുക്കുക.
5.2.1 സി-സ്റ്റേറ്റ് നിയന്ത്രണം
സി-സ്റ്റേറ്റ് എൻട്രി CO അല്ലെങ്കിൽ C1 ലേക്ക് പരിമിതപ്പെടുത്തുന്നത് പ്രകടനം മെച്ചപ്പെടുത്തുകയും വൈദ്യുതി ഉപയോഗം വർദ്ധിപ്പിക്കുകയും ചെയ്യുന്നു.
CPU പാക്കേജ് C6 സ്റ്റേറ്റ് എൻട്രി പ്രവർത്തനരഹിതമാക്കുന്നത് നെറ്റ്‌വർക്ക് പ്രകടനം മെച്ചപ്പെടുത്തും. എന്നിരുന്നാലും, ഇത് വൈദ്യുതി ഉപയോഗം വർദ്ധിപ്പിക്കുന്നു.
ഇനിപ്പറയുന്ന ഓപ്ഷനുകൾ ലഭ്യമാണ്:

  • സി-സ്റ്റേറ്റ് എൻട്രി ഡൈനാമിക് ആയി നിയന്ത്രിക്കുക:
    തുറക്കുക
    /dev/cpu_dma_latency എന്ന് ടൈപ്പ് ചെയ്ത്, അതിന് അനുവദനീയമായ പരമാവധി ലേറ്റൻസി എഴുതുക.

കുറിപ്പ്
cpudmalatancy.c എന്നൊരു ചെറിയ പ്രോഗ്രാം ഉണ്ട്, അത് ഓപ്പൺ സോഴ്‌സ് കമ്മ്യൂണിറ്റിയിൽ നിന്ന് ഡൗൺലോഡ് ചെയ്‌ത്, കംപൈൽ ചെയ്‌ത്, കമാൻഡ് ലൈനിൽ നിന്ന് പ്രവർത്തിപ്പിച്ച് ഇത് കൃത്യമായി ചെയ്യാൻ കഴിയും.
ഇനിപ്പറയുന്ന മുൻample അഞ്ച് μs വേക്ക് സമയം അനുവദിക്കുന്നു, അങ്ങനെ C1 എൻട്രി അനുവദിക്കുന്നു: cpudmalatency 5 &

  • കേർണൽ ബൂട്ട് ക്രമീകരണങ്ങളിൽ പരമാവധി സി-സ്റ്റേറ്റ് പരിമിതപ്പെടുത്തുക:
    ഇന്റൽ സിപിയുവിന്: intel_idle.max_cstates=1
    ഇന്റൽ ഇതര സിപിയുകൾക്ക്: processor.max_cstates=1
  • CPU C6 അവസ്ഥ പരിശോധിക്കാനും പ്രവർത്തനരഹിതമാക്കാനും cpupower കമാൻഡ് ഉപയോഗിക്കുക: പരിശോധിക്കുക: cpupower monitor അല്ലെങ്കിൽ cpupower idle-info
    C6 പ്രവർത്തനരഹിതമാക്കുക: cpupower idle-set -d3 അല്ലെങ്കിൽ
    സി-സ്റ്റേറ്റുകൾ പ്രവർത്തനരഹിതമാക്കുക: cpupower idle-set -D0

കുറിപ്പുകൾ:

  1. സെർവറിൽ Intel® 4th Gen Intel® Xeon® സ്കേലബിൾ പ്രോസസ്സർ(കൾ) ഉണ്ടെങ്കിൽ CPU-യിൽ C-സ്റ്റേറ്റുകൾ പ്രവർത്തനരഹിതമാക്കുക. ഹൈപ്പർ ത്രെഡിംഗ് പ്രവർത്തനക്ഷമമാക്കുകയോ പ്രവർത്തനരഹിതമാക്കുകയോ ചെയ്യുമ്പോൾ, നിഷ്‌ക്രിയ അവസ്ഥകൾ (-D0) പ്രവർത്തനരഹിതമാക്കുന്നത് നിഷ്‌ക്രിയ കാലഘട്ടങ്ങളിൽ കുറഞ്ഞ പവർ അവസ്ഥകളിലേക്ക് കോറുകൾ പ്രവേശിക്കുന്നത് തടയുകയും നിഷ്‌ക്രിയാവസ്ഥയ്ക്കും സജീവാവസ്ഥയ്ക്കും ഇടയിൽ CPU പരിവർത്തനം ചെയ്യുന്നതിനുള്ള ലേറ്റൻസി കുറയ്ക്കുകയും ചെയ്യുന്നു.
  2. ഇന്റൽ® 4th Gen ഇന്റൽ® Xeon® സ്കേലബിൾ പ്രോസസറിന്റെ പവർ മാനേജ്മെന്റ് വളരെ ആക്രമണാത്മകമാണ്. കുറഞ്ഞ പവർ അവസ്ഥകളിലേക്ക് കോറുകൾ പ്രവേശിക്കുന്നത് ഒഴിവാക്കാൻ, ഉപയോഗത്തിലുള്ള കോറുകളുടെ എണ്ണം കുറയ്ക്കാൻ ശ്രമിക്കുക, അങ്ങനെ അവ കൂടുതൽ നേരം സജീവമായി നിലനിർത്താൻ കഴിയും (ethtool -L). സംയോജിപ്പിച്ചത് ). കൂടാതെ, സെറ്റ് irq അഫിനിറ്റി (മിക്കപ്പോഴും -x ലോക്കൽ അല്ലെങ്കിൽ CPU കോറുകളുടെ പട്ടിക) ഉപയോഗിച്ച് നിർദ്ദിഷ്ട കോറുകളിലേക്ക് ഇന്ററപ്റ്റുകൾ ബൈൻഡ് ചെയ്യുക, കൂടാതെ ടാസ്‌ക്‌സെറ്റ് അല്ലെങ്കിൽ numactl ഉപയോഗിച്ച് അതേ കോറുകളിൽ വർക്ക്‌ലോഡ് പ്രവർത്തിക്കുന്നുവെന്ന് ഉറപ്പാക്കുക. ഇത് കോറുകൾ സജീവമായി നിലനിർത്തുന്നതിലൂടെയും ഇന്ററപ്റ്റ് ഹാൻഡ്‌ലിംഗ് ഒപ്റ്റിമൈസ് ചെയ്യുന്നതിലൂടെയും പ്രകടനം മെച്ചപ്പെടുത്തുന്നു.

C6 പ്രവർത്തനക്ഷമമാക്കുക:
cpupower idle-set -d3
സി-സ്റ്റേറ്റുകൾ പ്രാപ്തമാക്കുക:
cpupower idle-set -E

  • മറ്റൊരു രീതി, ട്യൂൺ ചെയ്ത ഉപകരണം (നിരവധി ലിനക്സ് വിതരണങ്ങൾക്കൊപ്പം ഉൾപ്പെടുത്തിയിരിക്കുന്നു) ഉപയോഗിച്ച് ഒരു പെർഫോമൻസ് പ്രോ സജ്ജമാക്കുക എന്നതാണ്.file. ഈ പ്രോfileനിരവധി ആപ്ലിക്കേഷനുകളിലുടനീളമുള്ള പ്രകടനത്തെ ബാധിച്ചേക്കാവുന്ന നിരവധി OS ക്രമീകരണങ്ങൾ s പരിഷ്കരിക്കുന്നു. നെറ്റ്‌വർക്ക്-ത്രൂപുട്ട് പ്രോ ആണെന്ന് കണ്ടെത്തിയിട്ടുണ്ട്file മിക്ക ജോലിഭാരങ്ങളിലും പുരോഗതി നൽകുന്നു.
    പരിശോധിക്കുക:
    ട്യൂൺഡ്-അഡ്മിഷൻ സജീവമാണ്
    സജ്ജമാക്കുക:
    ട്യൂൺഡ്-അഡ്മിഷൻ പ്രോfile നെറ്റ്‌വർക്ക്-ത്രൂപുട്ട്
    കുറിപ്പ്
    മുകളിലുള്ള കമാൻഡുകൾക്കായി ട്യൂൺഡ് സേവനം പ്രവർത്തിക്കണം. പരിശോധിക്കാൻ/പുനരാരംഭിക്കാൻ, ട്യൂൺ ചെയ്യുക: systemctl സ്റ്റാറ്റസ് ട്യൂൺ ചെയ്യുക systemctl പുനരാരംഭിക്കുക ട്യൂൺ ചെയ്യുക
    കേർണൽ ബൂട്ട് ലൈനിൽ താഴെ പറയുന്നവ ചേർത്തുകൊണ്ട് നിങ്ങൾക്ക് ഏതെങ്കിലും സി-സ്റ്റേറ്റ് എൻട്രി അനുവദിക്കാതിരിക്കാനും കഴിയും:
    idle=പോൾ
  • സിസ്റ്റത്തിന്റെ BIOS പവർ മാനേജ്മെന്റ് ക്രമീകരണങ്ങൾ വഴി C-സ്റ്റേറ്റ് പരിമിതപ്പെടുത്തുക, അതിന് ഒരു പെർഫോമൻസ് പ്രോ ഉണ്ടായിരിക്കാം.file ലഭ്യമാണ്.
    പവർ മാനേജ്മെന്റ് ക്രമീകരണങ്ങൾ പരിശോധിക്കുന്നതിനോ സജ്ജീകരിക്കുന്നതിനോ ടർബോസ്റ്റാറ്റ് അല്ലെങ്കിൽ x86_energy_perf_policy പോലുള്ള ഉപകരണങ്ങൾ ഉപയോഗിക്കാം.

5.2.2 PCIe പവർ മാനേജ്മെന്റ്
സജീവ ഉപയോഗത്തിലില്ലാത്തപ്പോൾ PCIe ലിങ്കുകൾക്ക് കുറഞ്ഞ പവർ സ്റ്റേറ്റ് പ്രവർത്തനക്ഷമമാക്കാൻ ആക്റ്റീവ്-സ്റ്റേറ്റ് പവർ മാനേജ്മെന്റ് (ASPM) സഹായിക്കുന്നു. ഇത് PCIe നെറ്റ്‌വർക്ക് ഉപകരണങ്ങളിൽ ഉയർന്ന ലേറ്റൻസിക്ക് കാരണമാകും, അതിനാൽ ലേറ്റൻസി സെൻസിറ്റീവ് വർക്ക്‌ലോഡുകൾക്ക് ASPM പ്രവർത്തനരഹിതമാക്കാൻ ഇന്റൽ ശുപാർശ ചെയ്യുന്നു. കേർണൽ ബൂട്ട് ലൈനിൽ ഇനിപ്പറയുന്നവ ചേർത്തുകൊണ്ട് ASPM പ്രവർത്തനരഹിതമാക്കുക: pcie_aspm=off
5.2.3 സിപിയു ഫ്രീക്വൻസി സ്കെയിലിംഗ്
സിപിയു ഫ്രീക്വൻസി സ്കെയിലിംഗ് (അല്ലെങ്കിൽ സിപിയു സ്പീഡ് സ്കെയിലിംഗ്) എന്നത് ഒരു ലിനക്സ് പവർ മാനേജ്മെന്റ് ടെക്നിക്കാണ്, അതിൽ പവറും ചൂടും ലാഭിക്കുന്നതിനായി സിസ്റ്റം ക്ലോക്ക് സ്പീഡ് പെട്ടെന്ന് ക്രമീകരിക്കുന്നു. സി-സ്റ്റേറ്റുകളെപ്പോലെ, ഇത് നെറ്റ്‌വർക്ക് കണക്ഷനുകളിൽ അനാവശ്യമായ ലേറ്റൻസിക്ക് കാരണമാകും.
സിപിയു പ്രകടന ഡിഫോൾട്ടുകളും പരിധികളും പരിശോധിക്കാനും പരിഷ്ക്കരിക്കാനും cpupower ഉപകരണം ഉപയോഗിക്കാം:

  • പരിശോധിക്കുക: സിപിയുപവർ മോണിറ്റർ അല്ലെങ്കിൽ
  • CPU-കളെ പ്രകടന മോഡിലേക്ക് സജ്ജമാക്കുക: cpupower frequency-set -g പ്രകടനം

കുറിപ്പ്
സിപിയു ഫ്രീക്വൻസി പരിധികളിൽ വരുത്തുന്ന മാറ്റങ്ങൾ നിരവധി വർക്ക്‌ലോഡുകളെയും ബാധിക്കുകയും സിപിയു ടർബോ മോഡ് പോലുള്ള മറ്റ് സവിശേഷതകൾ പ്രവർത്തനരഹിതമാക്കുകയും ചെയ്തേക്കാം.
സിപിയു ഫ്രീക്വൻസി സ്കെയിലിംഗ് പ്രവർത്തനരഹിതമാക്കാൻ, ഇനിപ്പറയുന്ന കമാൻഡുകൾ ഉപയോഗിച്ച് സിപിയു പവർ സർവീസ് പ്രവർത്തനരഹിതമാക്കുക:
systemctl cpupower.service നിർത്തുക
systemctl cpupower.service പ്രവർത്തനരഹിതമാക്കുക
5.2.4 അധിക പവർ മാനേജ്മെന്റ് മാർഗ്ഗനിർദ്ദേശം
ഈ ഉയർന്ന തലത്തിലുള്ള ഓവറിൽ കൂടുതൽ വിശദാംശങ്ങൾ നൽകിയിരിക്കുന്നു.view മൂന്നാം തലമുറ ഇന്റൽ® സിയോൺ® സ്കേലബിൾ പ്രോസസറുകളിലെ നിരവധി പവർ മാനേജ്‌മെന്റ് സവിശേഷതകളെക്കുറിച്ചും, ഈ സവിശേഷതകൾ ഒരു പ്ലാറ്റ്‌ഫോം തലത്തിൽ എങ്ങനെ സംയോജിപ്പിക്കാമെന്നതിനെക്കുറിച്ചുള്ള മാർഗ്ഗനിർദ്ദേശത്തെക്കുറിച്ചും: https://networkbuilders.intel.com/solutionslibrary/power-management-technologyoverview-technology-guide
5.3 ഇന്റൽ® ടർബോ ബൂസ്റ്റ്
ആവശ്യമുള്ളപ്പോൾ ഇന്റൽ ടർബോ ബൂസ്റ്റ് പ്രോസസറിനെ വേഗത്തിലാക്കുന്നു, പക്ഷേ അധിക വൈദ്യുതി ഉപയോഗിക്കും. ടർബോ ബൂസ്റ്റ് ഓഫാക്കുന്നത് പ്രോസസറിനെ സ്ഥിരമായ വേഗതയിൽ നിലനിർത്തുന്നു, ഇത് നിർദ്ദിഷ്ട വർക്ക്ലോഡുകൾക്ക് സ്ഥിരതയുള്ള പ്രകടന നിലവാരം നൽകുന്നു.
5.4 ഫയർവാളുകൾ
ഫയർവാളുകൾ പ്രകടനത്തെ, പ്രത്യേകിച്ച് ലേറ്റൻസി പ്രകടനത്തെ ബാധിക്കും.
ആവശ്യമില്ലെങ്കിൽ iptables/firewalld പ്രവർത്തനരഹിതമാക്കുക.
5.5 ആപ്ലിക്കേഷൻ ക്രമീകരണങ്ങൾ
പരമാവധി ബാൻഡ്‌വിഡ്ത്ത് നേടാൻ പലപ്പോഴും ഒരൊറ്റ ത്രെഡ് (ഒറ്റ നെറ്റ്‌വർക്ക് ക്യൂവിന് തുല്യമായത്) പര്യാപ്തമല്ല. ഇന്റൽ അധിഷ്ഠിത പ്രോസസ്സറുകളുള്ള പ്ലാറ്റ്‌ഫോമുകളുമായി താരതമ്യപ്പെടുത്തുമ്പോൾ, AMD പോലുള്ള ചില പ്ലാറ്റ്‌ഫോം ആർക്കിടെക്ചറുകൾ ഒരൊറ്റ ത്രെഡുള്ള കൂടുതൽ Rx പാക്കറ്റുകൾ ഉപേക്ഷിക്കാൻ പ്രവണത കാണിക്കുന്നു.
ടാസ്‌ക്‌സെറ്റ് അല്ലെങ്കിൽ ന്യൂമാക്ട്ൽ പോലുള്ള ഉപകരണങ്ങൾ ഉപയോഗിച്ച് ആപ്ലിക്കേഷനുകൾ NUMA നോഡിലേക്കോ നെറ്റ്‌വർക്ക് ഉപകരണത്തിലേക്കുള്ള ലോക്കൽ CPU കോറുകളിലേക്കോ പിൻ ചെയ്യുന്നത് പരിഗണിക്കുക. സ്റ്റോറേജ് I/O പോലുള്ള ചില വർക്ക്‌ലോഡുകൾക്ക്, ആപ്ലിക്കേഷൻ ഒരു നോൺ-ലോക്കൽ നോഡിലേക്ക് മാറ്റുന്നത് ഗുണം ചെയ്യും.
സാധ്യമെങ്കിൽ നിങ്ങളുടെ ആപ്ലിക്കേഷനിൽ ഉപയോഗിക്കുന്ന ത്രെഡുകളുടെ എണ്ണം വർദ്ധിപ്പിക്കുന്നതിൽ പരീക്ഷണം നടത്തുക.
5.6 കേർണൽ പതിപ്പ്
മിക്ക ആധുനിക ഇൻ-ബോക്സ് കേർണലുകളും പ്രകടനത്തിനായി നന്നായി ഒപ്റ്റിമൈസ് ചെയ്തിട്ടുണ്ട്, പക്ഷേ, നിങ്ങളുടെ ഉപയോഗ സാഹചര്യത്തെ ആശ്രയിച്ച്, കേർണൽ അപ്‌ഡേറ്റ് ചെയ്യുന്നത് മെച്ചപ്പെട്ട പ്രകടനം നൽകിയേക്കാം. ഉറവിടം ഡൗൺലോഡ് ചെയ്യുന്നത് കേർണൽ നിർമ്മിക്കുന്നതിന് മുമ്പ് ചില സവിശേഷതകൾ പ്രാപ്തമാക്കാനോ അപ്രാപ്തമാക്കാനോ നിങ്ങളെ പ്രാപ്തമാക്കുന്നു.
5.7 ഓപ്പറേറ്റിംഗ് സിസ്റ്റം/കേർണൽ സജ്ജീകരണങ്ങൾ
ഓപ്പറേറ്റിംഗ് സിസ്റ്റം ട്യൂണിംഗിനെക്കുറിച്ചുള്ള കൂടുതൽ ഉൾക്കാഴ്ചയ്ക്കായി, Red Hat Enterprise Linux നെറ്റ്‌വർക്ക് പെർഫോമൻസ് ട്യൂണിംഗ് ഗൈഡ് പോലുള്ള ഓപ്പറേറ്റിംഗ് സിസ്റ്റം ട്യൂണിംഗ് ഗൈഡുകൾ പരിശോധിക്കുക.
ട്യൂൺ ചെയ്യേണ്ട ചില സാധാരണ പാരാമീറ്ററുകൾ ഇനിപ്പറയുന്ന പട്ടികയിൽ പട്ടികപ്പെടുത്തിയിരിക്കുന്നു. ഇവ നിർദ്ദേശിക്കപ്പെട്ട ആരംഭ പോയിന്റുകൾ മാത്രമാണെന്നും സ്ഥിരസ്ഥിതികളിൽ നിന്ന് ഇവ മാറ്റുന്നത് സിസ്റ്റത്തിൽ ഉപയോഗിക്കുന്ന ഉറവിടങ്ങൾ വർദ്ധിപ്പിക്കുമെന്നും ശ്രദ്ധിക്കുക. മൂല്യങ്ങൾ വർദ്ധിപ്പിക്കുന്നത് പ്രകടനം മെച്ചപ്പെടുത്താൻ സഹായിക്കുമെങ്കിലും, നൽകിയിരിക്കുന്ന സിസ്റ്റം, വർക്ക്ലോഡ്, ട്രാഫിക് തരം എന്നിവയ്ക്ക് ഏറ്റവും മികച്ചത് എന്താണെന്ന് നിർണ്ണയിക്കാൻ വ്യത്യസ്ത മൂല്യങ്ങൾ ഉപയോഗിച്ച് പരീക്ഷണം നടത്തേണ്ടത് ആവശ്യമാണ്.
താഴെ സൂചിപ്പിച്ചിരിക്കുന്നതുപോലെ Linux-ലെ sysctl യൂട്ടിലിറ്റി ഉപയോഗിച്ച് കേർണൽ പാരാമീറ്ററുകൾ ക്രമീകരിക്കാവുന്നതാണ്.
ലേക്ക് view സിസ്റ്റത്തിലെ rmem, wmem എന്നിവയ്ക്കുള്ള ഡിഫോൾട്ട് മൂല്യങ്ങൾ:
sysctl net.core.rmem_default (സി.എസ്.സി.ടി.എൽ. നെറ്റ്.കോർ.ആർ.എം.ഇ.ഡി.എഫ്.എൽ.)
sysctl net.core.wmem_default (നിർദ്ദിഷ്ട വിലാസം)
മൂല്യങ്ങൾ പരമാവധി (16 MB) ആയി സജ്ജമാക്കുക:
sysctl -w net.core.rmem_max=16777216
sysctl -w net.core.wmem_max=16777216
ഇൻകമിംഗ്, ഔട്ട്ഗോയിംഗ് നെറ്റ്‌വർക്ക് ട്രാഫിക്കിനായി നീക്കിവച്ചിരിക്കുന്ന മെമ്മറിയുടെ അളവ് വ്യക്തമാക്കുന്ന സിസ്റ്റം പാരാമീറ്ററുകളാണ് സോക്കറ്റ് ബഫർ വലുപ്പങ്ങൾ, റിസീവ് ബഫർ (rmem), ട്രാൻസ്മിറ്റ് ബഫർ (wmem) എന്നും അറിയപ്പെടുന്നു.
-w ആർഗ്യുമെന്റ് ഇല്ലാതെ sysctl പ്രവർത്തിപ്പിക്കുന്നത് പാരാമീറ്ററിനെ അതിന്റെ നിലവിലെ സജ്ജീകരണത്തോടെ ലിസ്റ്റ് ചെയ്യുന്നു.

സ്റ്റാക്ക് ക്രമീകരണം വിവരണം
നെറ്റ്.കോർ.ആർഎംഇഎം_ഡിഫോൾട്ട് ഡിഫോൾട്ട് റിസീവ് വിൻഡോ വലുപ്പം
നെറ്റ്.കോർ.ഡബ്ല്യുഎംഇഎം_ഡിഫോൾട്ട് ഡിഫോൾട്ട് ട്രാൻസ്മിറ്റ് വിൻഡോ വലുപ്പം
നെറ്റ്.കോർ.ആർഎംഇഎം_മാക്സ് പരമാവധി റിസീവ് വിൻഡോ വലുപ്പം
നെറ്റ്.കോർ.ഡബ്ല്യുഎംഇഎം_മാക്സ് പരമാവധി ട്രാൻസ്മിറ്റ് വിൻഡോ വലുപ്പം
നെറ്റ്.കോർ.ഓപ്റ്റ്മെം_മാക്സ് പരമാവധി ഓപ്ഷൻ മെമ്മറി ബഫറുകൾ
net.core.netdev_max_backlog (http://www.netdev.com/) കേർണൽ ഡ്രോപ്പ് ചെയ്യാൻ തുടങ്ങുന്നതിനു മുമ്പുള്ള പ്രോസസ്സ് ചെയ്യാത്ത പാക്കറ്റുകളുടെ ബാക്ക്‌ലോഗ്
net.ipv4.tcp_rmem - ക്ലൗഡിൽ ഓൺലൈനിൽ TCP റീഡ് ബഫറുകൾക്കുള്ള മെമ്മറി റിസർവർ
net.ipv4.tcp_wmem - ക്ലൗഡിൽ ഓൺലൈനിൽ TCP സെൻഡ് ബഫറുകൾക്കുള്ള മെമ്മറി റിസർവർ

കേർണൽ, നെറ്റ്‌വർക്ക് സ്റ്റാക്ക്, മെമ്മറി ഹാൻഡ്‌ലർ, സിപിയു വേഗത, പവർ മാനേജ്‌മെന്റ് പാരാമീറ്ററുകൾ എന്നിവ നെറ്റ്‌വർക്ക് പ്രകടനത്തിൽ വലിയ സ്വാധീനം ചെലുത്തും. നെറ്റ്‌വർക്ക് ത്രൂപുട്ട് പ്രൊഫഷണലിന് ബാധകമാക്കുക എന്നതാണ് പൊതുവായ ഒരു ശുപാർശ.file tuned കമാൻഡ് ഉപയോഗിച്ച്. നെറ്റ്‌വർക്കിംഗ് ആപ്ലിക്കേഷനുകൾക്ക് മുൻഗണന നൽകുന്നതിനായി ഇത് കുറച്ച് OS സജ്ജീകരണങ്ങൾ പരിഷ്കരിക്കുന്നു.
പരിശോധിക്കുക:
ട്യൂൺഡ്-അഡ്മിഷൻ സജീവമാണ്
സജ്ജമാക്കുക:
ട്യൂൺഡ്-അഡ്മിഷൻ പ്രോfile നെറ്റ്‌വർക്ക്-ത്രൂപുട്ട്
5.8 നെറ്റ്‌വർക്ക് ഉപകരണ ബാക്ക്‌ലോഗ്
ഇൻകമിംഗ് ട്രാഫിക് ഫലപ്രദമായി കൈകാര്യം ചെയ്യുന്നതിലൂടെയും, പാക്കറ്റ് നഷ്ടം കുറയ്ക്കുന്നതിലൂടെയും, ലേറ്റൻസി കുറയ്ക്കുന്നതിലൂടെയും, ത്രൂപുട്ട് വർദ്ധിപ്പിക്കുന്നതിലൂടെയും നെറ്റ്‌വർക്ക് പ്രകടനം മെച്ചപ്പെടുത്താൻ ഈ സവിശേഷത സഹായിക്കുന്നു. ഇത് മികച്ച ഉപയോക്തൃ അനുഭവത്തിനും വേഗത്തിലുള്ള സിസ്റ്റം പ്രതികരണത്തിനും കാരണമാകുന്നു.
ഡിഫോൾട്ടായി, മിക്ക ലിനക്സ് ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങളിലും ഇത് പ്രാപ്തമാക്കിയിരിക്കുന്നു. ഡിഫോൾട്ട് മൂല്യം പരിശോധിക്കാൻ:
sysctl net.core.netdev_max_backlog -
കേർണൽ പതിപ്പ്, ഹാർഡ്‌വെയർ, മെമ്മറി, വർക്ക്‌ലോഡ് തുടങ്ങിയ ഘടകങ്ങളെ ആശ്രയിച്ച് netdev_max_backlog-നുള്ള പരമാവധി മൂല്യം വ്യത്യാസപ്പെടാം. പല കേസുകളിലും, 8192 ഒരു നല്ല മൂല്യമായി കാണപ്പെടുന്നു. sysctl -w net.core.netdev_max_backlog=8192
5.9 പ്ലാറ്റ്‌ഫോം-നിർദ്ദിഷ്ട കോൺഫിഗറേഷനുകളും ട്യൂണിംഗും
5.9.1 നാലാം തലമുറ ഇന്റൽ® സിയോൺ® സ്കേലബിൾ പ്രോസസ്സറുകൾ

മൂന്നാം തലമുറ ഇന്റൽ സിയോൺ® സ്കേലബിൾ പ്രോസസറുകളെ അപേക്ഷിച്ച് ഇന്റൽ® 4th ജനറേഷൻ ഇന്റൽ® സിയോൺ® സ്കേലബിൾ പ്രോസസറിന്റെ പവർ മാനേജ്മെന്റ് വളരെ ആക്രമണാത്മകമാണ്. കുറഞ്ഞ പവർ അവസ്ഥകളിലേക്ക് കോറുകൾ പ്രവേശിക്കുന്നത് ഒഴിവാക്കാൻ, കൂടുതൽ നേരം ഉണർന്നിരിക്കാൻ ഉപയോഗത്തിലുള്ള കോറുകളുടെ എണ്ണം കുറയ്ക്കാൻ ശ്രമിക്കുക.
ഉയർന്ന പ്രകടനത്തിനായി ശുപാർശ ചെയ്യുന്ന ബയോസ് ക്രമീകരണങ്ങൾ

  1. സിപിയുവിൽ ഹൈപ്പർ-ത്രെഡിംഗ് പ്രാപ്തമാക്കുക/പ്രവർത്തനരഹിതമാക്കുക (വർക്ക്ലോഡ് ആവശ്യകതയെയും പ്രകടന ലക്ഷ്യങ്ങളെയും അടിസ്ഥാനമാക്കി).
  2. സിസ്റ്റം പ്രോ സജ്ജമാക്കുകfile പരമാവധി പ്രകടനത്തിനായി പ്രകടനത്തിലേക്ക്.
    കുറിപ്പ്
    ഇത് ഉയർന്ന വൈദ്യുതി ഉപഭോഗത്തിന് കാരണമാകുന്നു
  3. പവർ കാര്യക്ഷമതയേക്കാൾ പരമാവധി സിപിയു പ്രകടനത്തിന് മുൻഗണന നൽകുന്നതിന് സിപിയു പവർ മാനേജ്‌മെന്റിനെ പരമാവധി പ്രകടനത്തിലേക്ക് സജ്ജമാക്കുക.
  4. ടർബോ ബൂസ്റ്റ് പ്രാപ്തമാക്കുക. സിസ്റ്റം ബയോസ് ക്രമീകരണങ്ങളിൽ ടർബോ ബൂസ്റ്റ് പ്രവർത്തനരഹിതമാക്കുന്നത് സാധാരണയായി സിപിയുവിന്റെ ക്ലോക്ക് വേഗത അതിന്റെ അടിസ്ഥാന ഫ്രീക്വൻസിക്ക് അപ്പുറത്തേക്ക് ചലനാത്മകമായി വർദ്ധിപ്പിക്കുന്നതിൽ നിന്ന് തടയുന്നു.
  5. കുറിപ്പ്
    പരമാവധി പ്രകടനത്തേക്കാൾ സ്ഥിരതയുള്ള പ്രകടനം, പവർ കാര്യക്ഷമത അല്ലെങ്കിൽ താപ മാനേജ്മെന്റ് എന്നിവയ്ക്ക് മുൻഗണന നൽകുന്ന ചില ഉപയോഗ സന്ദർഭങ്ങളിൽ ടർബോ ബൂസ്റ്റ് പ്രവർത്തനരഹിതമാക്കുന്നത് അനുയോജ്യമായേക്കാം.
  6. സിസ്റ്റം വിർച്ച്വലൈസേഷൻ സാങ്കേതികവിദ്യകൾ ഉപയോഗിക്കുന്നില്ലെങ്കിൽ, സിംഗിൾ റൂട്ട് I/O വിർച്ച്വലൈസേഷൻ (SR-IOV) സവിശേഷത ഓഫാക്കുക.
  7. സിപിയു സജീവമായി തുടരാനും കൂടുതൽ ആഴത്തിലുള്ള നിഷ്‌ക്രിയ അവസ്ഥകളിലേക്ക് പ്രവേശിക്കുന്നത് തടയാനും സി-സ്റ്റേറ്റുകൾ പ്രവർത്തനരഹിതമാക്കുക.
  8. CPU സജീവമായി തുടരുന്നുവെന്നും C1E നിഷ്‌ക്രിയ അവസ്ഥയിലേക്ക് പ്രവേശിക്കുന്നില്ലെന്നും ഉറപ്പാക്കാൻ C1E പ്രവർത്തനരഹിതമാക്കുക.
  9. ലഭ്യമായ ഏറ്റവും ഉയർന്ന ഫ്രീക്വൻസിയിൽ പ്രവർത്തിക്കാൻ സിസ്റ്റത്തിന് നിർദ്ദേശം നൽകുന്നതിന് അൺകോർ ഫ്രീക്വൻസി പരമാവധി ആയി സജ്ജമാക്കുക.
  10. ഡെൽ പ്ലാറ്റ്‌ഫോമുകളിൽ, CPU കോറുകളുടെ വ്യക്തവും പ്രവചിക്കാവുന്നതുമായ മാപ്പിംഗ് നൽകുന്നതിന് മൾട്ടിപ്പിൾ APIC ഡിസ്‌ക്രിപ്ഷൻ ടേബിൾ (MADT) കോർ എമുലേഷൻ ലീനിയറിലേക്ക് (അല്ലെങ്കിൽ BIOS-നെ ആശ്രയിച്ച് റൗണ്ട്-റോബിൻ) സജ്ജമാക്കുക.

ഒപ്റ്റിമൈസ് ചെയ്ത പ്രകടനത്തിനായി ശുപാർശ ചെയ്യുന്ന OS ലെവൽ ട്യൂണിംഗുകൾ

  1. സിപിയു ഫ്രീക്വൻസി സ്കെയിലിംഗ് ഗവർണർ പ്രകടനത്തിലേക്ക് സജ്ജമാക്കുക. cpupower frequency-set -g performance cpupower frequency-info
  2. സി-സ്റ്റേറ്റുകൾ പ്രവർത്തനരഹിതമാക്കുക. cpupower idle-set -D0
  3. കോർ Rx (rmem), Tx (wmem) ബഫറുകൾ പരമാവധി മൂല്യത്തിലേക്ക് സജ്ജമാക്കുക. sysctl -w net.core.rmem_max=16777216 sysctl -w net.core.wmem_max=16777216
  4. നെറ്റ്‌വർക്ക് ഉപകരണ ബാക്ക്‌ലോഗ് സജ്ജമാക്കുക. sysctl -w net.core.netdev_max_backlog=8192
  5. ട്യൂൺ ചെയ്ത പ്രോ സജ്ജമാക്കുകfile (ത്രൂപുട്ട്/ലേറ്റൻസിയെ ആശ്രയിച്ച് ജോലിഭാരം).
    ട്യൂൺഡ്-അഡ്മിഷൻ പ്രോfile നെറ്റ്‌വർക്ക്-ത്രൂപുട്ട്

ഒപ്റ്റിമൈസ് ചെയ്ത പ്രകടനത്തിനായി ശുപാർശ ചെയ്യുന്ന അഡാപ്റ്റർ ലെവൽ ട്യൂണിംഗുകൾ

  1. ആപ്ലിക്കേഷൻ ട്രാഫിക്കിനായി ഉപയോഗിക്കേണ്ട ക്യൂകളുടെ എണ്ണം പരിമിതപ്പെടുത്തുക. അനുബന്ധ സിപിയു കോറുകൾ കൂടുതൽ ആഴത്തിലുള്ള നിഷ്‌ക്രിയ അവസ്ഥകളിലേക്ക് പ്രവേശിക്കുന്നത് തടയാൻ ആവശ്യമായ ഏറ്റവും കുറഞ്ഞ ക്യൂകളുടെ എണ്ണം ഉപയോഗിക്കുക (വർക്ക്‌ലോഡിനായി ക്രമീകരിക്കുക): ethtool -L സംയോജിത 32
  2. ഇന്ററപ്റ്റ് മോഡറേഷൻ നിരക്കുകൾ സജ്ജമാക്കുക. ethtool -C അഡാപ്റ്റീവ്-ആർഎക്സ് ഓഫ് അഡാപ്റ്റീവ്-ടിഎക്സ് ഓഫ് ആർഎക്സ്-യുസെക്സ്-ഹൈ 50 ആർഎക്സ്-യുസെക്സ് 50 ടിഎക്സ്-യുസെക്സ് 50
    ജോലിഭാരത്തിന് അനുയോജ്യമായ മൂല്യം കണ്ടെത്താൻ ട്രാൻസ്മിറ്റ്/സ്വീകരിക്കൽ/ഉയർന്ന മുൻഗണനയുള്ള കോളസിംഗ് ടൈമർ കൂടുതലോ (80/100/150/200) കുറവോ (25/20/10/5) ക്രമീകരിക്കാൻ ശ്രമിക്കുക.
  3. Rx/Tx റിംഗ് വലുപ്പങ്ങൾ സജ്ജമാക്കുക. ethtool -G ആർഎക്സ് 4096 ടിഎക്സ് 4096
    കുറിപ്പ്
    ethtool -S| grep ഡ്രോപ്പ് ഉള്ളപ്പോൾ Rx പാക്കറ്റ് ഡ്രോപ്പ് ആകുന്നത് കണ്ടാൽ, റിങ്ങിന്റെ വലുപ്പം <4096 ആയി കുറയ്ക്കാൻ ശ്രമിക്കുക. പാക്കറ്റുകൾ ഡ്രോപ്പ് ചെയ്യപ്പെടാത്ത വർക്ക്ലോഡിന് അനുയോജ്യമായ മൂല്യം കണ്ടെത്താൻ ശ്രമിക്കുക.
  4. IRQ അഫിനിറ്റി സജ്ജമാക്കുക. ലോക്കൽ ടു NIC കോറുകൾ അല്ലെങ്കിൽ നിർദ്ദിഷ്ട കോർ മാപ്പിംഗ് ഉപയോഗിക്കുക (ഇവിടെ # കോറുകൾ പേജ് 1-ൽ 26-ൽ സജ്ജീകരിച്ചിരിക്കുന്ന ക്യൂകളുടെ എണ്ണത്തിന് തുല്യമാണ്. systemctl stop irqbalance set_irq_affinity -X ലോക്കൽ അല്ലെങ്കിൽ set_irq_affinity -X

5.9.2 എഎംഡി ഇപിവൈസി
എഎംഡി ഇപിവൈസി പ്രോസസ്സറുകൾ സെർവറുകൾക്കും ഡാറ്റാ സെന്ററുകൾക്കുമായി നിർമ്മിച്ച ശക്തമായ സിപിയുകളാണ്, എഎംഡിയുടെ സെൻ ആർക്കിടെക്ചറിൽ നിർമ്മിച്ചതാണ്. താഴെയുള്ള ക്രമീകരണങ്ങൾ എഎംഡിയുടെ നാലാം തലമുറ ഇപിവൈസി പരമ്പരയിൽ നിന്നുള്ളതാണ്.
ഉയർന്ന പ്രകടനത്തിനായി ശുപാർശ ചെയ്യുന്ന ബയോസ് ക്രമീകരണങ്ങൾ

  1. CPU പ്രകടനം, വൈദ്യുതി ഉപഭോഗം, മറ്റ് ക്രമീകരണങ്ങൾ എന്നിവ ക്രമീകരിക്കാൻ ഉപയോക്താക്കളെ അനുവദിക്കുന്നതിന് ഇഷ്ടാനുസൃത മോഡ് പ്രവർത്തനക്ഷമമാക്കുക. പ്രകടനത്തിനും ഊർജ്ജ കാര്യക്ഷമതയ്ക്കും ഇടയിലുള്ള മികച്ച സന്തുലിതാവസ്ഥയ്ക്കായി സിസ്റ്റം മികച്ചതാക്കാൻ ഇത് സഹായിക്കുന്നു.
  2. കൂടുതൽ തീവ്രമായ ജോലികൾ കൈകാര്യം ചെയ്യുന്നതിനായി സിപിയുവിന് അതിന്റെ വേഗത സ്വയമേവ വർദ്ധിപ്പിക്കാൻ അനുവദിക്കുന്നതിന് കോർ പെർഫോമൻസ് ബൂസ്റ്റ് പ്രവർത്തനക്ഷമമാക്കുക, അതുവഴി മൊത്തത്തിലുള്ള പ്രകടനം മെച്ചപ്പെടുത്തുന്നു.
  3. പ്രതികരണശേഷി നിലനിർത്താൻ കഴിയുന്ന, സി-സ്റ്റേറ്റുകൾ എന്നറിയപ്പെടുന്ന ആഴത്തിലുള്ള പവർ സേവിംഗ് സ്റ്റേറ്റുകളിലേക്ക് സിപിയു പ്രവേശിക്കുന്നത് തടയാൻ, ആഗോള സി-സ്റ്റേറ്റ് നിയന്ത്രണം പ്രവർത്തനരഹിതമാക്കുക.
    കുറിപ്പ്
    സി-സ്റ്റേറ്റുകൾ പ്രവർത്തനരഹിതമാക്കുന്നത് അധിക വൈദ്യുതി ഉപഭോഗത്തിനും താപ താപനില വർദ്ധനവിനും കാരണമാകും. ജോലിഭാരത്തിനായി രണ്ടും നിരീക്ഷിക്കുക.
  4. വർക്ക്‌ലോഡ് ആവശ്യകതയും പ്രകടന ലക്ഷ്യങ്ങളും അടിസ്ഥാനമാക്കി, സിപിയുവിൽ സൈമൽട്ടേനിയസ് മൾട്ടിത്രെഡിംഗ് (SMT) പ്രവർത്തനക്ഷമമാക്കുക/പ്രവർത്തനരഹിതമാക്കുക. ഇന്റൽ സിപിയുകളിലെ ഹൈപ്പർ ത്രെഡിംഗിന് തുല്യമാണ് SMT.
    കുറിപ്പ്
    ഒപ്റ്റിമൈസ് ചെയ്ത പ്രകടനത്തിന്, ശുപാർശ ചെയ്യുന്ന OS, അഡാപ്റ്റർ ലെവൽ ട്യൂണിംഗിനായി പേജ് 40-ലെ ട്യൂണിംഗ് i13e ഡ്രൈവർ ക്രമീകരണങ്ങളും പേജ് 40-ലെ പ്ലാറ്റ്‌ഫോം ട്യൂണിംഗ് (i19e നോൺ-സ്‌പെസിഫിക്) ഉം കാണുക.

അഡാപ്റ്റർ ബോണ്ടിംഗ്

സെർവർ പരിതസ്ഥിതികളിലെ നെറ്റ്‌വർക്ക് പ്രകടനം, ആവർത്തനം, തെറ്റ് സഹിഷ്ണുത എന്നിവ ഗണ്യമായി മെച്ചപ്പെടുത്താൻ കഴിയുന്ന ശക്തമായ ഒരു സവിശേഷതയാണ് ലിനക്സ് ബോണ്ടിംഗ്. എന്നിരുന്നാലും, ശരിയായി പ്രവർത്തിക്കുന്നതിന് സെർവറിലും സ്വിച്ചിലും അനുയോജ്യമായ നെറ്റ്‌വർക്ക് ഹാർഡ്‌വെയറും ശരിയായ കോൺഫിഗറേഷനും ആവശ്യമാണെന്ന് ശ്രദ്ധിക്കേണ്ടതാണ്.
ലിനക്സിലെ ബോണ്ടിംഗ് ഡ്രൈവർ ഒന്നിലധികം ഫിസിക്കൽ നെറ്റ്‌വർക്ക് ഇന്റർഫേസുകളെ ഒരു ബോണ്ടഡ് ഇന്റർഫേസിലേക്ക് സംയോജിപ്പിക്കാൻ നിങ്ങളെ അനുവദിക്കുന്നു. ഈ ബോണ്ടഡ് ഇന്റർഫേസ് ഓപ്പറേറ്റിംഗ് സിസ്റ്റത്തിലേക്കും ആപ്ലിക്കേഷനുകളിലേക്കും ഒരൊറ്റ വെർച്വൽ നെറ്റ്‌വർക്ക് ഇന്റർഫേസായി ദൃശ്യമാകുന്നു.
കുറിപ്പ്
ബോണ്ട് ഒരു ലോജിക്കൽ ഇന്റർഫേസാണ്, അതിനാൽ ബോണ്ട് ഇന്റർഫേസിൽ നേരിട്ട് CPU അഫിനിറ്റി സജ്ജമാക്കാൻ കഴിയില്ല (ഉദാ.ample, bond0). അതായത്, ഇന്ററപ്റ്റ് ഹാൻഡ്‌ലിംഗിലോ സിപിയു അഫിനിറ്റിയിലോ ഇതിന് നേരിട്ടുള്ള നിയന്ത്രണമില്ല. ബോണ്ടിന്റെ ഭാഗമായ അടിസ്ഥാന ഇന്റർഫേസുകൾക്കായി സിപിയു അഫിനിറ്റി കോൺഫിഗർ ചെയ്തിരിക്കണം.
ബോണ്ടിംഗ് നിരവധി പ്രവർത്തന രീതികൾ നൽകുന്നു, ഓരോന്നിനും അതിന്റേതായ സവിശേഷതകളുണ്ട്.

മോഡ്  ടൈപ്പ് ചെയ്യുക
0 റൗണ്ട് റോബിൻ
1 സജീവ ബാക്കപ്പ്
2 XOR
3 പ്രക്ഷേപണം
4 LACP
5 ട്രാൻസ്മിറ്റ് ലോഡ് ബാലൻസ്
6 അഡാപ്റ്റീവ് ലോഡ് ബാലൻസ്

ലിനക്സിൽ ഒരു ബോണ്ടിംഗ് സൃഷ്ടിക്കുന്നതിന് വ്യത്യസ്ത രീതികളുണ്ട്. ഏറ്റവും സാധാരണമായ രീതികളിൽ ഒന്ന് നെറ്റ്‌വർക്ക് കോൺഫിഗറേഷൻ ഉപയോഗിക്കുക എന്നതാണ്. files (ഉദാample, /etc/network/ ഇന്റർഫേസുകൾ അല്ലെങ്കിൽ /etc/sysconfig/network-scripts/ifcfg-bondX).
നെറ്റ്‌വർക്ക് കോൺഫിഗറേഷൻ ഉപയോഗിച്ചുള്ള കോൺഫിഗറേഷൻ Files
നെറ്റ്‌വർക്ക് കോൺഫിഗറേഷനിലൂടെ ബോണ്ടിംഗ് സൃഷ്ടിക്കുന്നതിനുള്ള ഘട്ടങ്ങൾ ഇവയാണ്: files.

  1. ബോണ്ടിംഗിനായി രണ്ടോ അതിലധികമോ NIC പോർട്ടുകൾ തിരഞ്ഞെടുക്കുക (ഉദാ.ample, ethX, ethY)
  2. എൻഐസി കോൺഫിഗറേഷൻ തുറക്കുക Fileആവശ്യമായ NIC ഇന്റർഫേസിനായി /etc/sysconfig/network-scripts/ ന് കീഴിൽ s (ഉദാ.ample, vi ifcfg-ethX ഉം vi ifcfg-ethY ഉം) ചേർത്ത് താഴെ പറയുന്ന വാചകം ചേർക്കുക:
    MASTER=bondN [കുറിപ്പ്: ബോണ്ട് നമ്പർ സൂചിപ്പിക്കാൻ N ഒരു പൂർണ്ണസംഖ്യയാണ്.] SLAVE=അതെ
  3. ഒരു ബോണ്ട് നെറ്റ്‌വർക്ക് സ്ക്രിപ്റ്റ് സൃഷ്ടിക്കുക file vi /etc/sysconfig/networkscripts/ifcfg-bondN ഉപയോഗിച്ച് താഴെ പറയുന്ന ടെക്സ്റ്റ് നൽകുക:
    DEVICE=bondN [കുറിപ്പ്: ബോണ്ട് നമ്പർ സൂചിപ്പിക്കാൻ N ഒരു പൂർണ്ണസംഖ്യയാണ്] ONBOOT=അതെ USERCTL=ഇല്ല BOOTPROTO=dhcp (അല്ലെങ്കിൽ) ഒന്നുമില്ല
    IPADDR=200.20.2.4 [BOOTPROTO=none ആണെങ്കിൽ ആവശ്യമാണ്] NETMASK=255.255.255.0 [BOOTPROTO=none ആണെങ്കിൽ ആവശ്യമാണ്] NETWORK=200.20.2.0 [BOOTPROTO=none ആണെങ്കിൽ ആവശ്യമാണ്] BROADCAST=200.20.2.255 [BOOTPROTO=none ആണെങ്കിൽ ആവശ്യമാണ്] BONDING_OPTS=”mode=1 miimon=100″
    കുറിപ്പ്
    ആവശ്യകതയെ അടിസ്ഥാനമാക്കി മോഡ് 0 മുതൽ 6 വരെയുള്ള ഏത് പൂർണ്ണസംഖ്യയും ആകാം.
  4. സർവീസ് നെറ്റ്‌വർക്ക് റീസ്റ്റാർട്ട് അല്ലെങ്കിൽ systemctl റീസ്റ്റാർട്ട് ഉപയോഗിച്ച് നെറ്റ്‌വർക്ക് സേവനങ്ങൾ പുനരാരംഭിക്കുക NetworkManager.service

പ്രകടന ട്രബിൾഷൂട്ടിംഗ്

7.1 സിപിയു ഉപയോഗം
വർക്ക്‌ലോഡ് പ്രവർത്തിക്കുമ്പോൾ ഓരോ കോറിനും CPU ഉപയോഗം പരിശോധിക്കുക.
ഓരോ കോറിന്റെയും ഉപയോഗം മൊത്തത്തിലുള്ള CPU ഉപയോഗത്തേക്കാൾ പ്രകടനത്തിന് കൂടുതൽ പ്രസക്തമാണെന്ന് ശ്രദ്ധിക്കുക, കാരണം ഇത് ഓരോ നെറ്റ്‌വർക്ക് ക്യൂവിലെയും CPU ഉപയോഗത്തെക്കുറിച്ചുള്ള ഒരു ആശയം നൽകുന്നു. നിങ്ങൾക്ക് നെറ്റ്‌വർക്ക് ട്രാഫിക് പ്രവർത്തിപ്പിക്കുന്ന കുറച്ച് ത്രെഡുകൾ മാത്രമേ ഉള്ളൂവെങ്കിൽ, നിങ്ങൾക്ക് കുറച്ച് കോറുകൾ മാത്രമേ ഉപയോഗിക്കാൻ കഴിയൂ. എന്നിരുന്നാലും, ആ കോറുകൾ 100% ആണെങ്കിൽ, നിങ്ങളുടെ നെറ്റ്‌വർക്ക് ത്രൂപുട്ട് CPU ഉപയോഗത്താൽ പരിമിതപ്പെടുത്തിയിരിക്കാം, ഇനിപ്പറയുന്നവ ചെയ്യേണ്ട സമയമാണിത്:

  1. ഇന്ററപ്റ്റ് മോഡറേഷനിൽ വിശദമാക്കിയിരിക്കുന്നതുപോലെ IRQ മോഡറേഷൻ/റിംഗ് സൈസ് ട്യൂൺ ചെയ്യുക.
  2. കൂടുതൽ കോറുകളിലേക്ക് CPU ലോഡ് വ്യാപിപ്പിക്കുന്നതിന് ആപ്ലിക്കേഷൻ ത്രെഡുകളുടെ എണ്ണം വർദ്ധിപ്പിക്കുക. എല്ലാ കോറുകളും 100% ൽ പ്രവർത്തിക്കുന്നുണ്ടെങ്കിൽ, നിങ്ങളുടെ ആപ്ലിക്കേഷൻ നെറ്റ്‌വർക്ക് ബന്ധിതമാകുന്നതിനു പകരം CPU ബന്ധിതമാകാം.

സാധാരണയായി ലഭ്യമായ ഉപകരണങ്ങൾ:

  • മുകളിൽ
    — CPU-കളുടെ പട്ടിക വികസിപ്പിക്കുന്നതിനും ഏതൊക്കെയാണ് ഉപയോഗിക്കുന്നതെന്ന് പരിശോധിക്കുന്നതിനും 1 അമർത്തുക.
    — ഉപയോഗത്തിന്റെ തോത് ശ്രദ്ധിക്കുക.
    — ഏതൊക്കെ പ്രക്രിയകളാണ് ഏറ്റവും സജീവമായി പട്ടികപ്പെടുത്തിയിരിക്കുന്നതെന്ന് ശ്രദ്ധിക്കുക (പട്ടികയുടെ മുകളിൽ).
  • എംപിസ്റ്റാറ്റ്
    ഇനിപ്പറയുന്ന മുൻampകമാൻഡ് ലൈൻ Red Hat Enterprise Linux 7.x-ൽ പരീക്ഷിച്ചു.
    ഇത് ഓരോ കോറിനും CPU ഉപയോഗം പ്രദർശിപ്പിക്കുന്നു (മൊത്തം ശതമാനം നിഷ്‌ക്രിയത്വം കണ്ടെത്തി 100 ൽ നിന്ന് കുറയ്ക്കുന്നതിലൂടെ) കൂടാതെ 80% ന് മുകളിലുള്ള മൂല്യങ്ങൾ ചുവപ്പിൽ ഹൈലൈറ്റ് ചെയ്യുന്നു. mpstat -P ALL 1 1 | grep -v ശരാശരി | tail -n +5 | head -n -1 | awk '{ print (100-$13)}' | egrep -color=always '[^\.][8-9][0-9][\.]?.*|^[8-9][0-9][\.]?.*| 100|' | കോളം
  • പെർഫ് ടോപ്പ് സൈക്കിളുകൾ എവിടെയാണ് ചെലവഴിക്കുന്നതെന്ന് നോക്കുക.

7.2 i40e കൗണ്ടറുകൾ
ethtool -S ethX കമാൻഡ് വഴി ഇന്റർഫേസ് ഡീബഗ്ഗിനും മോണിറ്ററിംഗിനുമുള്ള കൗണ്ടറുകളുടെ ഒരു നീണ്ട പട്ടിക i40e ഡ്രൈവർ നൽകുന്നു. ഒരു വർക്ക്ലോഡ് പ്രവർത്തിക്കുമ്പോൾ ഔട്ട്പുട്ട് നിരീക്ഷിക്കുന്നതും/അല്ലെങ്കിൽ വർക്ക്ലോഡ് റൺ ചെയ്യുന്നതിന് മുമ്പും ശേഷവുമുള്ള കൗണ്ടർ മൂല്യങ്ങൾ താരതമ്യം ചെയ്യുന്നതും സഹായകരമാകും.

  • i40e കൗണ്ടറുകളുടെ പൂർണ്ണ ഡംപ് ലഭിക്കാൻ: ethtool -S ethX
  • പൂജ്യം അല്ലാത്ത കൗണ്ടറുകൾ മാത്രം കാണാൻ: watch -d (ethtool -S ethX) | egrep -v :\ 0 | കോളം
    ശ്രദ്ധിക്കേണ്ട ചില കാര്യങ്ങൾ:
  • rx_dropped എന്നാൽ CPU ബഫറുകൾക്ക് വേണ്ടത്ര വേഗത്തിൽ സേവനം നൽകുന്നില്ല എന്നാണ് അർത്ഥമാക്കുന്നത്.
  • port.rx_dropped എന്നതിന്റെ അർത്ഥം സ്ലോട്ട്/മെമ്മറി/ സിസ്റ്റത്തിൽ എന്തെങ്കിലും ആവശ്യത്തിന് വേഗതയില്ല എന്നാണ്.

7.3 നെറ്റ്‌വർക്ക് കൗണ്ടറുകൾ
വർക്ക്‌ലോഡ് റൺ ചെയ്യുന്നതിന് മുമ്പോ ശേഷമോ netstat -s പരിശോധിക്കുക.
സിസ്റ്റത്തിലെ എല്ലാ നെറ്റ്‌വർക്ക് ഉപകരണങ്ങളിൽ നിന്നും നെറ്റ്‌സ്റ്റാറ്റ് നെറ്റ്‌വർക്ക് വിവരങ്ങൾ ശേഖരിക്കുന്നു. അതിനാൽ, പരീക്ഷണത്തിലിരിക്കുന്ന നെറ്റ്‌വർക്ക് ഒഴികെയുള്ള മറ്റ് നെറ്റ്‌വർക്കുകളിൽ നിന്നുള്ള ഫലങ്ങളെ ഇത് ബാധിച്ചേക്കാം. ലിനക്സ് ഓപ്പറേറ്റിംഗ് സിസ്റ്റത്തിലോ കേർണലിലോ ഉള്ള പ്രകടന പ്രശ്‌നങ്ങളുടെ ഒരു നല്ല സൂചകമായിരിക്കാം netstat -s-ൽ നിന്നുള്ള ഔട്ട്‌പുട്ട്. പൊതുവായ ഓപ്പറേറ്റിംഗ് സിസ്റ്റം ട്യൂണിംഗിനെക്കുറിച്ചുള്ള കൂടുതൽ ഉൾക്കാഴ്ചയ്ക്കായി, Red Hat Enterprise Linux നെറ്റ്‌വർക്ക് പെർഫോമൻസ് ട്യൂണിംഗ് ഗൈഡ് പോലുള്ള ഓപ്പറേറ്റിംഗ് സിസ്റ്റം ട്യൂണിംഗ് ഗൈഡുകൾ പരിശോധിക്കുക.
7.4 സിസ്റ്റം ലോഗുകൾ
പിശകുകൾക്കും മുന്നറിയിപ്പുകൾക്കുമായി സിസ്റ്റം ലോഗുകൾ പരിശോധിക്കുക (/var/log/messages, dmesg).
7.5 ഇന്റൽ എസ്വിആർ-ഇൻഫോ ടൂൾ
ഇന്റൽ ഒരു svr-info ടൂൾ നൽകുന്നു (കാണുക https://github.com/intel/svr-info) ഒരു സെർവറിൽ നിന്ന് പ്രസക്തമായ ഹാർഡ്‌വെയർ, സോഫ്റ്റ്‌വെയർ വിശദാംശങ്ങൾ പിടിച്ചെടുക്കുന്ന Linux-ന്. വർക്ക്‌ലോഡിനായി ഒപ്റ്റിമൈസ് ചെയ്യാത്ത സിസ്റ്റം തടസ്സങ്ങളോ ക്രമീകരണങ്ങളോ/ട്യൂണിങ്ങുകളോ തിരിച്ചറിയാൻ svr-info ഔട്ട്‌പുട്ട് വളരെയധികം സഹായകമാകും. ഇഥർനെറ്റുമായി ബന്ധപ്പെട്ട പ്രകടന പ്രശ്‌നങ്ങൾക്കായി ഇന്റലുമായി ഒരു പിന്തുണാ കേസ് തുറക്കുമ്പോൾ, svr-info ഔട്ട്‌പുട്ട് ഉൾപ്പെടുത്തുന്നത് ഉറപ്പാക്കുക (ടെക്‌സ്റ്റ് file) ടെസ്റ്റ് കോൺഫിഗറേഷനിലെ ഓരോ ലിനക്സ് സെർവറിനും.

  1. svr-info ഡൗൺലോഡ് ചെയ്ത് ഇൻസ്റ്റാൾ ചെയ്യുക:
    wget -qO- https://github.com/intel/svr-info/releases/latest/download/svrinfo.tgz| ടാർ എക്സ്വിസെഡ് സിഡി എസ്വിആർ-വിവരം
    ./svr-വിവരം
    > ഹോസ്റ്റ്നെയിം.txt
  2. ഔട്ട്പുട്ട് ശേഖരിക്കുക:
    ./svr-info > ഹോസ്റ്റ്നെയിം.txt
  3. ഒരു ടെക്സ്റ്റ് (.txt) അറ്റാച്ചുചെയ്യുക file വിശകലനത്തിനായി നിങ്ങളുടെ ഇന്റൽ പിന്തുണാ കേസിലേക്ക് ഓരോ സെർവറിനും.

പൊതുവായ പ്രകടന സാഹചര്യങ്ങൾക്കുള്ള ശുപാർശകൾ

8.1 ഐപി ഫോർവേഡിംഗ്

  • കേർണൽ അപ്ഡേറ്റ് ചെയ്യുക.
    സുരക്ഷ കാരണം റൂട്ടിംഗ് കാഷെ നീക്കം ചെയ്തതു മുതൽ റൂട്ടിംഗ് കോഡിലെ കേർണൽ മാറ്റങ്ങൾ കാരണം ചില സമീപകാല ഇൻ-ഡിസ്ട്രോ കേർണലുകൾ റൂട്ടിംഗ് പ്രകടനത്തെ മോശമാക്കി. ഈ മാറ്റങ്ങളുടെ പ്രകടന ആഘാതം ലഘൂകരിക്കുന്നതും മെച്ചപ്പെട്ട പ്രകടനം നൽകുന്നതുമായ പാച്ചുകൾ സമീപകാലത്ത് ഡിസ്ട്രോയിൽ നിന്ന് പുറത്തുപോയ കേർണലുകളിൽ ഉണ്ടായിരിക്കണം.
  • ഹൈപ്പർ-ത്രെഡിംഗ് (ലോജിക്കൽ കോറുകൾ) പ്രവർത്തനരഹിതമാക്കുക.
  • കേർണൽ ബൂട്ട് പാരാമീറ്ററുകൾ എഡിറ്റ് ചെയ്യുക.
    — വിർച്ച്വലൈസേഷന് ആവശ്യമില്ലെങ്കിൽ കേർണൽ ബൂട്ട് ലൈനിൽ നിന്ന് iommu നിർബന്ധിച്ച് ഓഫ് ചെയ്യുക (intel_iommu=off അല്ലെങ്കിൽ iommu=off).
    — പവർ മാനേജ്മെന്റ് ഓഫ് ചെയ്യുക: processor.max_cstates=1 idle=poll pcie_aspm=off
  • ലോക്കൽ സോക്കറ്റിലെ കോറുകളുടെ എണ്ണത്തിന് തുല്യമായി ക്യൂകളുടെ എണ്ണം പരിമിതപ്പെടുത്തുക (ഈ ഉദാഹരണത്തിൽ 12ample). ethtool -L ethX സംയുക്തം 12
  • ലോക്കൽ സോക്കറ്റിലേക്ക് മാത്രമേ പിൻ ഇന്ററപ്റ്റുകൾ നൽകുന്നുള്ളൂ. set_irq_affinity -X ലോക്കൽ ethX അല്ലെങ്കിൽ set_irq_affinity -X ലോക്കൽ ethX
    കുറിപ്പ്
    ജോലിഭാരം അനുസരിച്ച് -X അല്ലെങ്കിൽ -x ഉപയോഗിക്കാം.
  • ആവശ്യാനുസരണം Tx, Rx റിംഗ് വലുപ്പങ്ങൾ മാറ്റുക. ഒരു വലിയ മൂല്യത്തിന് കൂടുതൽ ഉറവിടങ്ങൾ ആവശ്യമാണ്, പക്ഷേ മികച്ച ഫോർവേഡിംഗ് നിരക്കുകൾ നൽകാൻ കഴിയും. ethtool -G ethX rx 4096 tx 4096
  • റൂട്ടിംഗ് നടത്തുമ്പോൾ GRO പ്രവർത്തനരഹിതമാക്കുക.
    അറിയപ്പെടുന്ന ഒരു കേർണൽ പ്രശ്നം കാരണം, റൂട്ടിംഗ്/ഫോർവേഡിംഗ് ചെയ്യുമ്പോൾ GRO ഓഫ് ചെയ്യണം. ethtool -K ethX gro ഓഫ് ചെയ്യുക, ഇവിടെ ethX എന്നത് പരിഷ്കരിക്കേണ്ട Ethernet ഇന്റർഫേസാണ്.
  • അഡാപ്റ്റീവ് ഇന്ററപ്റ്റ് മോഡറേഷൻ പ്രവർത്തനരഹിതമാക്കി ഒരു സ്റ്റാറ്റിക് മൂല്യം സജ്ജമാക്കുക. ethtool -C ethX adaptive-rx ഓഫ് adaptive-tx ഓഫ് ethtool -C ethX rx-usecs 64 tx-usecs 64

കുറിപ്പ്
പ്രോസസ്സറിന്റെ തരത്തെയും ജോലിഭാരത്തെയും ആശ്രയിച്ച്, മെച്ചപ്പെട്ട പ്രകടനത്തിനായി (അല്ലെങ്കിൽ കുറഞ്ഞ ഫ്രെയിം നഷ്ടത്തിനായി) RX, TX എന്നിവയ്‌ക്കുള്ള കോൾസിംഗ് പാരാമീറ്ററുകൾ ക്രമീകരിക്കാൻ കഴിയും.

  • ഫയർവാൾ പ്രവർത്തനരഹിതമാക്കുക. sudo systemctl ഫയർവാൾ ഡിസേബിൾ ചെയ്യുക sudo systemctl സ്റ്റോപ്പ് ഫയർവാൾഡ്
  • ഐപി ഫോർവേഡിംഗ് പ്രാപ്തമാക്കുക. sysctl -w net.ipv4.ip_forward=1
  • സ്വീകരിക്കുന്നതിനും അയയ്ക്കുന്നതിനുമുള്ള സോക്കറ്റ് ബഫർ വലുപ്പങ്ങൾക്കായി പരമാവധി മൂല്യങ്ങൾ കോൺഫിഗർ ചെയ്യുക. sysctl -w net.core.rmem_max=16777216 sysctl -w net.core.wmem_max=16777216

കുറിപ്പ്
ജോലിഭാരം അല്ലെങ്കിൽ ആവശ്യകത അനുസരിച്ച്, ഈ മൂല്യങ്ങൾ സ്ഥിരസ്ഥിതിയിൽ നിന്ന് മാറ്റാവുന്നതാണ്.
8.2 കുറഞ്ഞ ലേറ്റൻസി

  • ഹൈപ്പർ-ത്രെഡിംഗ് (ലോജിക്കൽ കോറുകൾ) ഓഫ് ചെയ്യുക.
  • നെറ്റ്‌വർക്ക് ഉപകരണം numa core 0-ലേക്ക് ലോക്കൽ ആണെന്ന് ഉറപ്പാക്കുക.
  • ടാസ്‌ക്‌സെറ്റ് -c 0 ഉപയോഗിച്ച് ബെഞ്ച്മാർക്ക് കോർ 0 ലേക്ക് പിൻ ചെയ്യുക.
  • systemctl stop irqbalance അല്ലെങ്കിൽ systemctl disable irqbalance ഉപയോഗിച്ച് irqbalance ഓഫാക്കുക.
  • കോറുകളിലുടനീളം വ്യാപിപ്പിക്കാൻ അഫിനിറ്റി സ്ക്രിപ്റ്റ് പ്രവർത്തിപ്പിക്കുക. ലോക്കൽ അല്ലെങ്കിൽ എല്ലാം പരീക്ഷിക്കുക.
  • ഇന്ററപ്റ്റ് മോഡറേഷൻ ഓഫ് ചെയ്യുക. ethtool -C ethX rx-usecs 0 tx-usecs 0 adaptive-rx off adaptive-tx off rxusecs- high 0
  • ലോക്കൽ സോക്കറ്റിലെ കോറുകളുടെ എണ്ണത്തിന് തുല്യമായി ക്യൂകളുടെ എണ്ണം പരിമിതപ്പെടുത്തുക (ഈ ഉദാഹരണത്തിൽ 32ample). ethtool -L ethX സംയുക്തം 32
  • ലോക്കൽ സോക്കറ്റിലേക്ക് മാത്രം പിൻ ഇന്ററപ്റ്റുകൾ നൽകുന്നു (i40e ഡ്രൈവർ സോഴ്‌സുമായി പാക്കേജുചെയ്‌ത സ്ക്രിപ്റ്റ്). set_irq_affinity -X ലോക്കൽ ethX
  • netperf -t TCP_RR, netperf -t UDP_RR, അല്ലെങ്കിൽ NetPipe പോലുള്ള ഒരു സ്ഥാപിത ബെഞ്ച്മാർക്ക് ഉപയോഗിക്കുക. netperf -t TCP_RR അല്ലെങ്കിൽ netperf -t UDP_RR
  • ലോക്കൽ NUMA നോഡിലെ ഒരൊറ്റ കോറിലേക്ക് ബെഞ്ച്മാർക്ക് പിൻ ചെയ്യുക. ടാസ്‌ക്കറ്റ് -c

ഇന്റൽ ® ഇതർനെറ്റ് 700 സീരീസ്
ലിനക്സ് പ്രകടന ട്യൂണിംഗ് ഗൈഡ്
ഡിസംബർ 2024
ഡോക്. നമ്പർ: 334019, റെവ.: 1.2

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

ഇന്റൽ ഇതർനെറ്റ് 700 സീരീസ് ലിനക്സ് പെർഫോമൻസ് ട്യൂണിംഗ് [pdf] ഉപയോക്തൃ ഗൈഡ്
334019, ഇതർനെറ്റ് 700 സീരീസ് ലിനക്സ് പെർഫോമൻസ് ട്യൂണിംഗ്, ഇതർനെറ്റ് 700 സീരീസ്, ലിനക്സ് പെർഫോമൻസ് ട്യൂണിംഗ്, പെർഫോമൻസ് ട്യൂണിംഗ്, ട്യൂണിംഗ്

റഫറൻസുകൾ

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

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