லினக்ஸ் சேவையகங்களுக்கான வரையறைகள்: திறந்த கருவிகளின் தேர்வு
லினக்ஸ் கணினிகளில் CPU செயல்திறனை மதிப்பிடுவதற்கான கருவிகளைப் பற்றி நாங்கள் தொடர்ந்து பேசுகிறோம். இன்று பொருளில்: temci, uarch-bench, likwid, perf-tools மற்றும் llvm-mca.
இது இரண்டு நிரல்களின் செயல்பாட்டு நேரத்தை மதிப்பிடுவதற்கான ஒரு கருவியாகும். அடிப்படையில், இரண்டு பயன்பாடுகளின் செயல்பாட்டு நேரத்தை ஒப்பிட்டுப் பார்க்க இது உங்களை அனுமதிக்கிறது. பயன்பாட்டின் ஆசிரியர் ஜெர்மனியைச் சேர்ந்த ஒரு மாணவர், ஜோஹன்னஸ் பெச்பெர்கர், அவர் 2016 இல் தனது இளங்கலை ஆய்வறிக்கையின் ஒரு பகுதியாக இதை உருவாக்கினார். இன்றைய கருவி வழங்கியது குனு பொது பொது உரிமத்தின் கீழ் உரிமம் பெற்றது.
ஜோஹன்னஸ் ஒரு கட்டுப்படுத்தப்பட்ட சூழலில் கணினி அமைப்பின் செயல்திறனை அளவிட அனுமதிக்கும் ஒரு கருவியை உருவாக்க விரும்பினார். எனவே, டெம்சியின் முக்கிய அம்சங்களில் ஒன்று சோதனை சூழலை அமைக்கும் திறன் ஆகும். உதாரணத்திற்கு, முடியும்: CPU அதிர்வெண் மேலாளர் அமைப்புகளை மாற்றவும், முடக்கவும் மிகை-திரித்தல் மற்றும் எல்1 மற்றும் எல்2 கேச்கள், இன்டெல் செயலிகளில் டர்போ பயன்முறையை அணைக்கவும். நேரம், perf_stat и கெட்ருசேஜ்.
முதல் வழக்கில் பயன்பாடு இப்படித்தான் தெரிகிறது:
# compare the run times of two programs, running them each 20 times
> temci short exec "sleep 0.1" "sleep 0.2" --runs 20
Benchmark 20 times [####################################] 100%
Report for single runs
sleep 0.1 ( 20 single benchmarks)
avg_mem_usage mean = 0.000, deviation = 0.0
avg_res_set mean = 0.000, deviation = 0.0
etime mean = 100.00000m, deviation = 0.00000%
max_res_set mean = 2.1800k, deviation = 3.86455%
stime mean = 0.000, deviation = 0.0
utime mean = 0.000, deviation = 0.0
sleep 0.2 ( 20 single benchmarks)
avg_mem_usage mean = 0.000, deviation = 0.0
avg_res_set mean = 0.000, deviation = 0.0
etime mean = 200.00000m, deviation = 0.00000%
max_res_set mean = 2.1968k, deviation = 3.82530%
stime mean = 0.000, deviation = 0.0
utime mean = 0.000, deviation = 0.0
தரப்படுத்தல் முடிவுகளின் அடிப்படையில், கணினி உருவாக்குகிறது வசதியான அறிக்கை வரைபடங்கள், அட்டவணைகள் மற்றும் வரைபடங்களுடன், இது டெம்சியை ஒத்த தீர்வுகளிலிருந்து வேறுபடுத்துகிறது.
டெம்சியின் குறைபாடுகளில், அதன் "இளமை" தனித்து நிற்கிறது. இதன் காரணமாக அவர் எல்லாம் ஆதரிக்கப்படவில்லை வன்பொருள் மற்றும் மென்பொருள் கட்டமைப்புகள். எடுத்துக்காட்டாக, MacOS இல் இயங்குவது கடினம், மேலும் சில அம்சங்கள் ARM-அடிப்படையிலான கணினியில் கிடைக்காது. எதிர்காலத்தில், நிலைமை மாறக்கூடும், ஏனெனில் ஆசிரியர் திட்டத்தை தீவிரமாக உருவாக்கி வருகிறார், மேலும் GitHub இல் உள்ள நட்சத்திரங்களின் எண்ணிக்கை படிப்படியாக அதிகரித்து வருகிறது - மிக நீண்ட காலத்திற்கு முன்பு temci கூட கருத்துகளில் விவாதிக்கப்பட்டது ஹேக்கர் செய்திகளில்.
பொறியாளர் டிராவிஸ் டவுன்ஸால் உருவாக்கப்பட்ட குறைந்த-நிலை CPU செயல்பாடுகளின் செயல்திறனை மதிப்பிடுவதற்கான ஒரு பயன்பாடு (டிராவிஸ் டவுன்ஸ்) சமீபத்தில் அவர் வலைப்பதிவு செய்கிறார் செயல்திறன் விஷயங்கள் கிட்ஹப் பக்கங்களில், இது தரப்படுத்தல் கருவிகள் மற்றும் பிற தொடர்புடைய விஷயங்களைப் பற்றி பேசுகிறது. பொதுவாக, uarch-bench பிரபலமடையத் தொடங்குகிறது, ஆனால் ஏற்கனவே அடிக்கடி குறிப்பிடப்பட்டுள்ளது பெஞ்ச்மார்க்கிங்கிற்கான கோ-டு டூலாக கருப்பொருள் நூல்களில் ஹேக்கர் செய்திகளில் வசிப்பவர்கள்.
நினைவக செயல்திறன், இணையான தரவு ஏற்றுதல் வேகம் மற்றும் சுத்தம் செய்யும் வேலை ஆகியவற்றை மதிப்பிடுவதற்கு Uarch-bench உங்களை அனுமதிக்கிறது. YMM பதிவு செய்கிறது. நிரல் மூலம் உருவாக்கப்பட்ட தரப்படுத்தல் முடிவுகள் எப்படி இருக்கும் என்பதைக் காணலாம் அதிகாரப்பூர்வ களஞ்சியத்தில் பக்கத்தின் கீழே.
uarch-bench, temci போன்றது என்பது குறிப்பிடத்தக்கது, துண்டிக்கிறது இன்டெல் டர்போ பூஸ்ட் செயல்பாடு (சுமையின் கீழ் தானாகவே செயலி கடிகார வேகத்தை அதிகரிக்கிறது) இதனால் சோதனை முடிவுகள் சீராக இருக்கும்.
இப்போதைக்கு, திட்டம் வளர்ச்சியின் ஆரம்ப கட்டத்தில் உள்ளது, எனவே uarch-bech இல் விரிவான ஆவணங்கள் இல்லை, மேலும் அதன் செயல்பாட்டில் பிழைகள் இருக்கலாம் - எடுத்துக்காட்டாக, சிரமங்கள் தெரியும் Ryzen இல் துவக்கத்துடன். மேலும், x86 கட்டமைப்புகளுக்கான வரையறைகள் மட்டுமே ஆதரிக்கப்படுகின்றன. எதிர்காலத்தில் கூடுதல் செயல்பாடுகளைச் சேர்ப்பதாக ஆசிரியர் உறுதியளித்து, வளர்ச்சியில் சேர உங்களை அழைக்கிறார்.
இது இன்டெல், ஏஎம்டி மற்றும் ஏஆர்எம்வி8 செயலிகளுடன் கூடிய லினக்ஸ் இயந்திரங்களின் செயல்திறனை மதிப்பிடுவதற்கான கருவிகளின் தொகுப்பாகும். இது 2017 இல் ஜெர்மன் ஃபெடரல் கல்வி மற்றும் ஆராய்ச்சி அமைச்சகத்தின் அனுசரணையில் உருவாக்கப்பட்டது மற்றும் திறந்த மூலத்தில் வெளியிடப்பட்டது.
லிக்விட் கருவிகளில், லிக்விட்-பவர்மீட்டரை முன்னிலைப்படுத்தலாம், இது கணினியால் நுகரப்படும் சக்தியைப் பற்றிய RAPL பதிவேடுகளிலிருந்து தகவல்களைக் காண்பிக்கும், அத்துடன் செயலி அதிர்வெண்ணைக் கட்டுப்படுத்த உங்களை அனுமதிக்கும் likwid-setFrequencies. முழுமையான பட்டியலை நீங்கள் பார்க்கலாம் களஞ்சியத்தில் காணலாம்.
கருவி HPC ஆராய்ச்சியில் ஈடுபட்டுள்ள பொறியாளர்களால் பயன்படுத்தப்படுகிறது. உதாரணமாக, likwid உடன் работает ஜெர்மனியில் உள்ள எர்லாங்கன்-நியூரம்பெர்க் பல்கலைக்கழகத்தின் (RRZE) பிராந்திய கணினி மையத்தின் நிபுணர்கள் குழு. இந்த கருவிகளின் தொகுப்பின் வளர்ச்சியிலும் அவள் தீவிரமாக பங்கேற்கிறாள்.
லினக்ஸ் சேவையகங்களின் செயல்திறனை பகுப்பாய்வு செய்வதற்கான இந்த கருவி சமர்ப்பிக்க பிரெண்டன் கிரெக். அவர் டெவலப்பர்களில் ஒருவர் DTrace — நிகழ்நேரத்தில் பயன்பாடுகளை பிழைத்திருத்துவதற்கான டைனமிக் டிரேசிங் ஃப்ரேம்வொர்க்.
perf-tools perf_events மற்றும் ftrace கர்னல் துணை அமைப்புகளை அடிப்படையாகக் கொண்டது. அவற்றின் பயன்பாடுகள் I/O தாமதத்தை (iosnoop) பகுப்பாய்வு செய்ய உங்களை அனுமதிக்கின்றன, கணினி அழைப்பு வாதங்களைக் கண்காணிக்கவும் (அன்கவுண்ட், ஃபங்க்ஸ்லோவர், ஃபங்க்கிராஃப் மற்றும் ஃபங்க்ட்ரேஸ்) மற்றும் கோப்பு தற்காலிக சேமிப்பில் (கேசெஸ்டாட்) "வெற்றிகள்" பற்றிய புள்ளிவிவரங்களை சேகரிக்கவும். பிந்தைய வழக்கில், கட்டளை இதுபோல் தெரிகிறது:
கருவியைச் சுற்றி மிகப் பெரிய சமூகம் உருவாகியுள்ளது (கிட்ஹப்பில் கிட்டத்தட்ட 6 ஆயிரம் நட்சத்திரங்கள்) எடுத்துக்காட்டாக, perf-கருவிகளை தீவிரமாகப் பயன்படுத்தும் நிறுவனங்கள் உள்ளன நெட்ஃபிக்ஸ். ஆனால் கருவி மேலும் மேம்படுத்தப்பட்டு மாற்றியமைக்கப்படுகிறது (இருப்பினும் புதுப்பிப்புகள் மிகவும் அரிதாகவே சமீபத்தில் வெளியிடப்பட்டன). எனவே, அதன் செயல்பாட்டில் பிழைகள் ஏற்படலாம் - சில நேரங்களில் perf-tools கர்னல் பீதியை ஏற்படுத்துகிறது என்று ஆசிரியர் எழுதுகிறார்.
வெவ்வேறு CPU களில் இயந்திரக் குறியீடு எவ்வளவு கணினி வளங்கள் தேவைப்படும் என்பதைக் கணிக்கும் ஒரு பயன்பாடு. அவள் மதிப்பிடுகிறது ஒரு சுழற்சிக்கான வழிமுறைகள் (ஐபிசி) மற்றும் ஒரு குறிப்பிட்ட பயன்பாடு உருவாக்கும் வன்பொருளின் சுமை.
திட்டத்தின் ஒரு பகுதியாக llvm-mca 2018 இல் வழங்கப்பட்டது LLVM, இது நிரல்களின் பகுப்பாய்வு, மாற்றம் மற்றும் மேம்படுத்தலுக்கான உலகளாவிய அமைப்பை உருவாக்குகிறது. llvm-mca இன் ஆசிரியர்கள் மென்பொருள் செயல்திறனை பகுப்பாய்வு செய்வதற்கான ஒரு தீர்வால் ஈர்க்கப்பட்டனர் என்பது அறியப்படுகிறது. இன்டெல்லிலிருந்து IACA மற்றும் ஒரு மாற்றீட்டை உருவாக்க முயன்றார். பயனர்களின் கூற்றுப்படி, கருவியின் வெளியீடு (அவற்றின் தளவமைப்பு மற்றும் அளவு) உண்மையில் IACA ஐ ஒத்திருக்கிறது - எடுத்துக்காட்டு இங்கே காணலாம். இருப்பினும், llvm-mca மட்டுமே ஏற்றுக்கொள்கிறது AT&T தொடரியல், எனவே அதனுடன் வேலை செய்ய நீங்கள் பெரும்பாலும் மாற்றிகளைப் பயன்படுத்த வேண்டியிருக்கும்.
எங்கள் வலைப்பதிவுகள் மற்றும் சமூக வலைப்பின்னல்களில் நாம் எதைப் பற்றி எழுதுகிறோம்: