32-বিট বনাম 64-বিট সিস্টেম


222

32-বিট এবং 64-বিট সিস্টেমের মধ্যে পার্থক্য কী?

আপনি যদি উভয়টি ব্যবহার করে থাকেন তবে আপনি কী ধরণের তীব্র পার্থক্য অনুভব করেছেন?

কিছু ক্ষেত্রে 64-বিট সিস্টেমে 32-বিট প্রোগ্রামগুলি ব্যবহার করা কি সমস্যা হবে?


এখানে অনেক বিভ্রান্তি রয়েছে এবং অন্যথায় ওয়েবে যেখানে শারীরিক ঠিকানার (মেষ অ্যাক্সেস) এর মধ্যে পিইএ এটি প্রভাবিত করে, মাদার বোর্ড এটি প্রভাবিত করে এবং যৌক্তিক ঠিকানা (প্রক্রিয়া অনুসারে ভার্চুয়াল মেমরি)। একটি 32 বিট ওএস এ ভার্চুয়াল মেমরি 4 গিগাবাইট বিয়োগের মধ্যে সীমাবদ্ধ যা কার্নেল সংরক্ষণ করে। এটি র‌্যামের থেকে আলাদা you পিইএ আরও র‌্যাম রাখার জন্য ব্যবহার করা যেতে পারে তবে কার্নেলটি এগুলি অ্যাক্সেস করতে পারে না বলে একটি সঠিক উত্তর নয়।
ctrl-alt-delor

উত্তর:


262

দ্রষ্টব্য: এই উত্তরগুলি স্ট্যান্ডার্ড x86- ভিত্তিক পিসি সিপিইউ (ইনটেল এবং এএমডি) এবং উইন্ডোজ (সাধারণত ব্যবহারকারীদের জন্য সাধারণত কনফিগার করা) প্রযোজ্য। অন্যান্য 32-বিট বা 64-বিট চিপস, অন্যান্য ওএস এবং অন্যান্য ওএস কনফিগারেশনে বিভিন্ন ট্রেডঅফ থাকতে পারে।

প্রযুক্তিগত দৃষ্টিকোণ থেকে, একটি 64-বিট ওএস আপনাকে দেয়:

  • পৃথক প্রক্রিয়াগুলিকে প্রতিটি 4 গিগাবাইটেরও বেশি র‍্যামকে সম্বোধন করার অনুমতি দেয় (বাস্তবে, বেশিরভাগ তবে সমস্ত 32-বিট ওএসই মোট ব্যবহারযোগ্য সিস্টেম র‌্যামকে কেবল প্রতি অ্যাপ্লিকেশন সর্বাধিক নয়, 4 জিবি এরও কম সীমাবদ্ধ করে)।

  • সমস্ত পয়েন্টার 4 বাইটের পরিবর্তে 8 বাইট নেয়। র‌্যাম ব্যবহারের উপর প্রভাবটি সর্বনিম্ন (কারণ আপনি পয়েন্টারগুলির গিগা বাইট দ্বারা ভরা অ্যাপ্লিকেশন পাওয়ার সম্ভাবনা নেই) তবে সবচেয়ে খারাপ তাত্ত্বিক ক্ষেত্রে এটি সিপিইউ ক্যাশে 1/2 পয়েন্টার ধরে রাখতে সক্ষম হতে পারে (তৈরি করা) এটি কার্যকরভাবে 1/2 আকার হতে হবে)। বেশিরভাগ অ্যাপ্লিকেশনগুলির জন্য, এটি কোনও বিশাল চুক্তি নয়।

  • General৪-বিট মোডে আরও অনেক সাধারণ-উদ্দেশ্যে সিপিইউ নিবন্ধ রয়েছে। আপনার সম্পূর্ণ সিস্টেমে নিবন্ধগুলি হ'ল দ্রুততম স্মৃতি। 32-বিট মোডে 8 জন এবং 64-বিট মোডে 16 টি সাধারণ উদ্দেশ্য নিবন্ধ রয়েছে। বৈজ্ঞানিক কম্পিউটিং অ্যাপ্লিকেশনগুলিতে আমি লিখেছি, আমি 64৪-বিট মোডে পুনরায় কম্পাইল করে 30% পারফরম্যান্স বাড়িয়েছি (আমার অ্যাপ্লিকেশনটি অতিরিক্ত রেজিস্টারগুলি সত্যই ব্যবহার করতে পারে)।

  • আপনার কাছে 4 জিবি ইনস্টল থাকা সত্ত্বেও বেশিরভাগ 32-বিট ওএসগুলি স্বতন্ত্র অ্যাপ্লিকেশনগুলিকে 2 গিগাবাইট র‌্যাম ব্যবহার করতে দেয়। এর কারণ অন্যান্য 2 জিবি ঠিকানার স্থান অ্যাপ্লিকেশনগুলির মধ্যে, ওএসের সাথে ডেটা ভাগ করার জন্য এবং ড্রাইভারদের সাথে যোগাযোগের জন্য সংরক্ষিত। উইন্ডোজ এবং লিনাক্স আপনাকে এই ট্রেডঅফটিকে অ্যাপ্লিকেশনগুলির জন্য 3 জিবি এবং 1 জিবি ভাগ করার জন্য সমন্বিত করতে দেবে, তবে এটি এমন কিছু অ্যাপ্লিকেশনগুলির জন্য সমস্যা সৃষ্টি করতে পারে যা পরিবর্তনের আশা করে না। আমি আরও অনুমান করছি যে এটি এমন কোনও গ্রাফিক্স কার্ডটিকে পঙ্গু করতে পারে যাতে 1 গিগাবাইট র‌্যাম রয়েছে (তবে আমি নিশ্চিত নই)। একটি 64-বিট ওএস খেলতে স্বতন্ত্র 32-বিট অ্যাপ্লিকেশনগুলিকে পুরো 4 গিগাবাইটের কাছাকাছি দিতে পারে।

ব্যবহারকারীর দৃষ্টিকোণ থেকে:

  • 32-বিট ওএসে অ্যাপ্লিকেশনটির 32-বিট সংস্করণের তুলনায় একটি 64-বিট ওএস-তে 64-বিট অ্যাপ্লিকেশনটির জন্য অ্যাপ্লিকেশন গতি সাধারণত দ্রুত হয়, তবে বেশিরভাগ ব্যবহারকারী এই গতিবেগটি দেখতে পাবেন না। সাধারণ ব্যবহারকারীদের জন্য বেশিরভাগ অ্যাপ্লিকেশনগুলি অতিরিক্ত রেজিস্টারগুলির সত্যিকারের সুবিধা নেয় না বা ক্যাশে পূরণ করে বড় পয়েন্টারগুলির মাধ্যমে সুবিধাগুলি সুষম হয়।

  • আপনার কাছে যদি কোনও মেমরি হগ অ্যাপ্লিকেশন থাকে (যেমন ফটো এডিটর, ভিডিও প্রসেসিং, বৈজ্ঞানিক কম্পিউটিং ইত্যাদি), যদি আপনার কাছে 3 গিগাবাইটের বেশি র্যাম থাকে (এবং কিনতে পারেন), এবং আপনি অ্যাপ্লিকেশনটির একটি 64-বিট সংস্করণ পেতে পারেন, পছন্দটি সহজ: 64-বিট ওএস ব্যবহার করুন।

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

  • আপনি যদি এমন সময়ে এতগুলি অ্যাপ্লিকেশন চালান যা আপনার র‌্যামের বাইরে চলেছে (সাধারণত আপনি এটি বলতে পারেন কারণ আপনার কম্পিউটারটি সত্যিই ধীর হয়ে যেতে শুরু করে এবং আপনি হার্ড ডিস্ক ড্রাইভ ক্রাঙ্কিং শুনতে পান) তবে আপনি একটি 64-বিট ওএস চাইবেন (এবং পর্যাপ্ত র‌্যাম)।

  • আপনি কোনও সমস্যা ছাড়াই -৪-বিট উইন্ডোতে 32-বিট অ্যাপ্লিকেশনগুলি (তবে ড্রাইভার নয়) চালাতে পারেন। 64৪-বিট উইন্ডোজে একটি 32-বিট অ্যাপ্লিকেশনটির জন্য আমি সবচেয়ে খারাপ মন্দা পরিমাপ করেছি প্রায় 5% (এর অর্থ যদি 32-বিট উইন্ডোজে কিছু করতে 60 সেকেন্ড সময় নেয় তবে এটি প্রায় 60 * 1.05 = 65 সেকেন্ড নিয়ে নিয়েছিল 64-বিট উইন্ডোজে একই 32-বিট অ্যাপ্লিকেশন)।

কি 32-বিট বনাম 64-বিট বোঝায় না :

X86 সিস্টেমে 32-বিট বনাম 64-বিট সরাসরি পয়েন্টারের আকারকে বোঝায়। এখানেই শেষ.

  • এটি সি intধরণের আকারের উল্লেখ করে না । এটি নির্দিষ্ট সংকলক প্রয়োগের মাধ্যমে সিদ্ধান্ত নিয়েছে এবং বেশিরভাগ জনপ্রিয় সংকলকরা int64-বিট সিস্টেমে 32-বিট পছন্দ করে।

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

  • এটি সরাসরি শারীরিক ঠিকানা বাসের আকারের উল্লেখ করে না । উদাহরণস্বরূপ, bit৪ বিট প্রশস্ত ক্যাশে লাইন এবং সর্বাধিক 512GiB মেমরিযুক্ত সিস্টেমের জন্য কেবল তার ঠিকানা বাসে 33 বিট প্রয়োজন (যেমন log2(512*1024**3) - log2(64) = 33)।

  • এটি দৈহিক ডেটা বাসের আকারের উল্লেখ করে না: এটি উত্পাদন ব্যয়ের (সিপিইউ সকেটে পিনের সংখ্যা) এবং ক্যাশে লাইন আকারের সাথে আরও সম্পর্কিত।


8
খুব ভাল উত্তর। বিশেষত আপনি উল্লেখ করেছেন যে 4gb র‌্যামের সীমাটি আসলে নেই, তবে মেমরির ব্যবহারের সীমাটি প্রসেস করে। শুধু আপনার তথ্যের জন্য, আমি মনে করি আপনার এই লিঙ্কটি একবার দেখে নেওয়া উচিত: unawave.de/windows-7-tipps/32-bit-ram-barrier.html?lang=EN
ব্রেকথ্রু

8
তারা এমন অ্যাপ্লিকেশন যা a৪ বিট উইন্ডোতে কাজ করে না: ১ bit বিট অ্যাপ্লিকেশন / যারা 32 বিট বা স্বাক্ষরযুক্ত কার্নেল-মোড ড্রাইভার ব্যবহার করে drivers এটি আমার মতো একটি সফটওয়্যার আসক্তির জন্য অনেক কিছু ...
fluxtendu

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

6
বিটিডাব্লু, ৩২-বিট অ্যাপ্লিকেশনগুলি তাদের ম্যানিফেস্টে নির্দিষ্ট পতাকা সক্ষম না করা হলে 2 গিগাবাইটের বেশি র‌্যাম ব্যবহার করবে না। সূত্র: ব্লগস.টেকনেট
বি

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

107

মূলত আপনি সবকিছু বৃহত্তর আকারে করতে পারেন:

  1. প্রতি ওএস প্রতি র‌্যাম: ওএসের জন্য x86 এ 4 গিগাবাইটের র‌্যাম সীমা (বেশিরভাগ সময়)
  2. প্রক্রিয়া প্রতি র‌্যাম: প্রসেসের জন্য x86 এ 4GB র‌্যামের সীমা (সর্বদা)। আপনি যদি মনে করেন এটি গুরুত্বপূর্ণ নয়, একটি বিশাল এমএসএসকিউএল ডাটাবেস নিবিড় অ্যাপ্লিকেশন চালানোর চেষ্টা করুন। এটি আপনার কাছে উপলব্ধ থাকলে 4 জিবি নিজেই ব্যবহার করবে এবং আরও ভাল চালানো হবে।
  3. ঠিকানাগুলি: অ্যাড্রেসগুলি 32 বিটের পরিবর্তে 64 বিট হয় যা আপনাকে আরও "মেমরি" ব্যবহার করে এমন আরও বড় প্রোগ্রাম করতে দেয়।
  4. প্রোগ্রামগুলিতে হ্যান্ডলগুলি উপলভ্য: আপনি আরও ফাইল হ্যান্ডলগুলি, প্রক্রিয়াগুলি তৈরি করতে পারেন ... উদাহরণস্বরূপ উইন্ডোজ x64 এ আপনি তৈরি করতে পারেন> প্রক্রিয়া অনুযায়ী 2000 থ্রেড, তবে x86 এ কয়েক শতাধিকের কাছাকাছি।
  5. আরও বিস্তৃত প্রোগ্রাম উপলব্ধ: একটি x64 থেকে আপনি x86 এবং x64 উভয় প্রোগ্রাম চালাতে পারেন। (উদাহরণ উইন্ডোজ: wow64, উইন্ডোজ 64 অনুকরণে উইন্ডোজ 32)
  6. অনুকরণ বিকল্প: একটি x64 থেকে আপনি x86 এবং x64 উভয় ভিএম চালাতে পারেন।
  7. দ্রুত: কিছু গণনা একটি 64-বিট সিপিইউতে দ্রুত হয়
  8. একাধিক সিস্টেম সংস্থান ভাগ করা: আপনি কমপক্ষে একটি ভিএম চালাতে চান যা আপনার সিস্টেমের সংস্থানগুলিকে বিভক্ত করে A
  9. এক্সক্লুসিভ প্রোগ্রামগুলি উপলভ্য: বেশ কয়েকটি নতুন প্রোগ্রাম কেবল x64 সমর্থন করে। উদাহরণ এক্সচেঞ্জ 2007।
  10. ভবিষ্যতের অপ্রচলিত x86?: সময়ের সাথে সাথে আরও বেশি বেশি -৪-বিট ব্যবহার করা হবে এবং আরও বেশি বেশি x86 ব্যবহার করা হবে না। সুতরাং বিক্রেতারা আরও 64৪-বিট আরও বেশি সমর্থন করবে।

2 বড় ধরণের 64-বিট আর্কিটেকচার হ'ল এক্স 64 এবং আইএ 64 আর্কিটেকচার। তবে x64 এখন পর্যন্ত সবচেয়ে জনপ্রিয়।

x64 x86 কমান্ডের পাশাপাশি x64 কমান্ড চালাতে পারে। আইএ 64৪ x x কমান্ডগুলিও চালায়, তবে এটি এসএসই এক্সটেনশনগুলি করে না। এক্স 86 নির্দেশাবলী চালানোর জন্য ইটানিয়ামে উত্সর্গীকৃত হার্ডওয়্যার রয়েছে; এটি একটি এমুলেটর, তবে হার্ডওয়ারে।

@ ফিল যেমন উল্লেখ করেছেন আপনি এখানে এটি কীভাবে কাজ করে তার একটি গভীর চেহারা পেতে পারেন ।


1
উম। IA64 x86 কমান্ড চালায়। এটি এসএসই এক্সটেনশনগুলি করে না, যদিও। এক্স 86 নির্দেশাবলী চালানোর জন্য ইটানিয়ামে উত্সর্গীকৃত হার্ডওয়্যার রয়েছে; এটি একটি এমুলেটর, তবে হার্ডওয়ারে।
tzot

2
কয়েক বছর আগে, রেমন্ড চেন 2000 থ্রেড "সীমা" সম্পর্কে পোস্ট করেছিলেন এবং এটি কম-বেশি শহুরে কিংবদন্তি: ব্লগস.এমএসডন.ল্ডনেউথিং
অর্কিভ

তাদের ব্যাখ্যার জন্য আর্স্টেকনিকার পক্ষে যান।
অভিহু টার্জিওন

2
4 জিবি র‌্যাম সীমাটি একেবারেই সত্য নয় (এটি বরং ব্যবহারকারীদের উইন্ডোজ সিস্টেমে রাখা একটি কৃত্রিম সীমা), PAE পরীক্ষা করুন । বেশিরভাগ আপ-টু-ডেট হার্ডওয়ারের সাথে একটি লিনাক্স পিএই কার্নেল (যা এটি 32 ডিফল্টের জন্য ডিফল্টরূপে ব্যবহৃত হয়) 4 গিগাবাইটেরও বেশি ঠিকঠাক করতে পারে। একই ফ্রিবিএসডি এবং নেটবিএসডি-তে প্রযোজ্য।
ইজজি

32 বিট সিস্টেমগুলি "ঠিকানাগুলি" (তৃতীয় পাঙ্ক) এর কারণে 4 গিগাবাইটের (1 ম পঞ্চ) বেশি ব্যবহার করতে পারে না ause কারণ সর্বোচ্চ 32 বিট সংখ্যাটি 4.294.967.296 (= 4 জিবি)। সুতরাং আপনার 1 ম এবং 3 য় পাঙ্কস একই। আপনি 3 য় পঙ্ক্ট অপসারণ করতে পারেন। :)
জেট

46

এই মুহুর্তে লোকেরা যে বৃহত্তম প্রভাবটি লক্ষ্য করবে তা হ'ল একটি 32 বিবিটি পিসি কেবলমাত্র সর্বোচ্চ 4 গিগাবাইট মেমরিকে সম্বোধন করতে পারে। যখন আপনি অপারেটিং সিস্টেম দ্বারা অন্য ব্যবহারের জন্য বরাদ্দ করা মেমরিটি বন্ধ করে ফেলেন আপনার পিসি সম্ভবত প্রায় 3.25GB ব্যবহারযোগ্য মেমরিটি প্রদর্শন করবে। 64 বিট এ চলে যান এবং এই সীমাটি অদৃশ্য হয়ে যায়।

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

প্রসেসরের পার্থক্যগুলির আরও বিশদ বিবরণের জন্য আর্সটেকনিকা থেকে এই দুর্দান্ত নিবন্ধটি দেখুন


7
32-বিট প্ল্যাটফর্ম এবং 4 গিগাবাইট সীমাবদ্ধতা কিছুটা ভুল মিসরের এবং এটি ছিল (মূলত) মূলত একটি অপারেটিং সিস্টেমের আর্কিটেকচারাল পছন্দ / নকশার সীমা। সত্যই, 32-বিট থেকে 4 জিবি সত্যিই কোনও প্রক্রিয়া ভিএ স্পেসের সীমাতে রয়েছে। শারীরিক ঠিকানা ইন্টেল 32-বিট সিপিইউতে 36-বিট সমর্থন করে
টাল জেফ

1
আপনি একটি ভাল পয়েন্ট যা অবশ্যই সত্য। তবে পিসি ব্যবহারকারীদের আসল বিশ্বে এর প্রভাবটি হ'ল সেখানে মেশিন তারা যে পুরো 4 জিবি দিয়েছিল তা ব্যবহার করবে না। আমার বাবা এই সমস্যাটি নিয়েছিলেন এবং এখনও বিভ্রান্ত হয়ে আছেন যে তিনি যে 4 জিবি দিয়েছিলেন তার পুরোপুরি ব্যবহার করা যাবে না।

2
আপনার বক্তব্যটির প্রশংসা করুন, তবে ঠিক যে প্রসেসরে নেই বা 64৪-বিটের দিকে যাচ্ছেন না এই ধারণাটি চালানোর চেষ্টা করে, এটি ওএস ডিজাইনের কিছুটা উন্নত হয়েছে। উদাহরণস্বরূপ, এটি উইন্ডোজের এন্টারপ্রাইজ সংস্করণগুলিতে এমনকি 32-বিট সংস্করণেও সম্বোধন করা হয়। এটি GB৪ জিবি র‌্যামের অনুমতি দেয়।
লম্বা জেফ

প্রযুক্তিগতভাবে, সীমাটি অদৃশ্য হয় না। এটি পরের দিকে চলে যায় যেখানে পরের দশক বা তার পরে যেকোন সময় কোনও মেশিনে এত বেশি র্যাম ইনস্টল করা অবৈজ্ঞানিক / অসম্ভব।

উপরের পিএই সম্পর্কে আমার মন্তব্য দেখুন : 4 গিগাবাইট সীমা পুরো সিস্টেমের জন্য সত্য নয় - তবে এটি কেবলমাত্র একক প্রক্রিয়াগুলিতে প্রযোজ্য (কোনও প্রক্রিয়া 4 জিবি এবং নিজেই অ্যাক্সেস করতে পারে না - তবে পুরো সিস্টেম, অর্থাৎ সমস্ত প্রক্রিয়া একসাথেই, পিএই সক্ষম করে সক্ষম হতে পারে) )। সুতরাং যদি কারও কাছে এমন অ্যাপ্লিকেশন না থাকে যা 4 গিগাবাইট এবং তার চেয়ে বেশি (যেমন বড় ভিডিও ফাইল সহ ভিডিও এডিটর / রূপান্তরকারী) এবং 8 জিবি + ইনস্টল করা থেকে লাভ করে এবং এটি 32 বিট বা 64 বিট ব্যবহার করে তবে খুব বেশি পার্থক্য করা উচিত নয়।
ইজজি

31

কোনও কিছুই নিখরচায় নয়: যদিও 64৪-বিট অ্যাপ্লিকেশনগুলি 32-বিট অ্যাপ্লিকেশনগুলির চেয়ে বেশি মেমরি অ্যাক্সেস করতে পারে, তবে খারাপ দিকটি তাদের আরও মেমরির প্রয়োজন need এই সমস্ত পয়েন্টারগুলির জন্য 4 বাইটের প্রয়োজন ছিল, এখন তাদের দরকার 8 উদাহরণস্বরূপ, যখন a৪-বিট আর্কিটেকচারের জন্য নির্মিত হয় তখন ইমাসে ডিফল্ট প্রয়োজন 60% বেশি মেমরির হয়। এই অতিরিক্ত পদচিহ্নটি মেমোরি হায়ারার্কির প্রতিটি স্তরে কর্মক্ষমতাকে আঘাত করে: বড় এক্সিকিউটেবলগুলি ডিস্ক থেকে লোড হতে আরও বেশি সময় নেয়, বড় কার্যকারী সেটগুলির ফলে আরও বেশি পেজিং হয় এবং বৃহত্তর অবজেক্টগুলি প্রসেসরের ক্যাশেগুলির চেয়ে কম ফিট থাকে fit যদি আপনি 16 কে এল 1 ক্যাশে সমেত সিপিইউ সম্পর্কে চিন্তা করেন, 32-বিট অ্যাপ্লিকেশন 4096 পয়েন্টার নিয়ে কাজ করতে পারে এটি মিস হয়ে যায় এবং এল 2 ক্যাশে যাওয়ার আগে কিন্তু একটি 64-বিট অ্যাপ্লিকেশনটি কেবল 2048 পয়েন্টার পরে এল 2 ক্যাশে পৌঁছাতে হবে।

এক্স 64 এ এটি অন্যান্য নিবন্ধের মতো অন্যান্য আর্কিটেকচারাল উন্নতি দ্বারা প্রশমিত করা হয়েছে, তবে পাওয়ারপিসিতে যদি আপনার অ্যাপ্লিকেশন> 4 জি ব্যবহার করতে না পারে তবে এটি "পিপিসি 64" এর চেয়ে "পিপিসি" তে দ্রুত চলার সম্ভাবনা রয়েছে। এমনকি ইন্টেলেও এমন ওয়ার্কলোড রয়েছে যা এক্স ৮86 on-তে দ্রুত চালিত হয়, এবং কয়েকজন x86 on x x এর চেয়ে%% বেশি দ্রুতগতিতে চালায়।


2
এই উত্তরটি পরামর্শ দেয় যে পাওয়ারপিসি 64 x86-64 এর মতো ভাল নয়। সত্যটি হ'ল পাওয়ারপিসিটি ভাঙ্গা না হওয়ায় পাওয়ারপিসি 64 পাওয়ারপিসি উন্নতি করতে পারেনি।
ctrl-alt-delor

3
লিনাক্সে এখন এক্স x32 এবিআই রয়েছে, এক্স-speed86-64৪ (আরও রেজিস্টারগুলি, পুনরায় ডিজাইন করা এবিআই) এর সমস্ত গতি সুবিধা রয়েছে, তবে 32 বিট পয়েন্টার সহ। +1 দেখানোর জন্য যে 64 বিট মোডের সুবিধাগুলি প্রকৃত প্রস্থের বৃদ্ধি থেকে নয়, তবে আর্কিটেকচারটি পিছনে থাকা প্রচুর পরিমাণে ব্যাগেজ নেওয়ার সুযোগ থেকে। কিছু কিছু অ্যাপ্লিকেশনের জন্য bit৪ বিট রেগের মান রয়েছে তবে bit৪ বিট পয়েন্টার স্পেস কম প্রয়োজন হয়।
পিটার কর্ডেস

19

একটি 64-বিট ওএস আরও র‌্যাম ব্যবহার করতে পারে। এটি সম্পর্কে, বাস্তবে। -৪-বিট ভিস্তা / সুরক্ষিত সুরক্ষা বৈশিষ্ট্যগুলি ব্যবহার করে যেখানে তারা র‌্যামে গুরুত্বপূর্ণ উপাদান রাখে, তবে এটি সত্যিই 'লক্ষণীয়' নয়।

ক্রিসইনডমন্টন থেকে:

PAE সহ একটি ix86 সিস্টেমে একটি 32-বিট অপারেটিং সিস্টেম 64 গিগাবাইট র‌্যামের ঠিকানা দিতে পারে। X86-64-তে একটি 64-বিট অপারেটিং সিস্টেম 256 টিবি অবধি ভার্চুয়াল অ্যাড্রেস স্পেসে অ্যাক্সেস করতে পারে, যদিও এটি পরবর্তী প্রসেসরে 16 ইবি পর্যন্ত উত্থাপিত হতে পারে। মনে রাখবেন যে কিছু অপারেটিং সিস্টেমগুলি ঠিকানার জায়গার আরও সীমাবদ্ধ করে এবং বেশিরভাগ মাদারবোর্ডগুলিতে অতিরিক্ত বিধিনিষেধ থাকবে।


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

আহ, আমি স্পষ্টতই ভুল হয়ে গিয়েছিলাম, তা পরিষ্কার করার জন্য ধন্যবাদ :)
ফোশি

সমস্যা নেই. -1 -> +1
মিস্টার ফুজ

কতটা র‌্যাম ব্যবহার করা যেতে পারে তা জানাতে আপনার উত্তরটি সম্পাদন করার উপযুক্ত হতে পারে। PAE সহ একটি ix86 সিস্টেমে একটি 32-বিট অপারেটিং সিস্টেম 64 গিগাবাইট র‌্যামের ঠিকানা দিতে পারে। X86-64-তে একটি 64-বিট অপারেটিং সিস্টেম 256 টিবি অবধি ভার্চুয়াল অ্যাড্রেস স্পেসে অ্যাক্সেস করতে পারে, যদিও এটি পরবর্তী প্রসেসরে 16 ইবি পর্যন্ত উত্থাপিত হতে পারে। মনে রাখবেন যে কিছু অপারেটিং সিস্টেমগুলি ঠিকানার জায়গার আরও সীমাবদ্ধ করে এবং বেশিরভাগ মাদারবোর্ডগুলিতে অতিরিক্ত বিধিনিষেধ থাকবে।
ChrisInEdmonton

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

14

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

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

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

Bit৪ বিটের মূল "বিগ ডিল" হ'ল আপনি 32 বিটের চেয়ে অনেক বড় মেমরি অ্যাড্রেস স্পেসে অ্যাক্সেস অর্জন করতে পারেন। এর অর্থ হল যে আপনি আপনার কম্পিউটারে 4 গিগাবাইটেরও বেশি মেমোরি রেখেছিলেন এবং এটির কোনও পার্থক্য রয়েছে।

আমি নিশ্চিত যে অন্যান্য উত্তরগুলি আমার চেয়ে বেশি বিশদ এবং উপকারে যাবে I'm

পার্থক্য সনাক্ত করার শর্তে প্রগ্রেমেটিকভাবে আপনি কেবলমাত্র একটি পয়েন্টারের আকার (যেমন সাইজফ (অকার্যকর *)) পরীক্ষা করে দেখুন। 4 এর উত্তরের অর্থ এর 32 টি বিট এবং 8 এর অর্থ আপনি একটি 64 বিট পরিবেশে চলছে।


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

@ ডেভিড: আপনি একদম ঠিক বলেছেন। দুর্ভাগ্যক্রমে, এখানে প্রচুর কোড আছে যা হুবহু এটি করে।

10

একটি 32 বিট প্রক্রিয়াতে 4 গিগাবাইটের ভার্চুয়াল ঠিকানার স্থান রয়েছে; এটি কিছু অ্যাপ্লিকেশনগুলির জন্য খুব কম হতে পারে। একটি 64 বিট অ্যাপ্লিকেশনটিতে কার্যত সীমাহীন অ্যাড্রেস স্পেস রয়েছে (অবশ্যই এটি সীমাবদ্ধ তবে আপনি সম্ভবত এই সীমাটিকে আঘাত করবেন না)।

ওএসএক্সে অন্যান্য সুবিধা রয়েছে। দেখুন পরের প্রবন্ধে , কেন 64 বিট অ্যাড্রেস স্পেস মধ্যে কার্নেল রান থাকার (নির্বিশেষে যদি আপনার অ্যাপ 64 32 রান বা) অথবা 64 বিট অ্যাড্রেস স্পেস মধ্যে আপনার অ্যাপ্লিকেশান রান থাকার (একই কার্নেল এখনও 32 বিট হয়) অনেক ভালো পারফরম্যান্স বাড়ে। সংক্ষিপ্তসার হিসাবে: উভয়গুলির মধ্যে একটি যদি 64 বিট হয় (কার্নেল বা অ্যাপ্লিকেশন, বা উভয়ই), আপনি যখন কার্নেল থেকে স্থান এবং পিছনে স্যুইচ করেন তখন টিএলবি ("অনুবাদ লুকাসাইড বাফার") ফ্লাশ করতে হবে না (যা গতিবেগ করবে) আপ র‌্যাম অ্যাক্সেস)।

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

সর্বশেষে তবে কমপক্ষে x86-64 আর্কিটেকচারটি ক্লাসিক x86 আর্কিটেকচারের চেয়ে বেশি রেজিস্টার সরবরাহ করে। র‌্যামের সাথে কাজ করার চেয়ে রেজিস্টারগুলির সাথে কাজ করা অনেক দ্রুত এবং সিপিইউতে যত বেশি রেজিস্টার থাকে তত কম র‌্যামে রেজিস্টারের মান এবং রেজিস্টারে ফিরে যাওয়ার প্রয়োজন হয়।

আপনার সিপিইউ B৪ বিট মোডে চলতে পারে কিনা তা জানতে আপনি বিভিন্ন সিস্টেল ভেরিয়েবলগুলি দেখতে পারেন। যেমন একটি টার্মিনাল খুলুন এবং টাইপ করুন

sysctl machdep.cpu.extfeatures

যদি এটি EM64T তালিকাভুক্ত করে তবে আপনার সিপিইউ x86-64 স্ট্যান্ডার্ড অনুযায়ী 64 বিট অ্যাড্রেস স্পেস সমর্থন করে। আপনিও দেখতে পারেন

sysctl hw.optional.x86_64

যদি এটি 1 বলে (সত্য / সক্ষম), আপনার সিপিইউ x86-64 বিট মোড সমর্থন করে, যদি এটি 0 (মিথ্যা / অক্ষম) বলে, এটি তা করে না। যদি সেটিংটি একেবারেই পাওয়া না যায়, তবে এটি মিথ্যা বলে বিবেচনা করুন।

দ্রষ্টব্য: আপনি একটি স্থানীয় সি অ্যাপ্লিকেশন থেকে সিসেক্টল ভেরিয়েবলগুলিও আনতে পারেন, কমান্ড লাইন সরঞ্জামটি ব্যবহার করার দরকার নেই। দেখ

man 3 sysctl

ত্রুটি: "machdep.cpu.extfeatures" একটি অজানা কী

আমি অনুমান করি যে এটি ইএম 64 টি বলা হয় না, যদি আপনি ইন্টেল পাওয়ার পক্ষে দুর্ভাগ্যজনক না হন।

9

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

এই থ্রেডে বলা কিছু জিনিস (# নিবন্ধকের দ্বিগুণকরণের মতো) কেবলমাত্র x86-> x86_64 এ প্রযোজ্য, সাধারণভাবে 64-বিটের ক্ষেত্রে নয়। ঠিক ঠিক যেমন x86_64 এর অধীনে একটিতে এসএসই 2, 686 অপকড এবং পিআইসি করার একটি সস্তা উপায় রয়েছে। এই বৈশিষ্ট্যগুলি কঠোরভাবে -৪-বিট সম্পর্কে নয়, তবে লিগ্যাসি কাটা এবং x x সীমাবদ্ধতার প্রতিকার সম্পর্কে

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

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

সাধারণত প্রান্তিককরণ ওভারহেড ৪-বিট আর্কিটেকচারেও বড় হয় (রেকর্ডগুলি পূর্বে 32-বিট কেবলমাত্র 32-বিট এবং 64৪-বিট মানগুলির মিশ্রণ হয়ে থাকে), আরও বেশি কাঠামো ফুটিয়ে তোলে।

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

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

উইন্ডোজ ating৪-বিট ডিফল্ট হিসাবে এসএসই 2 ব্যবহার করে ভাসমান পয়েন্টের জন্য মনে হয় যা সহজ অপারেশনগুলিকে গতিময় করে তোলে এবং জটিল (পাপ, কোস ইত্যাদি) অপারেশনগুলি ধীর করে দেয়।

(*) একটি সামান্য পরিচিত তথ্য হ'ল এসএসই নিবন্ধকের সংখ্যাও 64৪-বিট মোডে দ্বিগুণ হয়

(**) ডবস ডাবস এর সম্পর্কে কয়েক বছর আগে একটি চমৎকার নিবন্ধ ছিল।


8

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

আমি যে শীতল কৌশল সম্পর্কে বলছি তার কয়েকটি উদাহরণের জন্য ভলিউম 4, প্রাক-ফ্যাসিক্যাল 1 এ একবার দেখুন।


7

আরও মেমরি সম্বোধন করার ক্ষমতা বাদে x86_64 এর মধ্যে আরও নিবন্ধ রয়েছে যা সংকলকটিকে আরও কার্যকর কোড তৈরি করতে দেয়। পারফরম্যান্স উন্নতি সাধারণত যদিও মোটামুটি ছোট হবে small

X86_64 আর্কিটেকচারটি x86 এর সাথে পিছনের দিকে সামঞ্জস্যপূর্ণ। অসম্পূর্ণ 32-বিট অপারেটিং সিস্টেম চালানো সম্ভব। 64৪-বিট ওএস থেকে অশোধিত 32-বিট সফ্টওয়্যার চালানোও সম্ভব। যদিও এর জন্য সমস্ত সাধারণ 32-বিট লাইব্রেরি লাগবে। এগুলি আলাদাভাবে ইনস্টল করার প্রয়োজন হতে পারে।


আরও রেজিস্টার এবং একটি নতুন ডিজাইন করা এবিআই (রেজিস্টারে ফাংশন আরোগগুলি পাস করা) সাধারণত 10 থেকে 15% স্পিডআপ হয় যা বেশ শালীন। এখানে এখন 32 x বিট পয়েন্টার সহ একটি এক্স 3232 লিনাক্স এবিআই রয়েছে, তবে এমডি 64 লং মোড ব্যবহার করে এবং কনভেনশনগুলিতে আরগ-ইন-রেজিস্টারগুলি ব্যবহার করে। সুতরাং আপনার কাছে amd64 এর সমস্ত গতির সুবিধাগুলি রয়েছে তবে প্রতি পয়েন্টারের জন্য ওভারহেড ছাড়াই 64৪ বিট প্রয়োজন। এটি 4GB (ভার্চুয়াল) মেমরির প্রয়োজন নেই এমন সমস্ত কিছুর জন্য এটি ভাল।
পিটার কর্ড

6

এই থ্রেডটি ইতিমধ্যে অনেক দীর্ঘ, তবে ...

উত্তরগুলির বেশিরভাগটি আপনার পক্ষে আরও বড়, -৪-বিটের ঠিকানার জায়গা রয়েছে সেদিকে মনোনিবেশ করে যাতে আপনি আরও মেমরিটি সম্বোধন করতে পারেন। সমস্ত অ্যাপ্লিকেশনগুলির প্রায় 99% এর জন্য, এটি সম্পূর্ণ অপ্রাসঙ্গিক। বড় চাবুক।

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

এছাড়াও, -৪-বিটের জন্য সাব্রুটিন কলার / কলি কনভেনশনগুলি সংজ্ঞায়িত করা হয়েছে যে কলার তাদের স্ট্যাকের দিকে ঠেলে এবং কলি তাদের পপিংয়ের পরিবর্তে বেশিরভাগ উত্তীর্ণ প্যারামিটারগুলি রেজিস্টারে রাখবে।

সুতরাং একটি "সাধারণ" সি / সি ++ অ্যাপ্লিকেশন কেবলমাত্র 64৪-বিটের জন্য পুনরায় সংশোধন করে প্রায় 10% বা 15% পারফরম্যান্স উন্নতি অর্জন করবে। (ধরে নিই অ্যাপের কিছু অংশ গণনা আবদ্ধ ছিল। অবশ্যই এটির নিশ্চয়তা নেই; সমস্ত কম্পিউটার একই গতির জন্য অপেক্ষা করে Your আপনার মাইলেজ মেশিনের পরিবর্তন হতে পারে))


যদিও নির্দেশ সেটটি x8686 এর চেয়ে x86 এর চেয়ে ভাল তবে এটি সাধারণত গুরুত্বহীন। -৪-বিট কোডটি 32-বিটের চেয়েও ধীর হতে পারে, কারণ নির্দেশাবলী বড় হতে পারে, এর মধ্যে খুব কমই ক্যাশে ফিট করে। (আনআরললিং লুপস, বিটিডাব্লু, আজকাল খুব প্রশ্নবিদ্ধ কৌশল, যেহেতু এটি ক্যাশে মিসের সংখ্যা বাড়িয়ে দেবে)) যেখানে আমি কাজ করি সেখানে মেমরির বর্ধনের জন্য আমাদের 64 বিট লাগবে।
ডেভিড থর্নলি 21

ডেভিড, অপারেন্ড আকার এবং কিছু নিবন্ধের উপসর্গ ব্যতীত x x এবং x86 নির্দেশাবলী প্রায় অভিন্ন। IA64, ওরফে Itanium ওরফে Itanic এর সাথে, 64-বিট কোডগুলি সাধারণত x86 কোডের 3x হবে এবং আপনি যেমন বলেছিলেন ঠিক তেমন নির্দেশের ক্যাশে চাপ দিন। কেন এই স্থাপত্যটি খারাপভাবে ব্যর্থ হয়েছিল তার একটি বড় কারণ ছিল। তবে x86 ওরফে AMD64 ওরফে EM64T এর সাথে, সেই কোড বৃদ্ধি সাধারণত 10-20% হয়।

যদিও x64 আরো রেজিস্টার তোলে Addressable , আমি কত এটা আসলে শারীরিক রেজিস্টার সংখ্যা বৃদ্ধির দ্বারা তা নিশ্চিত নই প্রাপ্তিসাধ্য - সব সাম্প্রতিক x86 প্রসেসরের অনেক (> 100) "ছায়া" রেজিস্টার আছে, এবং ব্যবহার করুন "নিবন্ধন পুনঃনামকরনের," + ফটকামূলক ফাঁসি স্বাধীন কোড পাথগুলিকে একটি ডিগ্রির সমান্তরালে সম্পাদন করার অনুমতি দেয়। ফলস্বরূপ, যদি n স্বতন্ত্র কোডের পাথগুলি কার্যকর করা হয়, তত বেশি রেজিস্টার পাওয়া যায় (যতক্ষণ সমস্ত ছায়ার নিবন্ধগুলি শেষ না হয়)।

@j_random_hacker। আপনি একেবারে ঠিক বলেছেন যে ricks কৌশলগুলি স্থাপত্যের নীচে চলছে। তবে কতগুলি ছায়া রেজিস্টার উপলব্ধ তা বিবেচনাধীন, যদি প্রোগ্রামটি 8 টিরও বেশি আইটেম আইটেমের সাথে কাজ করতে হয় এবং কেবলমাত্র 8 টি রেজিস্ট্রি নির্দেশ নির্দেশে উন্মুক্ত হয়, সংকলকটিকে অবশ্যই স্টোর / পুনরায় লোডের নির্দেশাবলী উত্পন্ন করতে হবে । হ্যাঁ, এক্স 64 সত্যিই দ্বিগুণ রেজিস্টারগুলিকে "উপলব্ধ" হিসাবে দ্বিগুণ করে তোলে

আমার অভিজ্ঞতা হ'ল এই উপায়টি কম, এবং সরানো হওয়া গড় ঝাঁকনিটি আরও বড় হওয়াতে অফসেট।
মার্কো ভ্যান ডি ভুর্ট

6

এখানে ইতিমধ্যে উল্লিখিত সুবিধাগুলি বাদে সুরক্ষা সম্পর্কিত আরও কিছু বিষয় রয়েছে:

  • x86_64 সিপাসের তাদের পৃষ্ঠাগুলির কোনও এক্সিকিউট বিট নেই। অর্থাৎ এটি বাফারকে ছাড়িয়ে যাওয়ার কারণে সিকিউরিটির শোষণগুলি রোধ করতে পারে। 32-বিট x86 সিপাস কেবল PAE মোডে এই বৈশিষ্ট্যটিকে সমর্থন করে।
  • বৃহত্তর ঠিকানা স্থানটি আরও ভাল ঠিকানা স্পেস লেআউট র্যান্ডমাইজেশন (এএসএলআর) জন্য অনুমতি দেয় যা বাফারকে ওভাররনগুলি আরও শক্তিশালী করে তোলে।
  • x86_64 সিপাস বৈশিষ্ট্য অবস্থান-স্বাধীন কোড অর্থাত্ নির্দেশ পয়েন্টার রেজিস্টার (আরআইপি) এর সাথে সম্পর্কিত ডেটা অ্যাক্সেস।

আরেকটি সুবিধা যা মনে আসে তা হ'ল vmalloc()লিনাক্স কার্নেলের সাথে বরাদ্দ করা ভার্চুয়াল সংযুক্ত মেমরির পরিমাণ bit৪ বিট মোডে বড় হতে পারে।


5

একটি 32-বিট মেশিনের সাথে আপনার কাছে সম্বোধনের জন্য 4,294,967,295 মেমরি রয়েছে। একটি 64-বিট মেশিনের সাথে আপনার কাছে 1.84467441 × 10 ^ 19 বাইটের মেমরি রয়েছে।

উইকিপিডিয়া এটি বলেছে

-৪-বিট প্রসেসরগুলি নির্দিষ্ট কার্যগুলি গণনা করে (যেমন বড় অঙ্কের ফ্যাক্টরিওলগুলি) 32-বিট পরিবেশে দ্বিগুণ দ্রুত কাজ করার জন্য (উদাহরণস্বরূপ 32-বিট এবং 64-বিট উইন্ডোজ ক্যালকুলেটরের মধ্যে তুলনা থেকে প্রাপ্ত; 100,000 বলার ফ্যাক্টরিয়াল জন্য লক্ষণীয় )। এটি -৪-বিট অপ্টিমাইজড অ্যাপ্লিকেশনগুলির তাত্ত্বিক সম্ভাবনার একটি সাধারণ অনুভূতি দেয়।

ডিজিটাল ভিডিও, বৈজ্ঞানিক কম্পিউটিং এবং বৃহত ডাটাবেসগুলির মতো অ্যাপ্লিকেশনগুলিতে 64৪-বিট আর্কিটেকচার নির্বিশেষে বড় ডেটা সেটগুলির সাথে কাজ করা সহজতর হয়েছে, তবে তারা বা তাদের 32-বিটের সামঞ্জস্যতা মোডগুলি তুলনামূলক মূল্যের চেয়ে দ্রুততর হবে কিনা তা নিয়ে যথেষ্ট বিতর্ক রয়েছে has অন্যান্য কাজের জন্য 32-বিট সিস্টেম। X86-64 আর্কিটেকচারে (এএমডি 64), বেশিরভাগ 32-বিট অপারেটিং সিস্টেম এবং অ্যাপ্লিকেশনগুলি 64-বিট হার্ডওয়ারে সুচারুভাবে চালাতে সক্ষম হয়।

সূর্যের -৪-বিট জাভা ভার্চুয়াল মেশিনগুলি তাদের ৩২-বিট ভার্চুয়াল মেশিনের তুলনায় ধীরে ধীরে ধীরে ধীরে ধীরে ধীরে ধীরে ধীরে Sun৪-বিট প্ল্যাটফর্মের জন্য সান কেবল "সার্ভার" জেআইটি সংকলক (সি 2) প্রয়োগ করেছে [ "ক্লায়েন্ট" জেআইটি সংকলক (সি 1), যা কম দক্ষ কোড তৈরি করে তবে আরও দ্রুত সংকলন করে, 64-বিট প্ল্যাটফর্মগুলিতে অনুপলব্ধ।

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


2
শারীরিক ঠিকানা বাসের দৈর্ঘ্য এটি 32 বা 64-বিট প্রসেসর কিনা তা থেকে স্বতন্ত্র। কিছু 32-বিট প্রসেসরের 32 টি বিটের চেয়ে বড় অ্যাড্রেস বাস রয়েছে এবং কোনও 64-বিট প্রসেসরের একটি 64-বিট অ্যাড্রেস বাস নেই।

1
একমত। তত্ত্বগতভাবে, ঠিকানা স্থান 2 ^ 64। অনুশীলনে, সিপিইউ নির্মাতারা আরও কম মান ব্যবহার করছে ... যেমন 2 ^ 40 বা 2 are 48।
স্টু থম্পসন

5

মাইক্রোসফট ডটকমের উদ্ধৃতি:

নিম্নলিখিত টেবিলটিতে কম্পিউটারের বর্ধিত সর্বাধিক সংস্থান যা উইন্ডোজের 64-বিট সংস্করণ এবং 64-বিট ইন্টেল প্রসেসরের উপর ভিত্তি করে বিদ্যমান 32-বিট রিসোর্স সর্বাধিকের সাথে তুলনা করা হয়।

এমএস ছক


2
আকর্ষণীয়, তবে লক্ষণীয় যে উইন্ডোজের কিছু 32-বিট সংস্করণ আরও PHYSICAL মেমরির জন্য অনুমতি দেয়। উদাহরণস্বরূপ দেখুন, en.wikipedia.org/wiki/...
ChrisInEdmonton

@ ক্রিসইনএডমন্টন সিস্টেমটি 4 গিগাবাইটের চেয়ে বেশি বা মেমরি সমর্থন করে তবে প্রতিটি প্রক্রিয়াটির ঠিকানা এখনও 2 জিবি (বৃহত ঠিকানা সচেতন 3 জিবি) এর মধ্যে সীমাবদ্ধ। সুতরাং আপনার সিস্টেমে প্রচুর স্মৃতি থাকলেও এটি এখনও মেমরির বিস্তৃত প্রোগ্রামগুলিতে সহায়তা করে না এবং কর্মক্ষমতা এখনও 64৪-বিট সংস্করণে পিছিয়ে রয়েছে। এছাড়াও, এএসএলআর এবং মেমরি
ম্যাপযুক্ত

4

ক্রিস্টোফ এবং পশি 32 এবং 64 বিট ওএসের মধ্যে প্রধান প্রযুক্তিগত পার্থক্য বলেছিলেন: সাধারণত ব্যবহারকারী অভিজ্ঞতা তত্ত্বের চেয়ে অনেক বেশি আলাদা। আজ অবধি উইন্ডোজের X৪ বিট গ্রাহক সংস্করণ (এক্সপি এবং ভিস্তা) এর ড্রাইভার সমর্থনে বড় ব্যবধানযুক্ত গর্ত রয়েছে। আমার কাছে অনেকগুলি প্রিন্টার, স্ক্যানার এবং অন্যান্য বাহ্যিক ডিভাইসগুলি flat৪ বিট সংস্করণগুলির সাথে দুর্দান্তভাবে কাজ করে এমন versions৪ বিট সংস্করণগুলির সাথে কাজ করে না। এগুলি এমন ডিভাইস যাগুলিতে bit৪ বিট ড্রাইভার ছিল এবং তারা এখনও কাজ করে না। এই মুহূর্তে আমি আপনাকে মাইক্রোসফ্ট থেকে consumer৪ বিটযুক্ত যে কোনও ভোক্তা ভিত্তিক থেকে দূরে থাকার পরামর্শ দিচ্ছি যতক্ষণ না আপনি উইন্ডোজ this কীভাবে এটি পরিচালনা করে তা বাস্তবিক ব্যবহারকারীদের কাছ থেকে শুনতে পাওয়া যায়, বর্তমানে এটির অ্যাক্সেস রয়েছে এমন কেবল উবার-গিকসই নয়। এটি অন্তত 6 মাস দিন এবং দেখুন লোকেরা কী অভিজ্ঞতা নিচ্ছে।


খুব কম ড্রাইভার থাকতে পারে তবে এটি এতটা খারাপ হিসাবে এটি এটিকে শোনায়। আমি 2007 সাল থেকে 64 বিট চালিয়ে আসছি এবং কখনও কোনও অসুবিধা হয়নি। এটি বলে, আমার কোনও অস্পষ্ট বা প্রাচীন ডিভাইস সংযুক্ত নেই।
রোমানস্টে

1
ভিস্তার bit৪ বিটের সাথে আমার অতি সাম্প্রতিক একটি ছিল 2 মাস বয়সী ডেল সিস্টেমের ঠিক গত মাসে এক ব্র্যান্ড নিউ এইচপি মাল্টি ফাংশন প্রিন্টার। ডেল এবং এইচপি উভয়ই হাল ছেড়ে দিয়েছেন, এবং আমার গ্রাহক আমাকে এক্সপি প্রো চালিয়ে ভিস্তা থেকে মুক্তি পাওয়ার জন্য অর্থ প্রদান করেছিলেন। উভয় ইউনিট সম্পর্কে কিছুই অস্পষ্ট।
কেভিন কে

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

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

2

কিছু গেম-প্লে প্রোগ্রাম একটি বিট বোর্ড উপস্থাপনা ব্যবহার করে । উদাহরণস্বরূপ দাবা, চেকার এবং ওথেলোর একটি 8x8 বোর্ড রয়েছে, অর্থাৎ squ৪ স্কোয়ার, সুতরাং একটি মেশিন শব্দে কমপক্ষে 64৪ বিট থাকলে পারফরম্যান্সে উল্লেখযোগ্যভাবে সহায়তা করে।

আমার মনে আছে এমন একটি দাবা প্রোগ্রামটি পড়ুন যার 64৪-বিট বিল্ডটি 32-বিটের সংস্করণের চেয়ে প্রায় দ্বিগুণ দ্রুত।


2

32-বিট এবং 64-বিট শব্দটি কম্পিউটার প্রসেসরের (সিপিইউ নামে পরিচিত) যেভাবে তথ্য পরিচালনা করে তা বোঝায়। উইন্ডোজ 64৪-বিট সংস্করণগুলি 32-বিট সিস্টেমের চেয়ে বেশি কার্যকরভাবে র্যান্ডম অ্যাক্সেস মেমরি (র‌্যাম) পরিচালনা করে।

গতি আমার মতে ভিন্ন হতে পারে


1

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

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

কোনও ঠিকানার আকার পরিবর্তন করতে কিছু বড় বিভ্রান্তি এবং প্রতিক্রিয়া থাকতে পারে।


1

বেশিরভাগ ব্যবহারিক উদ্দেশ্যে আপনি সম্ভবত কোনও পার্থক্য লক্ষ্য করবেন না।

আপনার একটি 64-বিট অপারেটিং সিস্টেম ইনস্টল করতে অবশ্যই একটি 64-বিট সিপিইউ (গত কয়েক বছরে বেশিরভাগ সিপিইউ) থাকতে হবে।

একটি 64-বিট অপারেটিং সিস্টেমের কয়েকটি সুবিধা রয়েছে:

  • এটি আপনাকে 4 গিগাবাইটেরও বেশি র‌্যাম চালানোর অনুমতি দেবে (32-বিট ওএসে আপনি সর্বাধিক সংখ্যাটি 2 ^ 32 = 4 গিগাবাইট)
  • এটি বড় ডেটা সেটগুলির সাথে কাজ করার জন্য সহায়ক (যেমন এক্সেলের মধ্যে) এবং কয়েকটি কম্পিউটেশনাল ইনটেনসিভ টাস্ক (যেমন ফটোশপ এবং বড় ফাইল)
  • আপনি কেবল একটি -৪-বিট ওএসে একটি -৪-বিট প্রোগ্রাম চালাতে পারেন, তবে আপনি উভয়টিতে একটি 32-বিট প্রোগ্রাম চালাতে পারেন (অনেক প্রোগ্রাম উভয় হিসাবেই মনে রাখবেন, সুতরাং কেবলমাত্র খুব বেশি 64-বিট নেই প্রোগ্রাম)।

বেশিরভাগ পরিস্থিতিতে, 64৪-বিট প্রোগ্রামগুলি কিছুটা বেশি মেমরি ব্যবহার করে তবে একটি ব্যক্তিগত কম্পিউটারের জন্য সাধারণত এটি লক্ষ্য করা যায় না।

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