ঐতিহাসিক দৃষ্টিকোণ
ভবিষ্যতে নতুন দৃষ্টান্তগুলি কেমন হবে তা বলা সত্যিই অসম্ভব, উদাহরণস্বরূপ একটি ভাল historicalতিহাসিক দৃষ্টিভঙ্গি আমি কেন কেনেডি রাইজ এবং ফল এইচপিএফ পড়ার পরামর্শ দিচ্ছি । কেনেডি দুটি উদীয়মান নিদর্শনগুলির একটি বিবরণ দেয়, এমপিআই বনাম একটি স্মার্ট সংকলক, এবং এমপিআই কীভাবে প্রারম্ভিক গ্রহণকারীদের সঠিক পরিমাণ এবং আধিপত্য বজায় রাখতে নমনীয়তার বিবরণ দেয় details এইচপিএফ শেষ পর্যন্ত এর সমস্যাগুলি স্থির করে তবে অনেক দেরি হয়ে যায়।
বিভিন্ন উপায়ে, পিজিএএস এবং ওপেনএমপি এর মতো বেশ কয়েকটি দৃষ্টান্তগুলি একই এইচপিএফ প্রবণতা অনুসরণ করছে। প্রারম্ভিক কোডগুলি ভালভাবে ব্যবহার করার জন্য যথেষ্ট নমনীয় নয় এবং টেবিলে প্রচুর পারফরম্যান্স রেখে গেছে। তবে সমান্তরাল অ্যালগরিদমের প্রতিটি আইওটা না লেখার প্রতিশ্রুতি আকর্ষণীয় লক্ষ্য। তাই সর্বদা নতুন মডেলদের অনুসরণ করা হচ্ছে।
হার্ডওয়্যার মধ্যে প্রবণতা সাফ করুন
এখন এমপিআইয়ের সাফল্য প্রায়শই ঘনিষ্ঠভাবে আবদ্ধ হওয়ার সাথে উল্লেখ করা হয়েছে যে এটি যে হার্ডওয়্যারটি চালায় এটির মডেলগুলি। মোটামুটিভাবে প্রতিটি নোডে কয়েকটি সংখ্যক প্রক্রিয়া থাকে এবং স্থানীয় পয়েন্ট-টু-পয়েন্টে বা সমন্বিত সম্মিলিত ক্রিয়াকলাপগুলির মাধ্যমে বার্তাগুলি সহজেই ক্লাস্টার স্পেসে সম্পন্ন করা হয়। এ কারণেই, আমি এমন কাউকে বিশ্বাস করি না যে এমন একটি দৃষ্টান্ত দেয় যা নতুন হার্ডওয়্যার প্রবণতাগুলিকে ঘনিষ্ঠভাবে অনুসরণ করে না, আমি বিভাক সারকারের কাজ দ্বারা এই মতামতটি সম্পর্কে সত্যই নিশ্চিত হয়েছি ।
এটির সাথে তাল মিলিয়ে এখানে তিনটি ট্রেন্ড রয়েছে যা স্পষ্টতই নতুন স্থাপত্যে অগ্রগতি অর্জন করছে। এবং আমাকে পরিষ্কার করা যাক, এইচপিসিতে এখন বারোটি বিভিন্ন আর্কিটেকচার বিপণন হচ্ছে। এটি 5 বছরেরও কম আগে কেবল x86 এর বৈশিষ্ট্যযুক্ত, তাই আগামী দিনগুলি বিভিন্ন এবং আকর্ষণীয় উপায়ে হার্ডওয়্যার ব্যবহারের প্রচুর সুযোগ দেখতে পাবে
- বিশেষ উদ্দেশ্য চিপস: এক্সিলিটরগুলির মতো বড় ভেক্টর ইউনিটগুলি ভাবেন (এনভিডিয়া বিল ডালি দ্বারা রচিত দেখুন)
- লো পাওয়ার চিপস: এআরএম ভিত্তিক ক্লাস্টারগুলি (পাওয়ার বাজেটের সংস্থান করতে)
- চিপস টাইলিং: বিভিন্ন স্পেসিফিকেশন সহ চিপগুলি টাইলিং ( অবান্তর আরগওয়ালের কাজ )
বর্তমান মডেল
বর্তমান মডেলটি আসলে 3 স্তরের গভীর। যদিও এই দুটি স্তরের দুটি ব্যবহার করে অনেকগুলি কোড রয়েছে তবে তিনটি ব্যবহার করেই অনেকের উদ্ভব হয়নি। আমি বিশ্বাস করি যে প্রথমে প্রবাসে পৌঁছানোর জন্য আপনার কোডটি তিনটি স্তরে চালানো যায় কিনা তা নির্ধারণে বিনিয়োগ করা দরকার। বর্তমান ট্রেন্ডগুলির সাথে ভাল পুনরাবৃত্তি করার এটি সম্ভবত নিরাপদতম পথ।
আমাকে মডেলগুলি সম্পর্কে পুনরাবৃত্তি করতে দিন এবং ভবিষ্যদ্বাণী করা নতুন হার্ডওয়্যার মতামতের ভিত্তিতে তাদের কীভাবে পরিবর্তন করতে হবে।
বণ্টিত
বিতরণ স্তরের খেলোয়াড়রা মূলত এমপিআই এবং পিজিএএস ভাষায় পড়ে into এমপিআই এখনই স্পষ্ট বিজয়ী, তবে ইউপিসি এবং চ্যাপেলের মতো পিজিএএস ভাষাগুলি মহাকাশে এগিয়ে চলেছে। একটি ভাল ইঙ্গিত হ'ল এইচপিসি বেঞ্চমার্ক চ্যালেঞ্জ। পিজিএএস ভাষাগুলি মানদণ্ডগুলির খুব মার্জিত বাস্তবায়ন দিচ্ছে।
এখানে সবচেয়ে মজার বিষয় হ'ল এই মডেলটি বর্তমানে নোড পর্যায়ে কেবল কাজ করলেও এটি টাইল্ড আর্কিটেকচারের জন্য নোডের অভ্যন্তরে একটি গুরুত্বপূর্ণ মডেল হবে। একটি ইঙ্গিতটি হ'ল ইনটেল এসসিসি চিপ, যা মূলত বিতরণ ব্যবস্থার মতো কাজ করেছিল। এসসিসি টিম তাদের নিজস্ব এমপিআই বাস্তবায়ন তৈরি করেছিল এবং অনেকগুলি দল এই স্থাপত্যে সম্প্রদায়ের লাইব্রেরিগুলি পোর্ট করতে সফল হয়েছিল।
তবে সত্যি কথা বলতে পিজিএএসের এই স্থানটিতে পা রাখার জন্য সত্যিই একটি ভাল গল্প রয়েছে। আপনি কি সত্যিই এমপিআই ইন্টারনোড প্রোগ্রাম করতে চান এবং তারপরে একই কৌশলটি ইন্ট্রনোড করতে হবে? এই টাইল্ড আর্কিটেকচারগুলির সাথে একটি বড় চুক্তি হ'ল চিপগুলির উপরে তাদের বিভিন্ন ঘড়ির গতি থাকবে এবং মেমরির ব্যান্ডউইদথের বড় পার্থক্য তাই পারফর্মেন্ট কোডগুলি এটিকে বিবেচনায় নিতে হবে।
অন-নোড ভাগ করা মেমরি
এখানে আমরা দেখতে পাই যে এমপিআই প্রায়শই "যথেষ্ট ভাল" হয় তবে পিথ্রেডস (এবং পিট্রেডস থেকে প্রাপ্ত লাইব্রেরি যেমন ইন্টেল প্যারালাল বিল্ডিং ব্লকস) এবং ওপেনএমপি এখনও প্রায়শই ব্যবহৃত হয়। সাধারণ মতামতটি এমন একটি সময় আসবে যখন পর্যাপ্ত অংশীদারিযুক্ত মেমরি থ্রেড থাকবে যা এমপিআইয়ের সকেট মডেলটি আরপিসির জন্য ভেঙে যাবে বা আপনার হালকা ওজন প্রক্রিয়াটি কোরটিতে চালিত হওয়া দরকার। ইতিমধ্যে আপনি আইবিএম ব্লুজেইন সিস্টেমগুলির ভাগ করে নেওয়া মেমরি এমপিআইতে সমস্যা রয়েছে তার ইঙ্গিতগুলি দেখতে পাচ্ছেন।
ম্যাট মন্তব্য হিসাবে, গণনা নিবিড় কোডগুলির বৃহত্তম কর্মক্ষমতা বৃদ্ধি সিরিয়াল কোড ভেক্টরাইজেশন হয়। যদিও অনেকে ধরে নিয়েছেন যে এটি এক্সিলিটরগুলির ক্ষেত্রে সত্য, এটি অন-নোড মেশিনগুলির জন্যও গুরুত্বপূর্ণ। আমি বিশ্বাস করি ওয়েস্টমিয়ারের 4 টি প্রশস্ত এফপিইউ রয়েছে, সুতরাং ভেক্টরাইজেশন ছাড়াই একজন কেবল চতুর্থাংশ ফ্লপ পেতে পারে।
আমি এই স্থানটিতে বর্তমান ওপেনএমপিটি ভালভাবে পা রাখার বিষয়টি দেখতে পাচ্ছি না, আরও হালকা থ্রেড ব্যবহার করার জন্য স্বল্প-চালিত বা টাইলস চিপগুলির জন্য একটি জায়গা রয়েছে। ওপেনএমপি-তে ডেটা প্রবাহ কীভাবে কাজ করে তা বর্ণনা করতে সমস্যা হয় এবং আরও থ্রেড ব্যবহার করা হয় আমি কেবল এই প্রবণতাটি আরও অতিরঞ্জিত হয়ে দেখছি, কেবল ওপেনএমপি-র সাথে প্রিফেচিং পেতে কী কী করতে হবে তার উদাহরণগুলি দেখুন।
কোর্সের পর্যায়ে পর্যাপ্ত পর্যায়ে ওপেনএমপি এবং পিথ্রেড উভয়ই ভাল শতাংশের শিখর অর্জনের জন্য প্রয়োজনীয় ভেক্টরাইজেশনের সুযোগ নিতে পারে, তবে এটির জন্য আপনার অ্যালগরিদমগুলি এমনভাবে ভেঙে ফেলতে হবে যাতে ভেক্টরাইজেশন স্বাভাবিক is
কো-প্রসেসর
অবশেষে কো-প্রসেসরের উত্থান (জিপিইউ, এমআইসি, সেল একেলিটার) ধরেছে। এটি স্পষ্ট হয়ে উঠছে যে তাদের ছাড়া প্রবাসের কোনও পথই সম্পূর্ণ হবে না। এসসি 11 এ, প্রতিটি বেল পুরষ্কার প্রতিযোগী স্বল্প পেটফ্ল্যাপগুলিতে পৌঁছাতে খুব কার্যকরভাবে তাদের ব্যবহার করেছিলেন used যদিও CUDA এবং ওপেনসিএল বর্তমান বাজারে আধিপত্য বিস্তার করেছে, আমার কাছে আশা রয়েছে যে ওপেনএসিসি এবং পিজিএএস সংকলকরা স্পেসে প্রবেশ করবে।
এখন এক্সেসকেলে যেতে, একটি প্রস্তাব হ'ল কম চালিত চিপগুলি প্রচুর সহ-প্রসেসরের সাথে যুক্ত করা। এটি বর্তমান স্ট্যাকের মাঝারি স্তরটিকে খুব ভালভাবে মেরে ফেলবে এবং কোডগুলি ব্যবহার করবে যা মূল চিপের সিদ্ধান্ত সমস্যাগুলি পরিচালনা করে এবং সহ প্রসেসরগুলিকে কাজ বন্ধ করে দেবে। এর অর্থ হল কোড কার্যকরভাবে কার্যকর করার জন্য কোনও ব্যক্তিকে অবশ্যই কার্নেলের (অথবা কোডলেট) শর্তাবলী অনুসারে অ্যালগরিদমগুলি নিয়ে পুনর্বিবেচনা করতে হবে, এটি শাখাবিহীন নির্দেশ স্তরের সমান্তরাল স্নিপেট। আমি যতদূর জানি, এই বিবর্তনের সমাধান বেশ বিস্তৃত খোলা।
এটি অ্যাপ্লিকেশন বিকাশকারীকে কীভাবে প্রভাবিত করে
এখন আপনার প্রশ্ন পেতে। আপনি যদি এক্সেস্কেল মেশিনগুলির আগত জটিলতা থেকে নিজেকে রক্ষা করতে চান তবে আপনার কয়েকটি জিনিস করা উচিত:
- সমান্তরাল স্তরক্রমের কমপক্ষে তিন স্তরের ফিট করতে আপনার অ্যালগরিদমগুলি বিকাশ করুন।
- আপনার অ্যালগরিদমগুলি কার্নেলের ক্ষেত্রে ডিজাইন করুন যা উত্তরাধিকার সূত্রে স্থানান্তরিত হতে পারে।
- যেকোন ক্রমিক ক্রিয়াকলাপের জন্য আপনার প্রয়োজনকে শিথিল করুন, এই সমস্ত প্রভাবগুলি অবিচ্ছিন্নভাবে ঘটবে কারণ সমকালীন বাস্তবায়ন কেবল সম্ভব নয়।
আপনি যদি আজ পারফরম্যান্ট হতে চান তবে এমপিআই + চুদা / ওপেনসিএল যথেষ্ট ভাল তবে ইউপিসি সেখানে পাচ্ছে তাই কয়েক দিন সময় নেওয়ার এবং এটি শেখার কোনও খারাপ ধারণা নয়। ওপেনএমপি আপনাকে শুরু করে তবে কোডটি পুনরায় সংশোধন করার পরে সমস্যার দিকে নিয়ে যায়। পিথ্রেডগুলির সম্পূর্ণরূপে আপনার কোডটিকে তার স্টাইলে পুনরায় লেখা দরকার। যা এমপিআই + সিইউডিএ / ওপেনসিএলকে বর্তমানের সেরা মডেল করে তোলে।
কী এখানে আলোচনা করা হয় না
এক্সকাসেলের এই সমস্ত আলাপটি দুর্দান্ত, যদিও এখানে সত্যই আলোচিত নয় এমন কিছু হ'ল মেশিনগুলির উপর এবং বন্ধ হয়ে ডেটা পাচ্ছে। যদিও মেমোরি সিস্টেমগুলিতে অনেক অগ্রগতি হয়েছে, আমরা সেগুলি পণ্য গোষ্ঠীতে দেখতে পাই না (কেবলমাত্র ব্যয়বহুল)। এখন যেহেতু ডেটা ইনটেনসিভ কম্পিউটিং সমস্ত সুপার কম্পিউটিং কনফারেন্সগুলির একটি বড় ফোকাসে পরিণত হচ্ছে, উচ্চ মেমরির ব্যান্ডউইথ স্পেসে এটি একটি বৃহত্তর আন্দোলন হতে বাধ্য।
এটি ঘটতে পারে এমন অন্যান্য ট্রেন্ডকে নিয়ে আসে (যদি সঠিক তহবিল সংস্থাগুলি জড়িত থাকে)। প্রয়োজনীয় কম্পিউটারিংয়ের ধরণের জন্য মেশিনগুলি আরও বেশি বিশেষায়িত হতে চলেছে। আমরা ইতিমধ্যে এনএসএফ দ্বারা অর্থায়িত "ডেটা-ইনটেনসিভ" মেশিনগুলি দেখছি, তবে এই মেশিনগুলি 2019 এর এক্সাসাকেল গ্র্যান্ড চ্যালেঞ্জের চেয়ে আলাদা ট্র্যাকের দিকে।
মন্তব্যগুলিতে আপনার যেখানে প্রয়োজন সেগুলির জন্য রেফারেন্স জিজ্ঞাসা করা প্রত্যাশার চেয়ে দীর্ঘ হয়ে গেল