প্রসঙ্গের সুইচে ক্যাশে সামগ্রীর কী হবে?


50

একটি মাল্টিকোর প্রসেসরে, যখন কোন ক্যাশে কনটেক্সট স্যুইচ ঘটে তখন কোনও কোরের ক্যাশের সামগ্রীতে কী ঘটে (এল 1 বলে)?

আচরণটি কি আর্কিটেকচারের উপর নির্ভর করে বা এটি সমস্ত চিপ প্রস্তুতকারকের দ্বারা অনুসরণ করা একটি সাধারণ আচরণ?

উত্তর:


42

এটি প্রসেসরের উপর নির্ভর করে (কেবলমাত্র প্রসেসর সিরিজ নয়, এটি মডেল থেকে মডেল পরিবর্তিত হতে পারে) এবং অপারেটিং সিস্টেমগুলিতে, তবে সাধারণ নীতিগুলিও রয়েছে। কোনও প্রসেসর মাল্টিকোর কিনা সেটির কোনও প্রভাব নেই; একই প্রক্রিয়াটি একাধিক কোরগুলিতে একসাথে চালানো হতে পারে (যদি এটি মাল্টিথ্রেড হয়), এবং মেমোরিগুলি প্রক্রিয়াগুলির মধ্যে ভাগ করা যায়, তাই প্রসঙ্গের স্যুইচটিতে যা ঘটে তা নির্বিশেষে ক্যাশে সিঙ্ক্রোনাইজেশন অনিবার্য।

যখন কোনও প্রসেসর ক্যাশে কোনও মেমরির অবস্থান সন্ধান করে, যদি কোনও এমএমইউ থাকে , তবে এটি সেই অবস্থানের শারীরিক বা ভার্চুয়াল ঠিকানাটি ব্যবহার করতে পারে (কখনও কখনও উভয়ের সংমিশ্রণও হয় তবে এটি এখানে প্রকৃতপক্ষে প্রাসঙ্গিক নয়)।

শারীরিক ঠিকানাগুলির সাথে, কোনও প্রক্রিয়া ঠিকানায় অ্যাক্সেস করছে তা বিবেচ্য নয়, সামগ্রীগুলি ভাগ করা যায়। সুতরাং প্রসঙ্গের স্যুইচ চলাকালীন ক্যাশে সামগ্রীটি অকার্যকর করার দরকার নেই। যদি দুটি প্রক্রিয়া একই শারীরিক পৃষ্ঠাকে বিভিন্ন বৈশিষ্ট্যযুক্ত ম্যাপ করে তবে এটি এমএমইউ দ্বারা পরিচালিত হয় ( এমপিইউ (মেমরি সুরক্ষা ইউনিট হিসাবে অভিনয় ))। একটি শারীরিকভাবে সম্বোধন করা ক্যাশের অবক্ষয়টি হ'ল এমএমইউকে প্রসেসর এবং ক্যাশের মধ্যে বসতে হয়, সুতরাং ক্যাশে অনুসন্ধানটি ধীর হয়। এল 1 ক্যাশে প্রায় কখনও শারীরিকভাবে ঠিকানা হয় না; উচ্চ স্তরের ক্যাশে হতে পারে।

একই ভার্চুয়াল ঠিকানা বিভিন্ন প্রক্রিয়াতে বিভিন্ন মেমরি অবস্থান চিহ্নিত করতে পারে। অতএব, কার্যত সম্বোধন করা ক্যাশে সহ প্রসেসর এবং অপারেটিং সিস্টেমকে অবশ্যই একটি প্রক্রিয়া সঠিক স্মৃতি খুঁজে পাবে তা নিশ্চিত করতে সহযোগিতা করতে হবে। বেশ কয়েকটি সাধারণ কৌশল রয়েছে। অপারেটিং সিস্টেম দ্বারা সরবরাহিত প্রসঙ্গ-স্যুইচিং কোড পুরো ক্যাশেটিকে অবৈধ করতে পারে; এটি সঠিক তবে খুব ব্যয়বহুল। কিছু সিপিইউ আর্কিটেকচারের একটি এএসআইডি (অ্যাড্রেস স্পেস আইডেন্টিফায়ার) এর প্রক্রিয়াকরণ আইডির হার্ডওয়্যার সংস্করণ, যার জন্য এমএমইউ ব্যবহৃত হয় তাদের ক্যাশে লাইনে রুম রয়েছে। এটি কার্যকরভাবে বিভিন্ন প্রক্রিয়া থেকে ক্যাশে এন্ট্রিগুলিকে আলাদা করে দেয় এবং এর অর্থ হ'ল একই পৃষ্ঠার মানচিত্রযুক্ত দুটি প্রক্রিয়া একই শারীরিক পৃষ্ঠার অন্তর্নিহিত দৃষ্টিভঙ্গি রাখবে (সাধারণত একটি ভাগ করা পৃষ্ঠার ইঙ্গিতকারী একটি বিশেষ এএসআইডি মান থাকে, তবে এগুলি ফ্লাশ করা দরকার যদি তারা ম্যাপ করা সমস্ত প্রক্রিয়াতে একই ঠিকানায় ম্যাপ না করা হয়)। যদি অপারেটিং সিস্টেমটি যত্ন নেয় যে বিভিন্ন প্রক্রিয়াগুলি অ-ওভারল্যাপিং অ্যাড্রেস স্পেস ব্যবহার করে (যা ভার্চুয়াল মেমরি ব্যবহারের কিছু উদ্দেশ্যকে পরাস্ত করে, তবে এটি কখনও কখনও করা যায়), তবে ক্যাশে লাইনগুলি বৈধ থাকবে।

এমএমইউযুক্ত বেশিরভাগ প্রসেসরের একটি টিএলবি থাকে । টিএলবি হ'ল ভার্চুয়াল ঠিকানা থেকে শারীরিক ঠিকানাগুলিতে ম্যাপিংয়ের একটি ক্যাশে। শারীরিকভাবে সম্বোধনকৃত ক্যাশেগুলিতে দেখার আগে টিএলবি'র পরামর্শ নেওয়া হয়েছে, সম্ভব হলে শারীরিক ঠিকানা দ্রুত নির্ধারণ করতে; প্রসেসর টিএলবি লুকআপ সম্পন্ন হওয়ার আগে ক্যাশে সন্ধান শুরু করতে পারে, কারণ প্রায়শই প্রার্থীর ক্যাশে লাইনগুলি ঠিকানার মাঝের বিট থেকে চিহ্নিত করা যেতে পারে যা একটি ক্যাশে লাইনে অফসেট নির্ধারণ করে এবং বিটগুলি যা পৃষ্ঠা নির্ধারণ করে। প্রকৃতপক্ষে সম্বোধনকৃত ক্যাশে টিএলবিকে বাইপাস করে যদি কোনও ক্যাশে হিট থাকে তবে প্রসেসর যদি মিস করার ক্ষেত্রে টিএলবি অনুসন্ধান শুরু করে তবে ক্যাশে জিজ্ঞাসাবাদ করতে পারে।

টিএলবি নিজেই একটি প্রসঙ্গ সুইচ চলাকালীন পরিচালনা করতে হবে। যদি টিএলবি এন্ট্রিগুলিতে একটি এএসআইডি থাকে তবে সেগুলি স্থানে থাকতে পারে; অপারেটিং সিস্টেমটি কেবল তখনই টিএলবি এন্ট্রিগুলি ফ্লাশ করতে হবে যদি তাদের এএসআইডিটির অর্থ পরিবর্তিত হয় (উদাহরণস্বরূপ, কারণ একটি প্রক্রিয়া চলে এসেছে)। যদি টিএলবি এন্ট্রিগুলি বিশ্বব্যাপী হয় তবে ভিন্ন প্রসঙ্গে স্যুইচ করার সময় সেগুলি অবশ্যই বাতিল করতে হবে।


2
খুবই তথ্যবহুল. এটি কীভাবে বাস্তব স্থাপত্যগুলিতে করা হয় তার কয়েকটি উদাহরণ যুক্ত করতে পারলে এটি আরও ভাল।
জনআর্টুগো

2
@ জন্টটুরগো আমি যা লিখেছি তা আপনি এআরএমভি on (যেমন আপনার স্মার্টফোনের সিপিইউ) তে যা করতে পারেন তার সাথে মোটামুটিভাবে মিলে যায় (একমাত্র আর্কিটেকচার যেখানে আমি কখনও এমএমইউ হ্যান্ডলিং কোড লিখেছি)। আমি আশা করি যে অন্যান্য প্ল্যাটফর্মগুলি যেমন x86 মোটামুটি একই রকম হয় তবে আমি সেগুলি সম্পর্কে লিখতে পারি না। যদি আপনি একটি বাস্তব প্ল্যাটফর্ম সম্পর্কে কংক্রিট তথ্য সন্ধান করেন, কম্পিউটার বিজ্ঞান সঠিক সাইট নয়, আপনি স্ট্যাক ওভারফ্লো বা বৈদ্যুতিক প্রকৌশল বা এম্বেডড (প্রস্তাবিত) এ জিজ্ঞাসা করতে পারেন ।
গিলস 'দুষ্ট হওয়া বন্ধ করুন'

10

ক্যাশেটি সাধারণত একটি প্রসঙ্গে স্যুইচ করা সম্পর্কে অবগত নয়। অ্যাক্সেস করা মেমরি ঠিকানার ক্রমটি নির্ধারণ করে যে কোন ক্যাশে লাইনগুলি প্রতিস্থাপন করা হয়েছে।

প্রতিস্থাপন নীতিটি সাধারণত উত্পাদক এবং নির্দিষ্ট মাইক্রোআরকিটেকচারের উপর নির্ভর করে একটি হিউরিস্টিক নির্ভর। সমস্যাটি হ'ল ধর্মতাত্ত্বিক ভবিষ্যতের ভবিষ্যদ্বাণী করতে পারে না, যার ঠিকানায় এবং এরপরে ক্যাশে লাইনটি অ্যাক্সেস করা হবে।

হিউরিস্টিক এলআরইউ হিসাবে সহজ হতে পারে (সম্প্রতি ব্যবহৃত হয়েছে)। তবে আধুনিক সিপিইউগুলির সাথে হিউরিস্টিকগুলি আরও জটিল।

কটাক্ষপাত Intel 64 এবং IA-32 আর্কিটেকচারের সফটওয়্যার উন্নয়নকারীর ম্যানুয়াল ভলিউম 3 অধ্যায় 11 মেমরির ক্যাশে এবং ক্যাশে নিয়ন্ত্রণ প্রক্রিয়া ব্যাখ্যা করে। এএমডি এর এএমডি 64 আর্কিটেকচার প্রোগ্রামারের ম্যানুয়াল ভলিউম 2: সিস্টেম প্রোগ্রামিংয়ের অধ্যায় 7 এ রয়েছে । এআরএম ভিত্তিক সিপিইউগুলির জন্য মনে হয় পিডিএফগুলি কেবল নিবন্ধিত গ্রাহকদের জন্য উপলব্ধ।


আপনি কি প্রথম অনুচ্ছেদের জন্য একটি রেফারেন্স দিতে পারেন? বা লিঙ্কযুক্ত নথিগুলি কি এই ইস্যুকে বোঝায়?
রাফায়েল

আচরণটি নির্ভর করে ক্যাশে শারীরিকভাবে বা কার্যত সম্বোধন করা হয়েছে কিনা তার উপর। প্রতিস্থাপন নীতি এখানে প্রাসঙ্গিক নয়। এআরএমের জন্য, প্রসেসরের প্রযুক্তিগত ম্যানুয়ালগুলিতে তথ্য রয়েছে, যা সর্বজনীন, যেমন কর্টেক্স-এ 9-তে এল 1 (আপনি সর্বশেষ-প্রজন্মের সেল ফোনে যা পেয়েছেন), যদিও এটি জনসাধারণের আর্কিটেকচার রেফারেন্স ম্যানুয়াল ছাড়া বুঝতে অসুবিধা হতে পারে ।
গিলস 'দুষ্ট হওয়া বন্ধ করুন'

1
@ রাফেল আমি "সাধারণত" লিখেছিলাম কারণ প্রসেসরের সাহায্যে আমি এসেছি, ক্যাশে নিজেই থ্রেড, প্রক্রিয়া, প্রসঙ্গ ইত্যাদি সম্পর্কে কোনও জ্ঞান রাখে না এটি কেবল স্মৃতি অ্যাক্সেসের প্রতিক্রিয়া দেখায়। যদি ডেটা ক্যাশেটি ফ্লাশ করা হয় এবং নির্দেশের ক্যাশে প্রসঙ্গের সুইচে অকার্যকর হয়, তবে এটি ওএস যা এই ক্রিয়াকে ক্যাশে নয় ট্রিগার করে। আপনি যদি অন্য কোনও ওএস ইনস্টল করেন তবে এই আচরণটি পরিবর্তন হতে পারে।
uli

@ গিলস একবারের জন্য আমি একটি সংক্ষিপ্ত উত্তর দেওয়ার চেষ্টা করেছি এবং ভার্চুয়াল মেমরির বিষয়ে না লেখার সিদ্ধান্ত নিয়েছি, কারণ এটি তাত্ক্ষণিকভাবে ওএসকে জড়িত। এবং সময় বিবেচ্য এছাড়াও বিবেচনা আছে। "কিছুই পরিবর্তন হয় না" প্রসঙ্গের সুইচ এবং পরবর্তী মেমরি অ্যাক্সেসের মধ্যে সময়ের জন্য একটি উত্তর হতে পারে, কারণ ক্যাশে বিষয়বস্তু অবৈধ হতে পারে তবে একেবারেই পরিবর্তন করা যায় না।
uli
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.