ম্যাপরেডুসে অভিনবত্বটি কী?


67

কয়েক বছর আগে ম্যাপ্রেডিউস বিতরণ প্রোগ্রামিংয়ের বিপ্লব হিসাবে প্রশংসিত হয়েছিল। সমালোচকরাও রয়েছেন তবে বড় আকারে একটি উত্সাহী হাইপ ছিল। এমনকি এটি পেটেন্টও পেয়ে গেল! [1]

নামটি স্মরণীয় mapএবং reduceকার্যকরী প্রোগ্রামিংয়ে, তবে যখন আমি পড়ি (উইকিপিডিয়া)

মানচিত্রের পদক্ষেপ: মাস্টার নোড ইনপুট নেয়, এটিকে ছোট ছোট সাব-সমস্যায় ভাগ করে এবং কর্মী নোডগুলিতে বিতরণ করে। কোনও শ্রমিক নোড আবার ঘুরে ফিরে এটি করতে পারে, ফলে বহু স্তরের গাছের কাঠামো তৈরি হয়। কর্মী নোড ছোট সমস্যাটি প্রসেস করে এবং উত্তরটি তার মাস্টার নোডে ফেরত দেয়।

পদক্ষেপ হ্রাস করুন: মাস্টার নোড তারপরে সমস্ত উপ-সমস্যার উত্তর সংগ্রহ করে এবং আউটপুট গঠনের জন্য কোনওভাবে তাদের একত্রিত করে - সমস্যার সমাধান যা মূলত এটি সমাধান করার চেষ্টা করছিল।

বা [2]

মানচিত্রের অভ্যন্তরীণ: [...] এমএপি ইনপুট মানটিকে শব্দের মধ্যে বিভক্ত করে। [...] এমএপি বলতে বোঝানো হয় ইনপুটটির প্রতিটি প্রদত্ত কী / মান জোড়াকে অনেকগুলি মধ্যবর্তী কী / মান জোড়ার সাথে যুক্ত করে।

অভ্যন্তরের অভ্যন্তরীন: [...] [রেডইউসিই] অত্যাবশ্যকীয় সমষ্টি সম্পাদন করে (বলুন, হ্রাস): অনেকগুলি মান নিয়ে যায় এবং সেগুলিকে একক মানে হ্রাস করে।

আমি সাহায্য করতে পারছি না তবে ভাবতে পারি: এটি বিভাজন এবং বিজয় (মার্জেসোর্টের অর্থে), সরল এবং সরল! সুতরাং, মানচিত্রের কোথাও কোথাও (ধারণাগত) অভিনবত্ব আছে, বা এটি কেবল কিছু পুরানো ধারণার একটি নতুন বাস্তবায়ন নির্দিষ্ট পরিস্থিতিতে কার্যকর?


  1. ইউএস পেটেন্ট 7,650,331: "দক্ষ বৃহত আকারের ডেটা প্রক্রিয়াকরণের জন্য সিস্টেম এবং পদ্ধতি" (2010)
  2. গুগলের ম্যাপ্রেডস প্রোগ্রামিং মডেল - আর। লিমেল (2007) দ্বারা পুনর্বিবেচিত

7
কোন নতুনত্ব নেই। আমি এটির কোনও উত্তর দেব না, তবে এটি আমার দৃ strong় মতামত যে গণনায় নতুন কিছু নয়, এমনকি বিতরণকৃত কম্পিউটিংও ম্যাপ্রেডুস আবিষ্কার করেছিলেন।
এডিএ-কিএ মার্ট-ওরা-ই

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

@ edA-qamort-ora-y: সেক্ষেত্রে আমাদের ম্যাপ্রেইডুসকে পুরানো শর্তে প্রকাশ করতে সক্ষম হওয়া উচিত, এবং এটি উত্তরের জবাব দেবে!
রাফেল

1
@ রাফেল, আমি সম্মত, কিন্তু আমি নিশ্চিত যে আমি এটি করতে পারি না। তবে, আমি পর্যবেক্ষণ করতে পারি, এখানে বর্ণিত হিসাবে (প্রথম উদ্ধৃতি), মার্জ সাজ্ট মানচিত্র / হ্রাসের সঠিক পদ্ধতি ব্যবহার করে। এটি সত্যই শূন্য পরিবর্তনের সাথে বিতরণ করা যেতে পারে।
এডিএ-কিএ মার্ট-ওরা-ই

উত্তর:


47

আমি সাহায্য করতে পারছি না তবে ভাবতে পারি: এটি বিভাজন এবং বিজয়, সরল এবং সরল!

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


সুতরাং, মানচিত্রের কোথাও কোথাও (ধারণাগত) অভিনবত্ব আছে, বা এটি কেবল কিছু পুরানো ধারণার একটি নতুন বাস্তবায়ন নির্দিষ্ট পরিস্থিতিতে কার্যকর?

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


MapReduce কাগজ এর অবদান ছিল

  1. দুটি সুগঠিত অर्थোগোনাল অপারেটরগুলির একটি পাইপলাইনের মূল্যায়ন যা একটি নির্দিষ্ট সমস্যার উপর দক্ষতার সাথে এবং ফল্ট-সহনশীলভাবে বিতরণ করা যেতে পারে: বৃহত কর্পাসের একটি পাঠ্য সূচী তৈরি করা
  2. নোডগুলির মধ্যে কতটা ডেটা স্থানান্তরিত হয় এবং পর্যায়ক্রমে কীভাবে বিলম্বিততার পার্থক্য সামগ্রিক বিলম্বকে প্রভাবিত করে তা দেখানোর জন্য মানচিত্রে মানচিত্রে মানচিত্রটি কমিয়ে আনা
  3. সিস্টেম দোষ কীভাবে সহনীয় করা যায় তা দেখানো হচ্ছে যাতে গণনার সময় মেশিনের ব্যর্থতা স্বয়ংক্রিয়ভাবে ক্ষতিপূরণ পাওয়া যায়
  4. নির্দিষ্ট কার্যকর বাস্তবায়ন পছন্দগুলি এবং অনুকূলিতকরণ সনাক্তকরণ

কিছু সমালোচনা এই শ্রেণীর মধ্যে পড়ে:

  1. "গণনা তত্ত্বের মানচিত্র / হ্রাস নতুন ভিত্তি ভাঙবে না।" সত্য। মূল কাগজটির অবদানটি হ'ল একটি নির্দিষ্ট সেট অপ্টিমাইজেশনযুক্ত এই ভাল বোঝা অপারেটরগুলি এক-অফের সমাধানের চেয়ে বাস্তব সমস্যাগুলি আরও সহজে এবং দোষ-সহনশীলতার সাথে সমাধান করার জন্য সফলভাবে ব্যবহৃত হয়েছিল।
  2. "এই বিতরণ করা গণনা সহজেই মানচিত্রের পচে যায় না এবং ক্রিয়াকলাপ হ্রাস করে না"। যথেষ্ট ফর্সা, তবে অনেকেই করেন।
  3. "এন ম্যাপের একটি পাইপলাইন / পর্যায় কমাতে কোনও ফল উত্পন্ন হওয়ার আগে পাইপলাইনের কমানো পদক্ষেপের সংখ্যার সাথে আনুপাতিকভাবে বিলম্বিতা প্রয়োজন require" সম্ভবত সত্য। হ্রাস অপারেটরের সম্পূর্ণ আউটপুট উত্পাদন করার আগে তার সমস্ত ইনপুট গ্রহণ করতে হবে।
  4. "মানচিত্র / হ্রাস এই ব্যবহারের ক্ষেত্রে ওভারকিল।" হতে পারে. ইঞ্জিনিয়াররা যখন একটি চকচকে নতুন হাতুড়ি খুঁজে পান, তখন তারা পেরেকের মতো দেখতে এমন কোনও কিছু খুঁজতে যান। এর অর্থ এই নয় যে হাতুড়ি একটি নির্দিষ্ট কুলুঙ্গি জন্য একটি ভাল তৈরি সরঞ্জাম নয়।
  5. "মানচিত্র / হ্রাস একটি রিলেশনাল ডিবির প্রতিস্থাপন একটি দুর্বল প্রতিস্থাপন।" সত্য। যদি কোনও সম্পর্কিত ডিবি আপনার ডেটা-সেটে স্কেল করে তবে আপনার জন্য দুর্দান্ত - আপনার কাছে বিকল্প রয়েছে।

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

1
@ রাফেল, আমি মনে করি না যে এম / আর বিভক্ত এবং আপনি যে অর্থে লিঙ্ক করেছেন তাতে বিজয়ী হয়েছেন। এটিতে মূল ইনপুটটির একটি ছোট উপসেটটিতে অ্যালগরিদমের পুনরাবৃত্তি প্রয়োগ জড়িত না। এটি এমন একটি পাইপলাইন যেখানে পাইপলাইন পর্যায়গুলি মানচিত্রের পরিবর্তিত হয় এবং ক্রিয়াকলাপ হ্রাস করে।
মাইক স্যামুয়েল

হু, সত্য। আমি ব্যাখ্যা করেছিলাম "একজন শ্রমিক নোড আবার ঘুরেফিরে এটি করতে পারে, এটি বহু স্তরের গাছের কাঠামোর দিকে নিয়ে যায়।" এই ভাবে, তবে এটি অবশ্যই বোঝায় না যে প্রতিটি স্তরে একই ঘটে।
রাফেল

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

1
@ ex0du5, যথেষ্ট ফর্সা। আমি ভেবেছিলাম "" মানচিত্র / হ্রাস গণনা তত্ত্বের নতুন ভিত্তি ভাঙবে না "" সত্য "" যথেষ্ট পরিষ্কার ছিল কিন্তু আমি অবদানের তালিকাটি আবার লিখেছি।
মাইক স্যামুয়েল

21

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


আমি এমন একটি উত্তর প্রস্তাব দেব যা ব্যাপকতার দিক থেকে মাইকের তুলনায় অনেক নিকৃষ্ট হবে তবে গণনা / অ্যালগরিদমিক তত্ত্বের দৃষ্টিকোণ থেকে model

উত্তেজনা আছে কেন : ম্যাপ্রেডিউস আন্তঃলগ্ন সমান্তরাল এবং অনুক্রমিক গণনা; প্রতিটি প্রসেসরের ইনপুটটির একটি নন্ট্রাইভিয়াল অংশ (যেমন ) অ্যাক্সেস থাকে এবং এটিতে একটি অনর্থক ক্রিয়াকলাপ সম্পাদন করতে পারে; এটি PRAM মডেলের থেকে অনেকটা আলাদা এবং এটি একটি আকর্ষণীয় ধারণা বলে মনে হচ্ছে যা নতুন অ্যালগরিদমিক কৌশলগুলির দিকে পরিচালিত করতে পারে। বিশেষত, কয়েকটি সমস্যা গণনার কয়েকটি (ইনপুট আকারে ধ্রুবক) রাউন্ডে সমাধান করা যেতে পারে, তবে প্রাইমে সময়ে কোনও অনিয়ন্ত্রিত সমস্যা সমাধান করা যায় না ।( লগ এন )O(nϵ)o(logn)

মডেলটি কেন আমার জন্য কিছুটা হতাশায় পরিণত হচ্ছে : কেবলমাত্র অ্যালগরিদমিক কৌশল যা রাউন্ডের অ্যালগরিদমগুলি পেতে এবং কিছুটা নতুন বলে কাজ করে বলে মনে হচ্ছেO(1)

  • পার্টিশনটি সমস্যার উদাহরণ (প্রায়শই এলোমেলোভাবে)
  • সমান্তরাল প্রতিটি পার্টিশন কিছু গণনার এবং গণনার ফল প্রতিনিধিত্ব কষে
  • একটি একক প্রসেসরের উপর নিবিড়ভাবে উপস্থাপিত সমস্ত সাবপ্রব্লেম সমাধানগুলি একত্রিত করুন এবং সেখানে গণনা শেষ করুন

কৌশলটির খুব সাধারণ উদাহরণ: সংখ্যার যোগফল গণনা করুন । প্রতিটি প্রসেসরের কাছে অ্যারের এবং সেই অংশের যোগফল গণনা করে। তারপরে সমস্ত( nO(n)n যোগফলগুলিকে একক প্রসেসরে একত্রিত করে মোট যোগফল গণনা করা যায়। কিছুটা আকর্ষণীয় অনুশীলন হ'ল এইভাবে সমস্ত উপসর্গের অঙ্কগুলি গণনা করা (অবশ্যই সেই ক্ষেত্রে আউটপুটটি বিতরণ উপায়ে উপস্থাপন করতে হবে)। বা ঘন গ্রাফের একটি বিস্তৃত গাছ গণনা করুন।

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

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


তাত্ক্ষণিকভাবে এম / আর প্র্যাম বা স্ট্রিমের চেয়ে আরও বাস্তববাদী (দরকারী) মডেল। (কমপক্ষে কিছু বড় আকারের সমস্যার জন্য কমপক্ষে))
Xodarap

"আপনাকে সাব-প্রবলেম সলিউশনগুলি সংকুচিত করতে হবে যাতে একটি একক প্রসেসর বিজয় করতে পারে" - আপনি মনে করছেন যে এম / আর দ্বারা সমাধান করা যেতে পারে এমন সমস্যাগুলির সেটগুলি এমন একটি উপসেট যার জন্য ট্র্যাকটেবল ক্যাশে-সচেতন বা ক্যাশে রয়েছে exist -শক্তিহীন সমাধান। যদি এটি ঠিক থাকে তবে আমার কাছে মনে হয় যে এই বিবৃতিটি বেশিরভাগ বিতরণকৃত গণনার স্কিমগুলিতে সমানভাবে কার্যকর হয়।
মাইক স্যামুয়েল

1
@ Xodarap ভাল হতে পারে। এখানে আমি খাঁটি অ্যালগরিদম তাত্ত্বিক দৃষ্টিভঙ্গি ব্যবহার করছি: একটি মডেল দরকারী যদি এটি নতুন অ্যালগরিদমিক দৃষ্টিভঙ্গির দিকে পরিচালিত করে। এই পরিমাপের দ্বারা, স্ট্রিমিং পুরোপুরি বাস্তবসম্মত নয় বরং অসংখ্য নতুন কৌশল তৈরি করেছে যা বাস্তবে বাস্তবে কার্যকর। মুল বক্তব্যটি হ'ল সঠিক বিমূর্ততা কী নতুন চিন্তাভাবনার দিকে পরিচালিত করে। বর্তমান এমআর অ্যাবস্ট্রাকশনগুলির মিশ্র সাফল্য রয়েছে (তবে কিছুটা সাফল্য, আমি অনুমান করি)
সাশো নিকলভ

1
@ মাইকসামুয়েল "বাক্যটির" প্রয়োজনটির অর্থ হ'ল কৌশলটি কাজ করার জন্য এটি প্রয়োজন, এটি কেবল একমাত্র সম্ভাব্য কাজই নয়। আমি জানি যে এমআর এর জন্য কোনও তাত্ত্বিক নেতিবাচক ফলাফল নেই। আমার অভিযোগ এই নয় যে এমআর CO এর চেয়ে কঠোরভাবে শক্তিশালী is এটি আমরা মডেল দ্বারা অনুপ্রাণিত অনেক নতুন অ্যালগরিদমিক চিন্তাভাবনা দেখিনি (যা কোনও সিস্টেমের পক্ষে ভাল, তবে গণনার মডেলটির জন্য হতাশাব্যঞ্জক)। অন্যদিকে ক্যাশে বিস্মৃততা নিজেই একটি আশ্চর্যজনক ধারণা ইমো
সাশো নিকলভ

@ সাশোনিকোলভ, বোঝা। ব্যাখ্যা করার জন্য ধন্যবাদ।
মাইক স্যামুয়েল

6

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


3

আমি মনে করি আপনি নিজের মন্তব্যে মাথার পেরেকটি আঘাত করেছেন।

এটি সত্য নয় যে কোনও কার্যকরী ভাষার মানচিত্রের সমান্তরাল হতে পারে - ভাষা অবশ্যই খাঁটি হতে হবে । (আমি বিশ্বাস করি যে হাস্কেল হ'ল একমাত্র অস্পষ্ট মূলধারার খাঁটি কার্যকরী ভাষা Lis লিস্প, ওক্যামেল এবং স্কালা সমস্তই খাঁটি নয়))

টাইম শেয়ারিংয়ের আগে থেকেই আমরা খাঁটি কোডের সুবিধাগুলি সম্পর্কে জানি, যখন ইঞ্জিনিয়াররা প্রথমে তাদের প্রসেসরগুলি পাইপলাইন করেছিলেন। তাহলে কীভাবে কেউ শুদ্ধ ভাষা ব্যবহার করে না?

এটি সত্যই, সত্যই, সত্যই শক্ত। খাঁটি ভাষায় প্রোগ্রামিং করা প্রায়শই আপনার পিছনের পিছনে উভয় হাত দিয়ে প্রোগ্রামিংয়ের মতো অনুভব করে।

এমআর যা করে তা হ'ল বিশুদ্ধতা সীমাবদ্ধতা কিছুটা শিথিল করে এবং অন্যান্য টুকরাগুলির জন্য কাঠামো সরবরাহ করে (যেমন শ্যাফেল ফেজ) সমস্যার এক বিশাল ভগ্নাংশের জন্য বিতরণযোগ্য কোডটি লেখা সহজ করে তোলে।

আমি মনে করি আপনি " এর এই গুরুত্বপূর্ণ সাব-লেম্মাকে প্রমাণ করেছেন" এর মতো উত্তরের জন্য প্রত্যাশা করেছিলেন এবং আমার মনে হয় না এটি কোনওরকম কিছু করে। এটি যা করে তা দেখানো হয় যে বিতরণযোগ্য হিসাবে পরিচিত এক শ্রেণীর সমস্যাগুলি "সহজেই" বিতরণযোগ্য - আপনার মতে এটি "বিপ্লব" কিনা সম্ভবত প্রাক-মানচিত্র / হ্রাসকে বিতরণ কোডটি ডিবাগিং কোডটিতে আপনি কতটা সময় ব্যয় করেছেন তার উপর নির্ভর করে দুনিয়া।NC=P


আমি ম্যাপ্রেডিউসের সাথে পরিচিত নই, তবে পূর্ববর্তী শতাব্দীতে 101 এর দশকে প্যারালালিজমের আদর্শ কেস হিসাবে উপস্থাপন করা আমার মনে আছে এর থেকে আপনার উপস্থাপনাটি আলাদা নয়।
গিলস

@ গিলস: আমার উদ্দেশ্য কেবলমাত্র "বিভাজন ও বিজয়" দেখানো ছিল! = " বিতরণযোগ্য বিভাজন ও বিজয়"। এম / আর কম তুচ্ছ, যদিও তর্কসাপেক্ষে এখনও অ-আসল।
Xodarap

ফাংশনাল প্রোগ্রামিংয়ে, সমস্ত মানচিত্র সমান্তরালভাবে তৈরি করা যেতে পারে (এম্বারসেসলি), তবে কেন সেই দৃষ্টান্তটি আটকে নেই? countআপনার সিউডো কোডে কীভাবে ভাগ করা পরিবর্তনশীল তা আমি দেখতে পাই না ; এটির বর্তমান মানটি do_somethingকাজ করা উচিত। আপনি কি "রিয়েল" ডি ও সি অ্যালগরিদম (Mergesort, Quicksort, ...) এর উদাহরণ দিতে পারেন যার জন্য পুনরাবৃত্তি কলগুলি একে অপরের উপর নির্ভর করে (কল জারির পরে)?
রাফেল

@ রাফেল: আপনার মন্তব্যে আরও ভাল সাড়া দেওয়ার জন্য আমি আমার উত্তরটি আবার লিখেছি। পবিত্রতা যখন বিরক্তিকর হয় তার একটি উদাহরণ আমি যুক্ত করতে পারি, আপনি যদি এখনও চান তবে।
Xodarap

1
@ রাফেল: আমি একমত যে আমার উত্তরটি আরও ভাল হতে পারে যদি আমি এমন কিছু কাগজ উদ্ধৃত করতে পারি যাতে দেখানো হয় যে প্রোগ্রামিংয়ের সময়টি এম / আর ব্যবহার করে এক্স ঘন্টা থেকে ওয়াই হয়ে যায়, বা বিশুদ্ধতা প্রয়োগ করে এ থেকে বি পর্যন্ত বৃদ্ধি পায় তবে আমি যা করতে পারি তার সবই আমি মনে করি আমার হাতগুলি ক্রোধের সাথে waveেউ তুলছে এবং জোর দেয় যে পার্থক্যগুলি অল্প-তুচ্ছ।
Xodarap
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.