Sieve C++ Parallel Programming System
சல்லடை சி + + இணையான நிரலாக்க அமைப்பு என்பது ஒரு சி + + தொகுப்பாளர் மற்றும் இணையான இயக்க நேரமாகும், இது கோட் பிளே வடிவமைத்து வெளியிடப்பட்டது, இது குறியீட்டின் இணையான தன்மையை எளிதாக்குவதை நோக்கமாகக் கொண்டுள்ளது, இதனால் இது பல-செயலி அல்லது பல-கோர் அமைப்புகளில் திறமையாக இயங்க முடியும். ஓபன்எம்பி, ரேபிட் மைண்ட் டெவலப்மென்ட் பிளாட்ஃபார்ம் மற்றும் த்ரெடிங் பில்டிங் பிளாக்ஸ் (டிபிபி) போன்ற பிற நன்கு அறியப்பட்ட இணையான முறைகளுக்கு இது ஒரு மாற்றாகும். அறிமுக சல்லடை என்பது ஒரு சி + + தொகுப்பாகும், இது வரிசைக் குறியீட்டின் ஒரு பகுதியை எடுக்கும், இது சல்லடை குறிப்பான்களுடன் சிறுகுறிப்பு செய்யப்படுகிறது, மேலும் அதை தானாகவே இணையாக மாற்றும். புரோகிராமர் ஒரு லெக்சிகல் நோக்கத்திற்குள் இணையாக இருக்க விரும்பும் குறியீட்டை மூடுகிறார், இது 'சல்லடை' என்று குறிக்கப்படுகிறது. பொதுவாக 'சல்லடைத் தொகுதி' என்று குறிப்பிடப்படும் இந்த வரம்பிற்குள், சில விதிகள் பொருந்தும்ஃ சல்லடைத் தொகுதிக்குள் உள்ள அனைத்து பக்க விளைவுகளும் வரம்பின் இறுதி வரை தாமதமாகின்றன. சல்லடைத் தொகுதி வரம்பிற்கு வெளியே அறிவிக்கப்பட்ட தரவுகளில் ஏதேனும் மாற்றங்கள் இருந்தால் பக்க விளைவுகள் வரையறுக்கப்படுகின்றன. சல்லடை அல்லது உடனடி மூலம் குறிப்பிடப்பட்ட செயல்பாடுகளை மட்டுமே அழைக்க முடியும். பக்க விளைவுகளை தாமதப்படுத்துவது பல சிறிய சார்புநிலைகளை நீக்குகிறது, இது பொதுவாக தானியங்கி இணையான தன்மையை தடுக்கும். நேரடி நினைவக அணுகல் (டி. எம். ஏ) போன்ற பல்வேறு தரவு இயக்க வழிமுறைகளை சிறப்பாகப் பயன்படுத்த அனுமதிக்கும் வகையில் வாசிப்புகள் மற்றும் எழுத்துக்களை தொகுப்பாளரால் பாதுகாப்பாக மறுசீரமைக்க முடியும். கூடுதலாக, மாற்றுப்பெயர் பகுப்பாய்வு மற்றும் தரவுப்பாய்வு பகுப்பாய்வு ஆகியவற்றை எளிமைப்படுத்தலாம். கம்பைலர் பின்னர் சல்லடை தொகுதிக்குள் குறியீட்டைப் பிரிக்கலாம், இணையான தன்மையைப் பயன்படுத்துவதற்கு மிகவும் எளிதானது. நினைவக அமைப்பு வரம்புகளின் இந்த பிரிப்பு என்பது சீரான நினைவக கட்டமைப்புகளில் சல்லடை அமைப்பைப் பயன்படுத்தலாம் என்பதாகும். பிளேஸ்டேஷன் 3 இல் பயன்படுத்தப்படும் செல் நுண்செயலி போன்ற மல்டி கோர் CPU கள் இந்த வகையைச் சேர்ந்தவை, இதில் வேகமான மையங்கள் உள்ளூர் நினைவுகளைக் கொண்டுள்ளன, அவை கணினியில் உள்ளார்ந்த செயல்திறனைப் பயன்படுத்த பயன்படுத்தப்பட வேண்டும். இது x86 போன்ற பகிரப்பட்ட நினைவக அமைப்புகளிலும் வேலை செய்ய முடியும், அதாவது இது பல்வேறு கட்டமைப்புகளில் இயங்க முடியும். வெவ்வேறு நினைவுகள் மற்றும் செயலாக்க கூறுகளின் படிநிலையைக் கொண்ட அமைப்புகளுக்கும் சல்லடை தொகுதிகள் கூடு கட்டப்படலாம். இணையாக்கம் மற்றும் அளவிடுதல் சல்லடை தொகுப்பாளர் ஒரு சல்லடைத் தொகுதிக்குள் குறியீட்டை மறைமுகமாகவோ அல்லது வெளிப்படையாகவோ ஒரு 'பிளவு' அறிக்கையாக இருந்தாலும் துண்டுகளாகப் பிரிக்கலாம். எடுத்துக்காட்டாக, பின்வரும் எடுத்துக்காட்டு ஒரு வளையத்தை இணையாகக் காட்டுகிறதுஃ சல்லடை {for (iterator i (0); i <நீளம்; + + i) {R [i] = A [i] * B [i] ஸ்ப்ளிட்டர்;}} தொகுப்பாளர் ஒரு நுழைவு புள்ளியாக, வளைய கட்டமைப்பிற்கான உடலுக்கு மேலே ஒரு பிளவு புள்ளியை மறைமுகமாக சேர்ப்பார். இதேபோல் ஒன்று வெளியேறும் புள்ளியாக சேர்க்கப்படும். சல்லடை அமைப்பில், சல்லடைத் தொகுதி வரம்பிற்கு உள்ளூர் மாறிகள் மட்டுமே சார்பு நிலைகளைக் கொண்டிருக்கலாம். இருப்பினும், இந்த சார்புநிலைகள் பிளவுபட்ட புள்ளிகளைக் கடக்கக்கூடாது; அவை தொகுப்பு எச்சரிக்கைகளை உருவாக்கும். இந்த வளையத்தை இணையாக மாற்ற, ஒரு நிலையான முழு எண் சுழல் கவுண்டருக்கு பதிலாக ஒரு சிறப்பு 'ஐடெரேட்டர்' வகுப்பைப் பயன்படுத்தலாம். இது இணையாக்கத்திற்கு பாதுகாப்பானது, மேலும் புரோகிராமர் விருப்பப்படி புதிய ஐடெரேட்டர் வகுப்புகளை உருவாக்க இலவசம். இந்த ஐடெரேட்டர் வகுப்புகளுக்கு கூடுதலாக, குறைப்பு செயல்பாடுகளை மேற்கொள்ளப் பயன்படுத்தப்படும் 'திரட்டிகள்' எனப்படும் வகுப்புகளை செயல்படுத்த புரோகிராமர் சுதந்திரமாக உள்ளார். இடரேட்டர் வகுப்புகள் செயல்படுத்தப்படும் விதம் அளவிடுதலுக்கான பல்வேறு வழிகளைத் திறக்கிறது. சல்லடை இணையான ரன்டைம் ஒரு இலக்கு மேடையில் செயல்படுத்தும்போது மாறும் ஊக செயல்பாட்டைப் பயன்படுத்துகிறது. இது மிகவும் நல்ல வேகத்தை வழங்க முடியும், இருப்பினும் ஒரு ஒற்றை கோர் இயந்திரத்தில் இயங்குவது மேல்நிலை செலவுகளை ஏற்படுத்தும். தீர்மானவாதம் என்பது சல்லடை அமைப்பின் ஒரு அசாதாரண அம்சமாகும். ஒரு பல மைய இயந்திரத்தில் ஒரு இணையான சல்லடை நிரலை இயக்கினால் ஒரு பிழையை விளைவிக்கிறது என்றால், பிழைத்திருத்தத்திற்கு உதவும் வகையில் ஒரு மையத்தில் இயங்கும் போது பிழை மறைந்துவிடாது. இது ஒரே நேரத்தில் நிரலாக்கத்தில் மிகவும் பொதுவான பிழைகளில் ஒன்றான இனம் நிலைமைகளை நீக்கும் நன்மையைக் கொண்டுள்ளது. ஒரு சல்லடைத் தொகுதிக்குள் ஒருங்கிணைந்த கட்டுப்பாட்டு கட்டமைப்புகளைக் கருத்தில் கொள்ள வேண்டிய அவசியத்தை அகற்றுவது வளர்ச்சி நேரத்தை விரைவுபடுத்தலாம் மற்றும் பாதுகாப்பான குறியீட்டை விளைவிக்கும். ஆதரிக்கப்படும் அமைப்புகள் இந்த அமைப்பு ஒரே மாதிரியான அல்லது பன்முக CPU மையங்களைக் கொண்ட படிநிலை அடிப்படையிலான அமைப்புகளுக்காக வடிவமைக்கப்பட்டுள்ளது, அவை உள்ளூர் நினைவுகளைக் கொண்டுள்ளன, டி. எம். ஏ என்ஜின்கள் அல்லது ஒத்த நினைவக பரிமாற்ற மாதிரிகள் மூலம் இணைக்கப்பட்டுள்ளன. சல்லடை பல-மைய x86 அமைப்புகள், ஏஜியா பிசிஸ் எக்ஸ் இயற்பியல் செயலாக்க அலகு மற்றும் ஐபிஎம் செல் நுண்செயலி ஆகியவற்றில் வெற்றிகரமாக செயல்படுவதாகக் காட்டப்பட்டுள்ளது. ஒரு குறிப்பிட்ட இலக்கு தளத்திற்கு ஒரு தொகுப்பாளர் குறியீடு ஜெனரேட்டர் கிடைக்கவில்லை என்றால் ஏஎன்எஸ்ஐ சி உருவாக்கப்படுகிறது. இது தற்போதுள்ள சி தொகுப்பு கருவித்தொகுப்புகளைப் பயன்படுத்தி தானாகவே இணையாக இருக்க அனுமதிக்கிறது. மென்பொருள் பரிவர்த்தனை நினைவக மாற்றுப்பெயர் பகுப்பாய்வு ஓபன்எம்பி த்ரெடிங் பில்டிங் பிளாக்ஸ் (டிபிபி) சில்க்/சில்க் பிளஸ் ஸ்பெக்யுலேட்டிவ் எக்ஸிகியூஷன் குறிப்புகள் சல்லடை சி + + நிரல்களின் தானியங்கி இணையான அலஸ்டைர் டொனால்ட்சன், அன்டன் லோக்மோடோவ், கொலின் ரிலே, ஆண்ட்ரூ குக் ஆகியவற்றைப் பார்க்கவும். யூரோ-பார் பணிமனையின் செயல்முறைகளில் ஒரு சிப்பில் மிகவும் இணையான செயலாக்கம் (HPPC '07), ரென்ஸ், பிரான்ஸ், ஆகஸ்ட் 2007. கணினி அறிவியலில் விரிவுரை குறிப்புகள் 4854,2007. தாமதமான பக்க விளைவுகள் அன்டன் லோக்மோடோவ், ஆலன் மைக்ராஃப்ட், ஆண்ட்ரூ ரிச்சர்ட்ஸ் ஆகியோரை பல மைய நிரலாக்கத்தை எளிதாக்குகிறது. 13வது சர்வதேச யூரோ-பார் மாநாட்டின் நடவடிக்கைகள், ரென்ஸ், பிரான்ஸ், ஆகஸ்ட் 2007. கணினி அறிவியலில் விரிவுரை குறிப்புகள் 4641,641-650,2007. சல்லடைகள் எஸ். லிண்ட்லியைப் பயன்படுத்தி தீர்மானகரமான அறிவிப்பு ஒத்த நாணயத்தை செயல்படுத்துதல். டி. ஏ. எம். பி 2007 இன் நடவடிக்கைகளில்ஃ நைஸ், பிரான்சில் ஜனவரி 2007 இல் பன்முக நிரலாக்கத்தின் பிரகடன அம்சங்கள் குறித்த பட்டறை. கோட் பிளே சல்லடை சி + + இணையான நிரலாக்க அமைப்பு ஏ. ரிச்சர்ட்ஸ். வெள்ளை அறிக்கை, 2006. மைக்ரோகிரிட் 2006 இல் வழங்கப்பட்ட கோட் பிளே சல்லடை சி + + சிஸ்டம் விளக்கக்காட்சி ஸ்காட் மெக்கென்சி. வெளிப்புற இணைப்புகள் கோட்ப்ளே சல்லடை வலைத்தளம் ஒருங்கிணைந்த நிரலாக்க மொழிகள் பயன்பாட்டு நிரலாக்க இடைமுகங்கள் சி + + நிரலாக்க மொழி குடும்பம்