কম্পিউটার

পাইথন অন্যান্য ভাষার তুলনায় ধীর কেন?


পাইথন একটি স্ক্রিপ্টিং ভাষা যখন সি একটি প্রোগ্রামিং ভাষা। পাইথনের তুলনায় C/C++ তুলনামূলকভাবে দ্রুত কারণ আপনি যখন পাইথন স্ক্রিপ্ট চালান, তখন এর দোভাষী স্ক্রিপ্ট লাইনটিকে লাইন দ্বারা ব্যাখ্যা করবে এবং আউটপুট তৈরি করবে কিন্তু C-তে, কম্পাইলার প্রথমে এটি কম্পাইল করবে এবং একটি আউটপুট তৈরি করবে যা অপ্টিমাইজ করা হয়। হার্ডওয়্যার অন্যান্য ভাষার ক্ষেত্রে যেমন Java এবং.NET, জাভা বাইটকোড এবং .NET বাইটকোড যথাক্রমে পাইথনের চেয়ে দ্রুত চলে কারণ একটি JIT কম্পাইলার রানটাইমে বাইটকোডকে নেটিভ কোডে কম্পাইল করে। CPython এর একটি JIT কম্পাইলার থাকতে পারে না কারণ Python এর গতিশীল প্রকৃতি এটিকে লিখতে কঠিন করে তোলে।

পাইথন অন্যান্য ভাষার তুলনায় ধীর কেন?

পার্থক্য

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

পাইথন অন্যান্য ভাষার তুলনায় ধীর কেন?

C দ্রুত হয়

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


  1. কেন উবুন্টু ব্যতীত লিনাক্স অপারেটিং সিস্টেম ব্যবহার করবেন?

  2. পাইথন এবং আর ব্যতীত ডেটা সায়েন্সকে সমর্থন করার সরঞ্জামগুলি কী কী?

  3. পাইথন কোডের জন্য অপ্টিমাইজেশন টিপস?

  4. আপলোডের গতি কেন ডাউনলোডের গতির চেয়ে অনেক কম?