Profiling (computer programming)
மென்பொருள் பொறியியலில், விவரக்குறிப்பு ("நிரல் விவரக்குறிப்பு", "மென்பொருள் விவரக்குறிப்பு") என்பது மாறும் நிரல் பகுப்பாய்வின் ஒரு வடிவமாகும், இது அளவிடுகிறது, எடுத்துக்காட்டாக, ஒரு நிரலின் இடம் (நினைவகம்) அல்லது நேர சிக்கலானது, குறிப்பிட்ட அறிவுறுத்தல்களின் பயன்பாடு அல்லது அதிர்வெண் மற்றும் செயல்பாட்டு அழைப்புகளின் காலம். மிகவும் பொதுவாக, விவரக்குறிப்பு தகவல் நிரல் உகப்பாக்கம் உதவ உதவுகிறது, மேலும் குறிப்பாக, செயல்திறன் பொறியியல். புரோகிராம் மூலக் குறியீடு அல்லது அதன் பைனரி செயல்படுத்தக்கூடிய வடிவத்தை ஒரு விவரக்குறிப்பு (அல்லது குறியீடு விவரக்குறிப்பு) எனப்படும் கருவியைப் பயன்படுத்தி கருவி மூலம் விவரக்குறிப்பு அடையப்படுகிறது. சுயவிவரங்கள் நிகழ்வு அடிப்படையிலான, புள்ளிவிவர, கருவி மற்றும் உருவகப்படுத்துதல் முறைகள் போன்ற பல்வேறு நுட்பங்களைப் பயன்படுத்தலாம். நிரல் நிகழ்வுகளைச் சேகரிப்பது வன்பொருள் குறுக்கீடுகள், குறியீடு கருவி, அறிவுறுத்தல் தொகுப்பு உருவகப்படுத்துதல், இயக்க முறைமை கொக்கிகள் மற்றும் செயல்திறன் கவுண்டர்கள் உள்ளிட்ட தரவைச் சேகரிக்க சுயவிவரங்கள் பல்வேறு வகையான நுட்பங்களைப் பயன்படுத்துகின்றன. விவரக்குறிப்புகளின் பயன்பாடு ஒரு விவரக்குறிப்பின் வெளியீடு பின்வருமாறு இருக்கலாம்ஃ கவனிக்கப்பட்ட நிகழ்வுகளின் புள்ளிவிவர சுருக்கம் (ஒரு சுயவிவரம்) சுருக்க சுயவிவரத் தகவல் பெரும்பாலும் நிகழ்வுகள் நிகழும் மூலக் குறியீடு அறிக்கைகளுக்கு எதிராக சிறுகுறிப்பு காட்டப்படுகிறது, எனவே அளவீட்டுத் தரவின் அளவு நிரலின் குறியீடு அளவிற்கு நேரியல் ஆகும். / *------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ ஒரு (முழு) தடத்தின் அளவு நிரலின் அறிவுறுத்தல் பாதை நீளத்திற்கு நேரியல் ஆகும், இது ஓரளவு நடைமுறைக்கு மாறானது. எனவே ஒரு திட்டத்தின் ஒரு கட்டத்தில் ஒரு தடம் தொடங்கப்பட்டு வெளியீட்டைக் கட்டுப்படுத்த மற்றொரு கட்டத்தில் நிறுத்தப்படலாம். ஹைபர்வைசருடன் தொடர்ச்சியான தொடர்பு (எடுத்துக்காட்டாக, திரையில் காட்சி மூலம் தொடர்ச்சியான அல்லது குறிப்பிட்ட கண்காணிப்பு) இது செயல்படுத்தும் போது (இன்னும் செயல்படுத்தும்) நிரலைப் பற்றிய தற்போதைய அளவீடுகளைப் பார்ப்பதோடு மட்டுமல்லாமல், எந்தவொரு விரும்பிய புள்ளியிலும் ஒரு தடத்தை இயக்க அல்லது முடக்குவதற்கான வாய்ப்பை வழங்குகிறது. மற்ற இணையான செயல்முறைகளுடனான தொடர்புகளை இன்னும் விரிவாக ஆராய முக்கியமான புள்ளிகளில் ஒத்திசைவற்ற செயல்முறைகளை இடைநிறுத்துவதற்கான வாய்ப்பையும் இது வழங்குகிறது. ஒரு சுயவிவரத்தை ஒரு தனிப்பட்ட முறைக்கு அல்லது ஒரு தொகுதி அல்லது நிரலின் அளவில் பயன்படுத்தலாம், நீண்டகாலமாக இயங்கும் குறியீட்டைத் தெளிவுபடுத்துவதன் மூலம் செயல்திறன் தடைகளை அடையாளம் காண. பல்வேறு இயக்க நேர நிலைமைகள் அல்லது பல்வேறு சுமைகளைக் கையாள உகந்ததாக மாற்றும் நோக்கத்துடன், நேரக் கண்ணோட்டத்தில் குறியீட்டைப் புரிந்துகொள்ள ஒரு விவரக்குறிப்பு பயன்படுத்தப்படலாம். சுயவிவர வழிகாட்டுதல் உகப்பாக்கத்தை வழங்கும் தொகுப்பாளரால் சுயவிவர முடிவுகளை உட்கொள்ள முடியும். சுயவிவர முடிவுகளை ஒரு தனிப்பட்ட வழிமுறையின் வடிவமைப்பு மற்றும் உகப்பாக்கத்தை வழிநடத்த பயன்படுத்தலாம்; கிராஸ் பொருந்தும் வைல்டு கார்டுகள் வழிமுறை ஒரு எடுத்துக்காட்டு. விவரக்குறிப்புகள் சில பயன்பாட்டு செயல்திறன் மேலாண்மை அமைப்புகளில் கட்டமைக்கப்பட்டுள்ளன, அவை விநியோகிக்கப்பட்ட பயன்பாடுகளில் பரிவர்த்தனை பணிச்சுமை பற்றிய நுண்ணறிவை வழங்க விவரக்குறிப்பு தரவை திரட்டுகின்றன. வரலாற்று செயல்திறன்-பகுப்பாய்வு கருவிகள் 1970 களின் முற்பகுதியில் இருந்து ஐபிஎம்/360 மற்றும் ஐபிஎம்/370 இயங்குதளங்களில் இருந்தன, பொதுவாக டைமர் குறுக்கீடுகளை அடிப்படையாகக் கொண்டவை, அவை குறியீட்டை செயல்படுத்துவதில் "ஹாட் ஸ்பாட்களை" கண்டறிய செட் டைமர்-இடைவெளிகளில் நிரல் நிலை வார்த்தையை (பி. எஸ். டபிள்யூ) பதிவு செய்கின்றன. இது மாதிரியின் ஆரம்ப எடுத்துக்காட்டு (கீழே காண்க). 1974 ஆம் ஆண்டின் தொடக்கத்தில் அறிவுறுத்தல்-தொகுப்பு சிமுலேட்டர்கள் முழு தடம் மற்றும் பிற செயல்திறன்-கண்காணிப்பு அம்சங்களை அனுமதித்தன. யுனிக்ஸ் கணினியில் சுயவிவரத்தால் இயக்கப்படும் நிரல் பகுப்பாய்வு 1973 ஆம் ஆண்டிலிருந்து தொடங்குகிறது, அப்போது யுனிக்ஸ் அமைப்புகள் ஒரு அடிப்படை கருவியான ப்ரோவை உள்ளடக்கியது, இது ஒவ்வொரு செயல்பாட்டையும் பட்டியலிட்டது மற்றும் நிரல் செயல்படுத்தும் நேரத்தை எவ்வளவு பயன்படுத்தியது. 1982 ஆம் ஆண்டில் ஜி. ப்ரோஃப் இந்த கருத்தை ஒரு முழுமையான அழைப்பு வரைபட பகுப்பாய்விற்கு விரிவுபடுத்தியது. 1994 ஆம் ஆண்டில், டிஜிட்டல் எக்யூப்மென்ட் கார்ப்பரேஷனின் அமிதாப் ஸ்ரீவஸ்தவா மற்றும் ஆலன் யூஸ்டேஸ் ஆகியோர் ஏ. டி. ஓ. எம் (ஓ. எம் உடன் பகுப்பாய்வு கருவிகள்) பற்றி விவரிக்கும் ஒரு கட்டுரையை வெளியிட்டனர். ஏ. டி. ஓ. எம் இயங்குதளம் ஒரு நிரலை அதன் சொந்த விவரக்குறிப்பாக மாற்றுகிறதுஃ தொகுக்கும் நேரத்தில், பகுப்பாய்வு செய்ய வேண்டிய நிரலில் குறியீட்டை செருகுகிறது. அந்த செருகப்பட்ட குறியீடு பகுப்பாய்வு தரவை வெளியிடுகிறது. இந்த நுட்பம்-தன்னைப் பகுப்பாய்வு செய்ய ஒரு நிரலை மாற்றியமைத்தல்-"கருவி" என்று அழைக்கப்படுகிறது. 2004 ஆம் ஆண்டில் ஜி. ப்ரோஃப் மற்றும் ஏ. டி. ஓ. எம் ஆவணங்கள் இரண்டும் 1999 இல் முடிவடைந்த 20 ஆண்டு காலத்திற்கான 50 மிகவும் செல்வாக்குமிக்க பி. எல். டி. ஐ ஆவணங்களின் பட்டியலில் தோன்றின. அவுட்புட் பிளாட் சுயவிவரத்தை அடிப்படையாகக் கொண்ட சுயவிவர வகைகள் பிளாட் சுயவிவரங்கள் அழைப்புகளிலிருந்து சராசரி அழைப்பு நேரங்களைக் கணக்கிடுகின்றன, மேலும் காலி அல்லது சூழலின் அடிப்படையில் அழைப்பு நேரங்களை உடைக்க வேண்டாம். அழைப்பு-கிராஃப் விவரக்குறிப்பு அழைப்பு வரைபட விவரக்குறிப்புகள் அழைப்பு நேரங்கள் மற்றும் செயல்பாடுகளின் அதிர்வெண்கள் மற்றும் கால்லியின் அடிப்படையில் சம்பந்தப்பட்ட அழைப்பு சங்கிலிகளையும் காட்டுகின்றன. சில கருவிகளில் முழு சூழலும் பாதுகாக்கப்படவில்லை. உள்ளீடு-உணர்திறன் விவரக்குறிப்பு உள்ளீடு-உணர்திறன் விவரக்குறிப்புகள் உள்ளீட்டு அளவு அல்லது உள்ளீட்டு மதிப்புகள் போன்ற உள்ளீட்டு பணிச்சுமைகளின் அம்சங்களுடன் செயல்திறன் நடவடிக்கைகளை தொடர்புபடுத்துவதன் மூலம் தட்டையான அல்லது அழைப்பு-கிராஃப் விவரக்குறிப்புகளுக்கு மேலும் பரிமாணத்தை சேர்க்கின்றன. ஒரு பயன்பாட்டின் செயல்திறன் அதன் உள்ளீட்டின் செயல்பாடாக எவ்வாறு அளவிடப்படுகிறது என்பதை வகைப்படுத்தும் விளக்கப்படங்களை அவை உருவாக்குகின்றன. சுயவிவர வகை சுயவிவரங்களில் தரவு கிரானுலாரிட்டி, அவை நிரல்களாகவும் உள்ளன, இலக்கு நிரல்களை அவற்றின் செயல்பாடு குறித்த தகவல்களைச் சேகரித்து பகுப்பாய்வு செய்கின்றன. அவற்றின் தரவு நுணுக்கத்தின் அடிப்படையில், விவரக்குறிப்பாளர்கள் தகவல்களை எவ்வாறு சேகரிக்கின்றனர் என்பதன் அடிப்படையில், அவை நிகழ்வு அடிப்படையிலான அல்லது புள்ளிவிவர விவரக்குறிப்புகளாக வகைப்படுத்தப்படுகின்றன. சுயவிவரங்கள் தகவல்களைச் சேகரிக்க நிரல் செயல்பாட்டை குறுக்கிடுகின்றன, இதன் விளைவாக நேர அளவீடுகளில் வரையறுக்கப்பட்ட தெளிவுத்திறன் ஏற்படலாம், இது ஒரு தானிய உப்புடன் எடுக்கப்பட வேண்டும். அடிப்படை தொகுதி விவரக்குறிப்புகள் குறியீட்டின் ஒவ்வொரு வரியையும் செயல்படுத்த அர்ப்பணிக்கப்பட்ட பல இயந்திர கடிகார சுழற்சிகளைப் புகாரளிக்கின்றன, அல்லது இவற்றை ஒன்றாகச் சேர்ப்பதன் அடிப்படையில் ஒரு நேரம்; அடிப்படை தொகுதிக்கு அறிக்கையிடப்பட்ட நேரங்கள் தற்காலிக சேமிப்பு வெற்றிகள் மற்றும் தவறுகளுக்கு இடையிலான வேறுபாட்டைப் பிரதிபலிக்காது. நிகழ்வு அடிப்படையிலான விவரக்குறிப்புகள் இங்கே பட்டியலிடப்பட்டுள்ள நிரலாக்க மொழிகள் நிகழ்வு அடிப்படையிலான விவரக்குறிப்புகளைக் கொண்டுள்ளனஃ ஜாவாஃ ஜே. வி. எம். டி. ஐ (ஜே. வி. எம் கருவிகள் இடைமுகம்) ஏபிஐ, முன்பு ஜே. வி. எம். பி. ஐ (ஜே. வி. எம் சுயவிவர இடைமுகம்), அழைப்புகள், வகுப்பு-சுமை, இறக்குதல், நூல் உள்ளீடு விடுப்பு போன்ற நிகழ்வுகளைப் பிடிக்க சுயவிவரங்களுக்கு கொக்கிகளை வழங்குகிறது. . NET: விவரக்குறிப்பு API ஐப் பயன்படுத்தி CLR உடன் ஒரு விவரக்குறிப்பு முகவரை ஒரு COM சேவையகமாக இணைக்க முடியும். ஜாவாவைப் போலவே, ஜேஐடி/என்டர்/லீவ், ஆப்ஜெக்ட் கிரியேஷன் போன்ற நிகழ்வுகளைப் பிடிக்க, ரன்டைம் முகவருக்கு பல்வேறு அழைப்புகளை வழங்குகிறது. விவரக்குறிப்பு முகவர் இலக்கு பயன்பாட்டின் பைட் குறியீட்டை தன்னிச்சையான வழிகளில் மீண்டும் எழுத முடியும் என்பதில் குறிப்பாக சக்தி வாய்ந்தது. பைதான்ஃ பைதான் விவரக்குறிப்பு சுயவிவர தொகுதி, ஹாட்ஷாட் (இது அழைப்பு-கிராஃப் அடிப்படையிலானது) மற்றும் c _ {அழைப்பு, திரும்புதல், விதிவிலக்கு}, பைதான் _ {அழைப்பு, திரும்புதல், விதிவிலக்கு} போன்ற நிகழ்வுகளைப் பிடிக்க 'sys.setprofile' செயல்பாட்டைப் பயன்படுத்துகிறது. ரூபிஃ விவரக்குறிப்புக்கு பைத்தானுக்கு ஒத்த இடைமுகத்தையும் ரூபி பயன்படுத்துகிறது. பிளாட்-ப்ரோஃபைலர் profile.rb, தொகுதி மற்றும் ரூபி-ப்ரோஃப் சி-எக்ஸ்டென்ஷன் ஆகியவற்றில் உள்ளன. புள்ளிவிவர விவரக்குறிப்புகள் சில விவரக்குறிப்புகள் மாதிரி மூலம் செயல்படுகின்றன. ஒரு மாதிரி விவரக்குறிப்பு இயக்க முறைமை குறுக்கீடுகளைப் பயன்படுத்தி வழக்கமான இடைவெளியில் இலக்கு நிரலின் அழைப்பு அடுக்கை ஆராய்கிறது. மாதிரி சுயவிவரங்கள் பொதுவாக குறைவான எண்ணிக்கையில் துல்லியமானவை மற்றும் குறிப்பிட்டவை, ஆனால் இலக்கு நிரலை முழு வேகத்தில் இயக்க அனுமதிக்கின்றன. இதன் விளைவாக வரும் தரவுகள் துல்லியமானவை அல்ல, ஆனால் ஒரு புள்ளிவிவர தோராயமாகும். "பிழையின் உண்மையான அளவு பொதுவாக ஒன்றுக்கு மேற்பட்ட மாதிரி காலமாகும். உண்மையில், ஒரு மதிப்பு மாதிரி காலத்தின் n மடங்கு என்றால், அதில் எதிர்பார்க்கப்படும் பிழை n மாதிரி காலங்களின் சதுர-வேர் ஆகும். நடைமுறையில், மாதிரி விவரக்குறிப்புகள் பெரும்பாலும் மற்ற அணுகுமுறைகளை விட இலக்கு நிரலின் செயல்பாட்டைப் பற்றிய மிகவும் துல்லியமான படத்தை வழங்க முடியும், ஏனெனில் அவை இலக்கு நிரலுக்கு ஊடுருவுவதில்லை, இதனால் பல பக்க விளைவுகள் இல்லை (நினைவக தற்காலிக சேமிப்புகள் அல்லது அறிவுறுத்தல் டிகோடிங் குழாய்கள் போன்றவை). மேலும் அவை செயல்படுத்தும் வேகத்தை அதிகம் பாதிக்காது என்பதால், இல்லையெனில் மறைக்கப்படும் சிக்கல்களை அவர்கள் கண்டறிய முடியும். சிறிய, அடிக்கடி வழக்கங்கள் அல்லது 'இறுக்கமான' சுழல்கள் என்று அழைக்கப்படும் விலையை மிகைப்படுத்துவதற்கு அவை ஒப்பீட்டளவில் நோய் எதிர்ப்பு சக்தி கொண்டவை. கணினி அழைப்பு செயலாக்கம் போன்ற குறுக்கிடக்கூடிய கர்னல் முறைக்கு எதிராக பயனர் பயன்முறையில் செலவழித்த நேரத்தின் ஒப்பீட்டு அளவை அவை காட்டலாம். இருப்பினும், குறுக்கீடுகளைக் கையாள்வதற்கான கர்னல் குறியீடு CPU சுழற்சிகளின் ஒரு சிறிய இழப்பை ஏற்படுத்துகிறது, கேச் பயன்பாட்டை திசை திருப்புகிறது, மேலும் இடைவிடாத கர்னல் குறியீட்டில் (மைக்ரோசெகண்ட்-ரேஞ்ச் செயல்பாடு) நிகழும் பல்வேறு பணிகளை வேறுபடுத்திப் பார்க்க முடியவில்லை. அர்ப்பணிக்கப்பட்ட வன்பொருள் இதற்கு அப்பால் செல்லலாம்ஃ ஏஆர்எம் கார்டெக்ஸ்-எம்3 மற்றும் சில சமீபத்திய எம்ஐபிஎஸ் செயலிகள் ஜேடிஏஜி இடைமுகம் ஒரு பிசிஎஸ்ஏம்பிஎல்இ பதிவேட்டைக் கொண்டுள்ளன, இது நிரல் கவுண்டரை உண்மையிலேயே கண்டறிய முடியாத முறையில் மாதிரியாகக் கொண்டுள்ளது, இது ஒரு தட்டையான சுயவிவரத்தின் ஊடுருவல் அல்லாத சேகரிப்பை அனுமதிக்கிறது. ஜாவா/நிர்வகிக்கப்பட்ட குறியீட்டிற்காக பொதுவாகப் பயன்படுத்தப்படும் சில புள்ளிவிவர விவரக்குறிப்புகள் ஸ்மார்ட்பியர் மென்பொருளின் ஏ. க்யூ. டைம் மற்றும் மைக்ரோசாப்டின் சி. எல். ஆர் சுயவிவரம் ஆகும். ஆப்பிள் இன்க் நிறுவனத்தின் சுறா (ஓஎஸ்எக்ஸ்), ஓப்ரோஃபைல் (லினக்ஸ்), இன்டெல் வி ட்யூன் மற்றும் இணையான பெருக்கி (இன்டெல் இணையான ஸ்டுடியோவின் ஒரு பகுதி) மற்றும் ஆரக்கிள் செயல்திறன் பகுப்பாய்வு ஆகியவற்றுடன் அந்த விவரக்குறிப்புகள் சொந்த குறியீடு விவரக்குறிப்பை ஆதரிக்கின்றன. கருவி இந்த நுட்பம் தேவையான தகவல்களை சேகரிக்க இலக்கு திட்டத்திற்கு அறிவுறுத்தல்களை திறம்பட சேர்க்கிறது. ஒரு நிரலை இன்ஸ்ட்ரூமென்ட் செய்வது செயல்திறன் மாற்றங்களை ஏற்படுத்தும் என்பதை நினைவில் கொள்க, மேலும் சில சந்தர்ப்பங்களில் தவறான முடிவுகள் மற்றும்/அல்லது ஹைசன்பக்ஸ்க்கு வழிவகுக்கும். என்ன தகவல் சேகரிக்கப்படுகிறது, அறிக்கையிடப்பட்ட நேர விவரங்களின் நிலை மற்றும் கருவியுடன் இணைந்து அடிப்படை தொகுதி விவரக்குறிப்பு பயன்படுத்தப்படுகிறதா என்பதைப் பொறுத்து விளைவு இருக்கும். எடுத்துக்காட்டாக, ஒவ்வொரு செயல்முறை/வழக்கமான அழைப்பையும் கணக்கிட குறியீட்டைச் சேர்ப்பது ஒவ்வொரு அறிக்கையும் எத்தனை முறை பின்பற்றப்படுகிறது என்பதைக் கணக்கிடுவதை விட குறைவான விளைவை ஏற்படுத்தும். ஒரு சில கணினிகள் தகவல்களைச் சேகரிக்க சிறப்பு வன்பொருளைக் கொண்டுள்ளன; இந்த விஷயத்தில் நிரலில் ஏற்படும் தாக்கம் மிகக் குறைவு. சுயவிவரங்களுக்குக் கிடைக்கும் கட்டுப்பாட்டு நிலை மற்றும் நேரத் தீர்மானத்தின் அளவை தீர்மானிப்பதற்கு கருவி முக்கியமாகும். கையேடுஃ புரோகிராமரால் நிகழ்த்தப்பட்டது, எ. கா. இயக்க நேரங்களை வெளிப்படையாகக் கணக்கிட அறிவுறுத்தல்களைச் சேர்ப்பதன் மூலம், பயன்பாட்டு மறுமொழி அளவீட்டு தரநிலை போன்ற அளவீட்டு ஏபிஐகளுக்கான நிகழ்வுகள் அல்லது அழைப்புகளை வெறுமனே எண்ணுங்கள். தானியங்கி மூல நிலை-ஒரு கருவிக் கொள்கையின்படி ஒரு தானியங்கி கருவி மூலம் மூலக் குறியீட்டில் கருவி சேர்க்கப்படுகிறது. இடைநிலை மொழிஃ பல உயர் நிலை மூல மொழிகளுக்கு ஆதரவை வழங்கும் அசெம்பிளி அல்லது சிதைந்த பைட் குறியீடுகளில் சேர்க்கப்பட்ட கருவி மற்றும் (குறியீடு அல்லாத) பைனரி ஆஃப்செட் மறு எழுத்து சிக்கல்களைத் தவிர்க்கிறது. கம்பைலர் உதவியுடன் பைனரி மொழிபெயர்ப்புஃ இந்த கருவி தொகுக்கப்பட்ட செயல்படுத்தக்கூடிய கருவிக்கு கருவிகளை சேர்க்கிறது. ரன்டைம் இன்ஸ்ட்ரூமென்டேஷன்ஃ குறியீடு செயல்படுத்தப்படுவதற்கு முன்பு நேரடியாக கருவி செய்யப்படுகிறது. நிரல் இயக்கமானது கருவியால் முழுமையாக மேற்பார்வையிடப்பட்டு கட்டுப்படுத்தப்படுகிறது. ரன்டைம் இன்ஜெக்ஷன்ஃ ரன்டைம் இன்ஸ்ட்ரூமென்டேஷனை விட அதிக இலகுரக. உதவி செயல்பாடுகளுக்கு தாவுவதற்காக குறியீடு இயக்க நேரத்தில் மாற்றியமைக்கப்படுகிறது. மொழிபெயர்ப்பாளர் கருவி மொழிபெயர்ப்பாளர் பிழைத்திருத்த விருப்பங்கள் ஒவ்வொரு இலக்கு அறிக்கையையும் மொழிபெயர்ப்பாளர் எதிர்கொள்வதால் செயல்திறன் அளவீடுகளை சேகரிக்க உதவும். பைட் குறியீடு, கட்டுப்பாட்டு அட்டவணை அல்லது ஜேஐடி மொழிபெயர்ப்பாளர்கள் பொதுவாக இலக்கு குறியீட்டை நிறைவேற்றுவதில் முழுமையான கட்டுப்பாட்டைக் கொண்ட மூன்று எடுத்துக்காட்டுகளாகும், இதனால் மிகவும் விரிவான தரவு சேகரிப்பு வாய்ப்புகளை செயல்படுத்துகிறது. ஹைப்பர்வைசர்/சிமுலேட்டர் ஹைப்பர்வைசர்ஃ ஹைப்பர்வைசரின் கீழ் (பொதுவாக) மாற்றப்படாத நிரலை இயக்குவதன் மூலம் தரவு சேகரிக்கப்படுகிறது. எடுத்துக்காட்டுஃ சிம்மன் சிமுலேட்டர் மற்றும் ஹைப்பர்வைசர்ஃ ஒரு இன்ஸ்ட்ரக்ஷன் செட் சிமுலேட்டரின் கீழ் மாற்றப்படாத நிரலை இயக்குவதன் மூலம் தரவு ஊடாடும் மற்றும் தேர்ந்தெடுக்கப்பட்ட முறையில் சேகரிக்கப்படுகிறது. மேலும் காண்க அல்காரிதம் செயல்திறன் பெஞ்ச்மார்க் ஜாவா செயல்திறன் செயல்திறன் கருவிகளின் பட்டியல் PAPI என்பது நவீன நுண்செயலிகளில் உள்ள வன்பொருள் செயல்திறன் கவுண்டர்களுக்கு ஒரு சிறிய இடைமுகம் (நூலகம் வடிவில்) ஆகும். செயல்திறன் பொறியியல் செயல்திறன் முன்கணிப்பு செயல்திறன் சரிபார்ப்பு இயக்க நேர சரிபார்ப்பு சுயவிவரம்-வழிகாட்டப்பட்ட உகப்பாக்கம் நிலையான குறியீடு பகுப்பாய்வு மென்பொருள் தொல்லியல் மோசமான-வழக்கு செயல்படுத்தும் நேரம் (டபிள்யூ. சி. இ. டி) குறிப்புகள் வெளிப்புற இணைப்புகள் ஐபிஎம் ரேஷனல் அப்ளிகேஷன் டெவலப்பரைப் பயன்படுத்தி ஜாவா பயன்பாடுகளை செயல்படுத்தும் நேர பகுப்பாய்வு செய்வதில் "வேகம் தேவை-செயல்திறன் தடைகளை அகற்றுதல்" கட்டுரை. வி ட்யூன் செயல்திறன் பகுப்பாய்வு மென்பொருள் உகப்பாக்கம் பயன்படுத்தி உருவாக்கப்பட்ட மற்றும் மொழிபெயர்க்கப்பட்ட குறியீடு விவரக்குறிப்பு இயக்க நேரம்