Ubuntu Online, Fedora Online, Windows online emulator അല്ലെങ്കിൽ MAC OS ഓൺലൈൻ എമുലേറ്റർ എന്നിങ്ങനെയുള്ള ഞങ്ങളുടെ ഒന്നിലധികം സൗജന്യ ഓൺലൈൻ വർക്ക്സ്റ്റേഷനുകളിലൊന്ന് ഉപയോഗിച്ച് OnWorks സൗജന്യ ഹോസ്റ്റിംഗ് ദാതാവിൽ പ്രവർത്തിപ്പിക്കാവുന്ന pg_test_timing കമാൻഡ് ആണിത്.
പട്ടിക:
NAME
pg_test_timing - ഓവർഹെഡ് സമയം അളക്കുക
സിനോപ്സിസ്
pg_test_timeing [ഓപ്ഷൻ...]
വിവരണം
നിങ്ങളുടെ സിസ്റ്റത്തിലെ ടൈമിംഗ് ഓവർഹെഡ് അളക്കുന്നതിനും അത് സ്ഥിരീകരിക്കുന്നതിനുമുള്ള ഒരു ഉപകരണമാണ് pg_test_timing
സിസ്റ്റം സമയം ഒരിക്കലും പിന്നിലേക്ക് നീങ്ങുന്നില്ല. സമയ ഡാറ്റ ശേഖരിക്കാൻ മന്ദഗതിയിലുള്ള സിസ്റ്റങ്ങൾക്ക് കഴിയും
കുറച്ച് കൃത്യത നൽകുക വിശദീകരിക്കുക വിശകലനം ചെയ്യുക ഫലങ്ങൾ.
ഓപ്ഷനുകൾ
pg_test_timing ഇനിപ്പറയുന്ന കമാൻഡ്-ലൈൻ ഓപ്ഷനുകൾ സ്വീകരിക്കുന്നു:
-d കാലാവധി
--ദൈർഘ്യം=കാലാവധി
സെക്കന്റുകൾക്കുള്ളിൽ ടെസ്റ്റ് ദൈർഘ്യം വ്യക്തമാക്കുന്നു. ദൈർഘ്യമേറിയ ദൈർഘ്യം അൽപ്പം മികച്ചതാണ്
കൃത്യത, കൂടാതെ സിസ്റ്റം ക്ലോക്ക് ചലിക്കുന്നതിലെ പ്രശ്നങ്ങൾ കണ്ടെത്താനുള്ള സാധ്യത കൂടുതലാണ്
പിന്നിലേക്ക്. ഡിഫോൾട്ട് ടെസ്റ്റ് ദൈർഘ്യം 3 സെക്കൻഡാണ്.
-V
--പതിപ്പ്
pg_test_timing പതിപ്പ് പ്രിന്റ് ചെയ്ത് പുറത്തുകടക്കുക.
-?
--സഹായിക്കൂ
pg_test_timing കമാൻഡ് ലൈൻ ആർഗ്യുമെന്റുകളെക്കുറിച്ചുള്ള സഹായം കാണിച്ച് പുറത്തുകടക്കുക.
USAGE
വ്യാഖ്യാനിക്കുന്നു ഫലം
മിക്ക (>90%) വ്യക്തിഗത സമയ കോളുകൾക്കും ഒരു മൈക്രോസെക്കൻഡിൽ താഴെ സമയമെടുക്കുമെന്ന് നല്ല ഫലങ്ങൾ കാണിക്കും.
ഓരോ ലൂപ്പിനും ഓവർഹെഡിന്റെ ശരാശരി ഇതിലും കുറവായിരിക്കും, 100 നാനോ സെക്കൻഡിൽ താഴെ. ഒരു മുതൽ ഈ ഉദാഹരണം
TSC ക്ലോക്ക് ഉറവിടം ഉപയോഗിക്കുന്ന ഇന്റൽ i7-860 സിസ്റ്റം മികച്ച പ്രകടനം കാണിക്കുന്നു:
3 സെക്കൻഡ് നേരത്തേക്ക് ടൈമിംഗ് ഓവർഹെഡ് പരിശോധിക്കുന്നു.
ഓവർഹെഡ് ഉൾപ്പെടെ ഓരോ ലൂപ്പ് സമയം: 35.96 സെ
സമയ ദൈർഘ്യങ്ങളുടെ ഹിസ്റ്റോഗ്രാം:
<പയോഗിക്കുന്നത് മൊത്തം എണ്ണത്തിന്റെ %
1 96.40465 80435604
2 3.59518 2999652
4 0.00015 126
8 0.00002 13
16 0.00000 2
ഓരോ ലൂപ്പിനും ഹിസ്റ്റോഗ്രാമിനേക്കാൾ വ്യത്യസ്ത യൂണിറ്റുകൾ ഉപയോഗിക്കുന്നു എന്നത് ശ്രദ്ധിക്കുക. ലൂപ്പിന് കഴിയും
കുറച്ച് നാനോസെക്കൻഡുകൾക്കുള്ളിൽ (എൻഎസ്സി) റെസല്യൂഷൻ ഉണ്ടായിരിക്കും, അതേസമയം വ്യക്തിഗത സമയ കോളുകൾക്ക് കഴിയും
ഒരു മൈക്രോസെക്കൻഡ് (ഉപയോഗം) വരെ മാത്രം പരിഹരിക്കുക.
അളന്നു എക്സിക്യൂട്ടർ സമയത്തിന്റെ ഓവർഹെഡ്
ക്വറി എക്സിക്യൂട്ടർ ഒരു പ്രസ്താവന പ്രവർത്തിപ്പിക്കുമ്പോൾ വിശദീകരിക്കുക വിശകലനം ചെയ്യുക, വ്യക്തി
ഒരു സംഗ്രഹം കാണിക്കുന്നതിനൊപ്പം പ്രവർത്തനങ്ങൾ സമയബന്ധിതവുമാണ്. നിങ്ങളുടെ സിസ്റ്റത്തിന്റെ ഓവർഹെഡ് ആകാം
psql പ്രോഗ്രാം ഉപയോഗിച്ച് വരികൾ എണ്ണി പരിശോധിച്ചു:
ജനറേറ്റ്_സീരീസ് (1,100000) ൽ നിന്ന് * തിരഞ്ഞെടുത്തത് പോലെ പട്ടിക സൃഷ്ടിക്കുക;
\സമയത്തിന്റെ
ടിയിൽ നിന്ന് COUNT(*) തിരഞ്ഞെടുക്കുക;
ടിയിൽ നിന്ന് തിരഞ്ഞെടുത്ത എണ്ണം (*) വിശകലനം ചെയ്യുക;
അളന്ന i7-860 സിസ്റ്റം 9.8 ms-ൽ കൗണ്ട് ക്വറി പ്രവർത്തിപ്പിക്കുന്നു വിശദീകരിക്കുക വിശകലനം ചെയ്യുക
പതിപ്പിന് 16.6 എംഎസ് എടുക്കും, ഓരോന്നിനും 100,000 വരികൾ മാത്രം. ആ 6.8 എംഎസ് വ്യത്യാസം
ഓരോ വരിയുടെയും ഓവർഹെഡ് സമയം 68 ns ആണ്, pg_test_timing കണക്കാക്കിയതിന്റെ ഇരട്ടി
ആയിരിക്കും. താരതമ്യേന ചെറിയ തുകയുടെ ഓവർഹെഡ് പോലും സമയബന്ധിതമായ കണക്ക് കൂട്ടുന്നു
പ്രസ്താവന ഏകദേശം 70% കൂടുതൽ സമയം എടുക്കും. കൂടുതൽ കാര്യമായ അന്വേഷണങ്ങളിൽ, ടൈമിംഗ് ഓവർഹെഡ് ആയിരിക്കും
പ്രശ്നങ്ങൾ കുറവായിരിക്കുക.
മാറ്റുന്നതിൽ കാലം ഉറവിടങ്ങൾ
ചില പുതിയ Linux സിസ്റ്റങ്ങളിൽ, ശേഖരിക്കാൻ ഉപയോഗിക്കുന്ന ക്ലോക്ക് ഉറവിടം മാറ്റാൻ സാധിക്കും
ഏത് സമയത്തും സമയ ഡാറ്റ. ഇതിലേക്ക് മാറുന്നതിൽ നിന്ന് സാധ്യമായ മന്ദതയെ രണ്ടാമത്തെ ഉദാഹരണം കാണിക്കുന്നു
വേഗത കുറഞ്ഞ acpi_pm സമയ ഉറവിടം, മുകളിലെ വേഗത്തിലുള്ള ഫലങ്ങൾക്കായി ഉപയോഗിച്ച അതേ സിസ്റ്റത്തിൽ:
# പൂച്ച /sys/devices/system/clocksource/clocksource0/available_clocksource
tsc hpet acpi_pm
# echo acpi_pm > /sys/devices/system/clocksource/clocksource0/current_clocksource
# പിജി_ടെസ്റ്റ്_ടൈമിംഗ്
ഓവർഹെഡ് ഉൾപ്പെടെ ഓരോ ലൂപ്പ് സമയം: 722.92 സെ
സമയ ദൈർഘ്യങ്ങളുടെ ഹിസ്റ്റോഗ്രാം:
<പയോഗിക്കുന്നത് മൊത്തം എണ്ണത്തിന്റെ %
1 27.84870 1155682
2 72.05956 2990371
4 0.07810 3241
8 0.01357 563
16 0.00007 3
ഈ കോൺഫിഗറേഷനിൽ, സാമ്പിൾ വിശദീകരിക്കുക വിശകലനം ചെയ്യുക മുകളിൽ 115.9 ms എടുക്കുന്നു. അതായത് 1061 സെക്കൻഡ്
ടൈമിംഗ് ഓവർഹെഡിന്റെ, വീണ്ടും ഈ യൂട്ടിലിറ്റി നേരിട്ട് അളക്കുന്നതിന്റെ ഒരു ചെറിയ ഗുണിതം.
അത്രയും ടൈമിംഗ് ഓവർഹെഡ് അർത്ഥമാക്കുന്നത് യഥാർത്ഥ അന്വേഷണം തന്നെ ഒരു ചെറിയ ഭാഗം മാത്രമേ എടുക്കുന്നുള്ളൂ എന്നാണ്
സമയം കണക്കാക്കി, അതിന്റെ ഭൂരിഭാഗവും ഓവർഹെഡിൽ ഉപയോഗിക്കപ്പെടുന്നു. ഇതിൽ
കോൺഫിഗറേഷൻ, ഏതെങ്കിലും വിശദീകരിക്കുക വിശകലനം ചെയ്യുക സമയബന്ധിതമായ നിരവധി പ്രവർത്തനങ്ങൾ ഉൾപ്പെടുന്ന ആകെ തുക
ഓവർഹെഡ് സമയം കൊണ്ട് ഗണ്യമായി വർദ്ധിപ്പിക്കുന്നു.
ഫ്രീബിഎസ്ഡി ഫ്ലൈയിൽ സമയ സ്രോതസ്സ് മാറ്റാനും അനുവദിക്കുന്നു, കൂടാതെ ഇത് സംബന്ധിച്ച വിവരങ്ങൾ ലോഗ് ചെയ്യുന്നു
ബൂട്ട് സമയത്ത് തിരഞ്ഞെടുത്ത ടൈമർ:
# dmesg | grep "ടൈംകൗണ്ടർ"
ടൈംകൗണ്ടർ "ACPI-ഫാസ്റ്റ്" ഫ്രീക്വൻസി 3579545 Hz നിലവാരം 900
ടൈംകൗണ്ടർ "i8254" ഫ്രീക്വൻസി 1193182 Hz നിലവാരം 0
ടൈം കൗണ്ടറുകൾ ഓരോ 10.000 സെക്കൻഡിലും ടിക്ക് ചെയ്യുന്നു
ടൈംകൗണ്ടർ "TSC" ഫ്രീക്വൻസി 2531787134 Hz നിലവാരം 800
# sysctl kern.timecounter.hardware=TSC
kern.timecounter.hardware: ACPI-fast -> TSC
മറ്റ് സിസ്റ്റങ്ങൾ ബൂട്ടിൽ സമയ ഉറവിടം സജ്ജീകരിക്കാൻ മാത്രമേ അനുവദിക്കൂ. പഴയ Linux സിസ്റ്റങ്ങളിൽ
"ക്ലോക്ക്" കേർണൽ ക്രമീകരണം മാത്രമാണ് ഇത്തരത്തിലുള്ള മാറ്റം വരുത്താനുള്ള ഏക മാർഗം. കൂടാതെ മറ്റു ചിലതിൽ പോലും
അടുത്തിടെയുള്ളവ, ക്ലോക്ക് ഉറവിടത്തിനായി നിങ്ങൾ കാണുന്ന ഒരേയൊരു ഓപ്ഷൻ "ജിഫിസ്" ആണ്. ജിഫിസ് ആണ്
പഴയ Linux സോഫ്റ്റ്വെയർ ക്ലോക്ക് നടപ്പിലാക്കൽ, പിന്തുണയ്ക്കുമ്പോൾ അതിന് നല്ല റെസല്യൂഷൻ ഉണ്ടായിരിക്കും
ഈ ഉദാഹരണത്തിലെന്നപോലെ, മതിയായ വേഗത്തിലുള്ള സമയ ഹാർഡ്വെയർ ഉപയോഗിച്ച്:
$ പൂച്ച /sys/devices/system/clocksource/clocksource0/available_clocksource
ജിഫിസ്
$ dmesg | grep time.c
time.c: 3.579545 MHz വാൾ PM GTOD PIT/TSC ടൈമർ ഉപയോഗിക്കുന്നു.
time.c: 2400.153 MHz പ്രോസസർ കണ്ടെത്തി.
$ pg_test_timeing
3 സെക്കൻഡ് നേരത്തേക്ക് ടൈമിംഗ് ഓവർഹെഡ് പരിശോധിക്കുന്നു.
ലൂപ്പ് ഓവർഹെഡ് ഉൾപ്പെടെ ഓരോ സമയ ദൈർഘ്യം: 97.75 ns
സമയ ദൈർഘ്യങ്ങളുടെ ഹിസ്റ്റോഗ്രാം:
<പയോഗിക്കുന്നത് മൊത്തം എണ്ണത്തിന്റെ %
1 90.23734 27694571
2 9.75277 2993204
4 0.00981 3010
8 0.00007 22
16 0.00000 1
32 0.00000 1
ക്ലോക്ക് ഹാർഡ്വെയർ ഒപ്പം സമയത്തിന്റെ കൃത്യത
കൃത്യമായ സമയ വിവരങ്ങൾ ശേഖരിക്കുന്നത് സാധാരണയായി കമ്പ്യൂട്ടറുകളിൽ ഹാർഡ്വെയർ ക്ലോക്കുകൾ ഉപയോഗിച്ചാണ് ചെയ്യുന്നത്
കൃത്യതയുടെ വിവിധ തലങ്ങളോടെ. ചില ഹാർഡ്വെയർ ഉപയോഗിച്ച് ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങൾക്ക് കടന്നുപോകാൻ കഴിയും
സിസ്റ്റം ക്ലോക്ക് സമയം ഏതാണ്ട് നേരിട്ട് പ്രോഗ്രാമുകളിലേക്ക്. ഒരു സിസ്റ്റം ക്ലോക്കും a എന്നതിൽ നിന്ന് ഉരുത്തിരിഞ്ഞു വരാം
അറിയപ്പെടുന്ന സമയ ഇടവേളകളിൽ സമയ തടസ്സങ്ങളും ആനുകാലിക ടിക്കുകളും നൽകുന്ന ചിപ്പ്.
ഏത് സാഹചര്യത്തിലും, ഓപ്പറേറ്റിംഗ് സിസ്റ്റം കേർണലുകൾ ഈ വിശദാംശങ്ങൾ മറയ്ക്കുന്ന ഒരു ക്ലോക്ക് ഉറവിടം നൽകുന്നു.
എന്നാൽ ആ ക്ലോക്ക് ഉറവിടത്തിന്റെ കൃത്യതയും അതിന് എത്ര വേഗത്തിൽ ഫലങ്ങൾ നൽകാനാകും എന്നതും അടിസ്ഥാനമാക്കി വ്യത്യാസപ്പെടുന്നു
അടിസ്ഥാന ഹാർഡ്വെയറിൽ.
കൃത്യസമയം പാലിക്കാത്തത് സിസ്റ്റം അസ്ഥിരതയ്ക്ക് കാരണമാകും. ക്ലോക്കിലെ എന്തെങ്കിലും മാറ്റം പരിശോധിക്കുക
ഉറവിടം വളരെ ശ്രദ്ധാപൂർവ്വം. ഓപ്പറേറ്റിംഗ് സിസ്റ്റം ഡിഫോൾട്ടുകൾ ചിലപ്പോൾ വിശ്വാസ്യതയെ അനുകൂലമാക്കും
ഏറ്റവും മികച്ച കൃത്യത. നിങ്ങൾ ഒരു വെർച്വൽ മെഷീൻ ഉപയോഗിക്കുന്നുണ്ടെങ്കിൽ, ശുപാർശ ചെയ്യുന്ന സമയം നോക്കുക
അതിനോട് പൊരുത്തപ്പെടുന്ന ഉറവിടങ്ങൾ. അനുകരിക്കുമ്പോൾ വെർച്വൽ ഹാർഡ്വെയർ അധിക ബുദ്ധിമുട്ടുകൾ നേരിടുന്നു
ടൈമറുകൾ, കൂടാതെ വെണ്ടർമാർ നിർദ്ദേശിക്കുന്ന ഓരോ ഓപ്പറേറ്റിംഗ് സിസ്റ്റം ക്രമീകരണങ്ങളും ഉണ്ട്.
ടൈം സ്റ്റാമ്പ് കൗണ്ടർ (TSC) ക്ലോക്ക് ഉറവിടമാണ് കറന്റിൽ ലഭ്യമായ ഏറ്റവും കൃത്യമായ ഒന്ന്
ജനറേഷൻ സിപിയു. ഇത് പിന്തുണയ്ക്കുമ്പോൾ സിസ്റ്റം സമയം ട്രാക്ക് ചെയ്യുന്നതിനുള്ള മുൻഗണനാ മാർഗമാണിത്
ഓപ്പറേറ്റിംഗ് സിസ്റ്റവും TSC ക്ലോക്കും വിശ്വസനീയമാണ്. ടിഎസ്സിക്ക് നിരവധി മാർഗങ്ങളുണ്ട്
കൃത്യമായ സമയ ഉറവിടം നൽകുന്നതിൽ പരാജയപ്പെടുന്നു, ഇത് വിശ്വസനീയമല്ലാതാക്കുന്നു. പഴയ സിസ്റ്റങ്ങൾക്ക് എ ഉണ്ടാകാം
TSC ക്ലോക്ക് CPU താപനിലയെ അടിസ്ഥാനമാക്കി വ്യത്യാസപ്പെടുന്നു, ഇത് സമയത്തിന് ഉപയോഗശൂന്യമാക്കുന്നു. ശ്രമിക്കുന്നു
ചില പഴയ മൾട്ടികോർ CPU-കളിൽ TSC ഉപയോഗിക്കുന്നതിന്, അവയ്ക്കിടയിൽ സ്ഥിരതയില്ലാത്ത ഒരു റിപ്പോർട്ട് സമയം നൽകാനാകും.
ഒന്നിലധികം കോറുകൾ. ഇത് സമയം പിന്നോട്ട് പോകുന്നതിന് കാരണമാകും, ഈ പ്രോഗ്രാം പരിശോധിക്കുന്ന ഒരു പ്രശ്നം
വേണ്ടി. ഏറ്റവും പുതിയ സിസ്റ്റങ്ങൾക്ക് പോലും കൃത്യമായ ടിഎസ്സി ടൈമിംഗ് നൽകുന്നതിൽ പരാജയപ്പെടാം
അഗ്രസീവ് പവർ സേവിംഗ് കോൺഫിഗറേഷനുകൾ.
പുതിയ ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങൾ അറിയപ്പെടുന്ന TSC പ്രശ്നങ്ങൾ പരിശോധിക്കുകയും വേഗത കുറഞ്ഞതിലേക്ക് മാറുകയും ചെയ്തേക്കാം
അവ കാണുമ്പോൾ സ്ഥിരതയുള്ള ക്ലോക്ക് ഉറവിടം. നിങ്ങളുടെ സിസ്റ്റം TSC സമയത്തെ പിന്തുണയ്ക്കുന്നുണ്ടെങ്കിലും ഇല്ലെങ്കിൽ
സ്ഥിരസ്ഥിതിയായി, ഒരു നല്ല കാരണത്താൽ ഇത് പ്രവർത്തനരഹിതമാക്കിയേക്കാം. കൂടാതെ ചില ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങൾ ഇല്ലായിരിക്കാം
സാധ്യമായ എല്ലാ പ്രശ്നങ്ങളും ശരിയായി കണ്ടെത്തുക, അല്ലെങ്കിൽ സാഹചര്യങ്ങളിൽ പോലും TSC ഉപയോഗിക്കാൻ അനുവദിക്കും
അത് കൃത്യമല്ലെന്ന് അറിയാവുന്നിടത്ത്.
ഹൈ പ്രിസിഷൻ ഇവന്റ് ടൈമർ (HPET) ആണ് സിസ്റ്റങ്ങളിൽ തിരഞ്ഞെടുക്കപ്പെട്ട ടൈമർ
ലഭ്യമാണ്, TSC കൃത്യമല്ല. വരെ അനുവദിക്കുന്നതിന് ടൈമർ ചിപ്പ് തന്നെ പ്രോഗ്രാം ചെയ്യാവുന്നതാണ്
100 നാനോ സെക്കൻഡ് റെസല്യൂഷൻ, എന്നാൽ നിങ്ങളുടെ സിസ്റ്റം ക്ലോക്കിൽ അത്രയും കൃത്യത നിങ്ങൾ കണ്ടേക്കില്ല.
അഡ്വാൻസ്ഡ് കോൺഫിഗറേഷനും പവർ ഇന്റർഫേസും (ACPI) ഒരു പവർ മാനേജ്മെന്റ് (PM) ടൈമർ നൽകുന്നു,
ഏത് Linux acpi_pm എന്ന് സൂചിപ്പിക്കുന്നു. acpi_pm-ൽ നിന്ന് ഉരുത്തിരിഞ്ഞ ക്ലോക്ക് മികച്ച രീതിയിൽ നൽകും
300 നാനോ സെക്കൻഡ് റെസലൂഷൻ.
പഴയ പിസി ഹാർഡ്വെയറിൽ ഉപയോഗിക്കുന്ന ടൈമറുകൾ 8254 പ്രോഗ്രാമബിൾ ഇന്റർവെൽ ടൈമർ (പിഐടി) ഉൾപ്പെടുന്നു.
തത്സമയ ക്ലോക്ക് (ആർടിസി), അഡ്വാൻസ്ഡ് പ്രോഗ്രാമബിൾ ഇന്ററപ്റ്റ് കൺട്രോളർ (എപിഐസി) ടൈമർ, കൂടാതെ
സൈക്ലോൺ ടൈമർ. ഈ ടൈമറുകൾ മില്ലിസെക്കൻഡ് റെസല്യൂഷനാണ് ലക്ഷ്യമിടുന്നത്.
onworks.net സേവനങ്ങൾ ഉപയോഗിച്ച് pg_test_timing ഓൺലൈനായി ഉപയോഗിക്കുക
