সিপিইউ আর্কিটেকচারগুলি প্রক্রিয়াগত রানটাইমের দিকে পক্ষপাতদুষ্ট?


13

মরিচের মতো সাম্প্রতিক রানটাইমগুলির জন্য আরও ভাল পারফরম্যান্স তৈরি করতে সিপিইউতে এমন কিছু পরিবর্তন আনা যেতে পারে কি? উদাহরণস্বরূপ, শাখার পূর্বাভাস বাস্তবায়ন বা ক্যাশে আকারগুলিতে পরিবর্তনগুলি রয়েছে যা সমবর্তী রানটাইমগুলিতে সহায়তা করবে?

আমার ধারণা আছে যে বর্তমান সিপিইউ ডিজাইনগুলি সি'র মতো পদ্ধতিগত রানটাইমগুলির জন্য আরও অনুকূলিত হতে পারে যদি আমরা পরিবর্তে সমবর্তী রানটাইমগুলির জন্য অনুকূল করতে যাই, তবে সিপিইউগুলি কীভাবে আলাদা হবে?

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

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

সমকালীন কোডের তুলনায় সিপিইউ আর্কিটেকচারগুলি কি প্রসেসরিজ কোডের দিকে পক্ষপাতযুক্ত; বা আধুনিক সিপিইউগুলি কি পর্যাপ্ত সাধারণ-উদ্দেশ্য যা একটি উচ্চতর যুগপত ভাষা ভোগ করে না?


2
আপনি কি Itanium (IA-64) আর্কিটেকচারের চারপাশের সাহিত্যের দিকে নজর রেখেছেন? এটি অতিবেগীয়তার দুর্দান্ত স্বপ্নগুলির সাথে ডিজাইন করা হয়েছিল, তবে তখন লোকেরা সিপিইউর বৈশিষ্ট্যগুলির সুবিধা নেবে এমন সংকলক তৈরি করতে ব্যর্থ হয়েছিল, এবং সফ্টওয়্যার সর্বোপরি এত ভাল পরিবেশিত হয়নি didn't
গিলস

@ গিলস হ্যাঁ যদিও একটি ভিন্ন প্রশ্ন, এটি আসলে একটি আকর্ষণীয় পর্যবেক্ষণ - সম্ভবত ইটানিয়ামে বেকানো সমান্তরালতা আধুনিক যুগ্ম ভাষাগুলির পক্ষে আরও উপযুক্ত হতে পারে?
পেনক্রিসেস

@ গিলস: এবং একইভাবে, নতুন মিল আর্কিটেকচারটি সমান্তরালতা এবং স্বল্পমূল্যের স্যুইচগুলি মাথায় রেখে নির্মিত হয়েছে বলে মনে হয়। উদাহরণস্বরূপ, সমস্ত "প্রক্রিয়াগুলির" জন্য একক ভার্চুয়াল ঠিকানা স্থান ব্যবহার করে, এটি শেষ ক্যাশে স্তর এবং ডিভাইস কন্ট্রোলারগুলির মধ্যে টিএলবিকে পিছনে ঠেলে দেয় ( মিলকমপটিং / ডকস / মেমোরির স্লাইড 49 দেখুন )।
ম্যাথিউ এম।

1
@pedAntic মরিচা রানটাইমের প্রয়োজন একটি ভুল ধারণা যা সহজেই তৈরি করা যায়: chat.stackoverflow.com/transcript/message/24171983#24171983 । আপনার প্রশ্নটি এই ভ্রান্ত ধারণাকে সমর্থন করে বলে মনে হচ্ছে যা মরচে জন্য ভাল জিনিস নয়।
আর্টেমগার

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

উত্তর:


1

সম্ভবত এটি আরও বেশি ক্ষেত্রে যে আধুনিক কম্পিউটার আর্কিটেকচারগুলি ডাই এরিয়া এবং বিদ্যুৎ ব্যবহারের ব্যয় বাজেটের তুলনায় সংকলকগণের দ্বারা উত্পন্ন কোডের মান উন্নয়নের লক্ষ্যে ডিজাইন করা হয়েছে। রানটাইম লাইব্রেরিগুলি সংকলিত কোডের একটি নির্দিষ্ট উদাহরণ যা একটি কার্যকর পদ্ধতিতে কার্যকর করা দরকার।

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

এর ফলস্বরূপ মনে হয় যে নতুন ভাষাগুলি প্রায়শই তাদের সি সমতুল্য শব্দার্থবিজ্ঞানের ক্ষেত্রে সংজ্ঞায়িত করা হয় যাতে তারা প্রসেসরের সুবিধাগুলির প্রয়োজনীয়তা এড়াতে পারে যা সম্ভবত বর্তমান কম্পিউটারগুলিতে অনুপস্থিত রয়েছে।

আধুনিক সংকলকগুলির সাথে ভালভাবে মেলে এমন একটি প্রসেসরের পে-অফটি হ'ল সেই সংকলকগুলির কোডটি ভালভাবে চালিত হয় এবং প্রসেসরের কমপক্ষে প্রতিযোগিতামূলক হওয়ার সুযোগ থাকে। প্রসেসরটি শুরু হওয়ার আগেই এখানে ব্যর্থতার ব্যয় হয়। নেতিবাচক দুটি মাত্র উদাহরণের মধ্যে রয়েছে আইএপিএক্স -৩৩২ এবং ইটেনিয়াম, উভয়ই ইন্টেলের দ্বারা অন্তর্ভুক্ত। উভয়ই তাদের সংকলক (যথাক্রমে আডা এবং সি) এর সাথে খুব খারাপ সম্পর্ক রেখেছিল পণ্যগুলি ব্যর্থতার সাথে সিলিকন এবং সফ্টওয়্যারগুলির মধ্যে দোষের খেলায় পরিণত হয়েছিল।


0

নিঃসন্দেহে, হ্যাঁ

বিশেষত, সি 99 দ্বারা প্রেরিত যোগাযোগ মডেলটি ভাগ করা-মেমরি। আরও উন্নত সমকালীন ভাষাগুলিতে সমৃদ্ধ যোগাযোগের মডেল রয়েছে যেমন ম্যাসেজ পাসিং চ্যানেলগুলি (জাস্ট হিসাবে)।

আধুনিক সিপিইউ আর্কিটেকচারের শেয়ার্ড মেমরির জন্য স্পষ্টত হার্ডওয়্যার সমর্থন রয়েছে। বিশেষত, এমইএসআই এর মতো ক্যাশে সুসংহত প্রোটোকল বাস্তব গেট এবং তারগুলিতে প্রয়োগ করা হয়। প্রক্রিয়াগুলির মধ্যে বার্তা প্রেরণের জন্য সত্যিকারের সমর্থন নেই, যদিও বার্তাটি পাস করার ধারণাটি সিপিইউর পক্ষে নয়। আধুনিক পিসিআই-ই বাসগুলি এমনকি বার্তা পাসিং ব্যবহার করে ভাগ করা মেমরি অনুকরণ করে, যেখানে সিপিইউ প্রক্রিয়াগুলিকে ভাগ করে নেওয়া মেমরি ব্যবহার করে বার্তাগুলি অনুকরণ করতে হয়!

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.