বৈজ্ঞানিক কম্পিউটিংয়ে এমন কোনও বিখ্যাত সমস্যা / অ্যালগরিদম রয়েছে যা সমান্তরালভাবে বাড়াতে পারে না


27

বৈজ্ঞানিক কম্পিউটিংয়ে এমন কোন বিখ্যাত সমস্যা / অ্যালগরিদম আছে যা সমান্তরালভাবে বাড়াতে পারে না? চুদা বই পড়ার সময় আমার কাছে মনে হয় বেশিরভাগ জিনিসই হতে পারে।


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

গ্রাম শ্মিট অ্যালগরিদম: en.wikipedia.org/wiki/Gram%E2%80%93Schmidt_process

3
@ অ্যানকর্ন নং, বাম চেহারার শাস্ত্রীয় গ্রাম-শ্মিট এবং ডানদিকের পরিবর্তিত গ্রাম-শ্মিট সমান্তরালে ভালভাবে কাজ করে। সম্প্রতি জনপ্রিয় টিএসকিউআর সহ আরও অনেক সমান্তরাল কিউআর অ্যালগরিদম রয়েছে।
জেদ ব্রাউন

@ রাফেল: আমি মনে করি যে ফ্যাক্টর লগ (এন), এন = # প্রসেসরের মাধ্যমে বাইনারি অনুসন্ধানের গতি বাড়ানো সম্ভব নয়। পরিবর্তে ও অনুসন্ধানের ব্যবধানটি অংশগুলিতে বিভক্ত করে এবং কোথায় চলতে হবে তা পরীক্ষা করে, বিরতিটি n অংশগুলিতে ভাগ করুন। সম্ভবত আরও দক্ষ উপায় আছে, আমি জানি না।
चमत्कार 173

উত্তর:


32

CTCTCTTNClogT

উদাহরণ

  • C=T
  • m×mT=N=O(m2)C=m=T
  • T=NC=logT
  • τ(0,1)dk=τ/ΔtτN1/dC=kT=kN=τN(d+1)/dP=T/C=NN1/d

সাধারণ জটিলতা

NC=P



9

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

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

শেষ অবধি, যে কোনও সময় কোনও টুকরো কোডের শাখা প্রশাখার প্রয়োজন হয়, এএলইউর সাধারণত যুক্তি ছাড়িয়ে যাওয়ায় এটি ভাল পারফরম্যান্স পাওয়ার সম্ভাবনা কম।

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

ব্রাঞ্চিং সমস্যা থেকে মুক্ত একটি উদাহরণ হ'ল কোনও ভেক্টর গণনা করা যা অন্য ভেক্টরের সংখ্যার যোগফল। ([1,2,1] -> [1,3,4])

আমি জানি না যে এইগুলি "বিখ্যাত" হিসাবে গণ্য হয়েছে তবে অবশ্যই এখানে প্রচুর সমস্যা রয়েছে যে সমান্তরাল কম্পিউটিং আপনাকে সহায়তা করবে না।


3
আপনি যে "ব্রাঞ্চিং ফ্রি উদাহরণ" দিয়েছেন তা হল উপসর্গ-সমষ্টি, যা আসলে একটি ভাল সমান্তরাল অ্যালগরিদম রয়েছে: http.developer.nvidia.com/GPUGems3/gpugems3_ch39.html শূন্যের সংখ্যা গণনা করা একই কারণগুলির জন্য দক্ষ হওয়া উচিত। পাটিগণিতের তীব্রতার আশেপাশে কোনও উপায় নেই, যদিও ...
সর্বোচ্চ হাচিনসন

কুল। আমি যে এক সংশোধন দাঁড়িয়ে।
meawoppl

8

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

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

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

(আমি লিখি "(সম্ভবত) হ'ল", কারণ নিম্নের সীমাটি প্রমাণ করা কুখ্যাতভাবে কঠিন এবং প্রায়শই একটি অ্যালগরিদম দ্বারা ব্যবহৃত অপারেশনগুলির জন্য কিছু যুক্তিসঙ্গত অনুমানের প্রয়োজন হয়।)


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

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

@ জেডব্রাউন একটি ব্যবহারিক দৃষ্টিকোণ থেকে, উচ্চ ফ্রিকোয়েন্সি হেলহোল্টজের জন্য মাল্টিগ্রিড আপনার পক্ষে যে মন্তব্য করেছেন তার বিপরীতে যথেষ্ট চ্যালেঞ্জিং। এবং এককোনাল সমীকরণের জন্য মাল্টিগ্রিড ব্যবহার করা "অস্বাভাবিক", একেবারে বলতে গেলে। তবে আমি প্রস্তাবিত লো-বাউন্ডের বিরুদ্ধে আপনার "তাত্ত্বিক" আপত্তিটি দেখছি: গোলকধাঁধার অভ্যন্তরে বিভিন্ন পয়েন্ট থেকে সময় অফসেটগুলি এই পয়েন্টগুলিতে পৌঁছানোর সময়টি জানা হওয়ার আগে গণনা করা যেতে পারে এবং অনুপস্থিত তথ্য উপলব্ধ হওয়ার পরে সমান্তরালে যুক্ত করা যেতে পারে। তবে বাস্তবে সাধারণ উদ্দেশ্য সমান্তরাল একোনাল সলভাররা যদি তারা সীমাবদ্ধতার কাছে আসে তবে তারা খুশি happy
থমাস ক্লিম্পেল

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

Www2.ts.ctw.utwente.nl/venner/PRESENTATIONS/MSc_Verburg.pdf (2010 থেকে) @ জেডব্রাউন স্লাইড 39 বলে "" 2D থেকে 3D তে সলভার প্রসারিত করুন "এবং" দৃ strongly়তমভাবে পরিবর্তিত ওয়েভেনবারগুলির সমস্যাগুলির সাথে অভিযোজিত পদ্ধতি "এর মতো জিনিসগুলি বলে। সুতরাং তরঙ্গ-রে মাল্টিগ্রিড আশাব্যঞ্জক হতে পারে, তবে "এখনও পরিপক্ক নয়" এর বর্তমান সমস্যাগুলি বর্ণনা করার জন্য "খুব প্রযুক্তিগত" চেয়ে বেশি উপযুক্ত বলে মনে হচ্ছে। এবং এটি আসলে কোনও উচ্চ ফ্রিকোয়েন্সি হেলমহোল্টজ সলভার নয় (কারণ এটি একটি "সম্পূর্ণ তরঙ্গ" সমাধানকারী)। অন্যদের "যথেষ্ট পরিপক্ক" মাল্টিগ্রিড হেল্মহোল্টজ সলভার ("ফুল ওয়েভ" সলভার) রয়েছে, তবে এগুলি এখনও "সক্রিয় গবেষণা"।
থমাস ক্লিম্পেল

1

অনুশীলনের সাথে সমান্তরাল করা আরও শক্তিশালী আরও একটি সমস্যা হ'ল গোলাকৃতি ত্রুটির সংবেদনশীল সমস্যা, যেখানে সিরিয়ালাইজেশন দ্বারা সংখ্যার স্থায়িত্ব অর্জন করা হয়।

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

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