নিম্নলিখিত দুটি পরিস্থিতিতে একই কম্পিউটারে একটি বৃহত সিএই সিমুলেশন পরীক্ষা করার বিষয়ে আমি একটি প্রশ্ন জিজ্ঞাসা করতে চাই ।
- খাঁটি উবুন্টু সিস্টেম
- উইন্ডোজ 10 (ডাব্লুএসএল) এ উবুন্টু সিস্টেম
উভয় ক্ষেত্রে গণনার গতি কি প্রায় একই বা এগুলি আলাদা?
নিম্নলিখিত দুটি পরিস্থিতিতে একই কম্পিউটারে একটি বৃহত সিএই সিমুলেশন পরীক্ষা করার বিষয়ে আমি একটি প্রশ্ন জিজ্ঞাসা করতে চাই ।
উভয় ক্ষেত্রে গণনার গতি কি প্রায় একই বা এগুলি আলাদা?
উত্তর:
আপনার সিমুলেশন সফ্টওয়্যারটি সম্ভবত সিপিইউ বাউন্ড বা মেমরি সীমাবদ্ধ । এই ধরনের কাজের চাপের জন্য, "বেয়ার মেটাল" বা ডাব্লুএসএল (বা অন্য কোনও সামঞ্জস্যতা স্তর বা ভিএম যা দেশীয় নির্বাহের ব্যবহার করে) এর মধ্যে কোড চালানোর মধ্যে কোনও উল্লেখযোগ্য পার্থক্য দেখা উচিত নয় , যেহেতু উভয় ক্ষেত্রেই ওএস বেশিরভাগ ক্ষেত্রে কেবল দাঁড়িয়ে থাকে সিমুলেশন কোডটি সরাসরি সিপিইউতে চলে while
তবে এটিও সম্ভব যে আপনার সিমুলেশনটি কমপক্ষে আংশিক I / O আবদ্ধ এবং সেখানেই পার্থক্য দেখা দিতে পারে। স্পষ্টতই, ডাব্লুএসএল (বর্তমানে) এর পরিবর্তে ধীরে ধীরে ফাইল সিস্টেম ইন্টারফেস স্তর রয়েছে যা ডিস্ক I / O উল্লেখযোগ্যভাবে কমিয়ে দিতে পারে That * এটি বলেছে, যদিও ডিস্ক I / O অনেক ধরণের বাল্ক ডেটা প্রক্রিয়াকরণ কাজের জন্য প্রধান বাধা হতে পারে, একটি "সিমুলেশন" সাধারণত ফাইল পড়া এবং লেখার বেশিরভাগ সময় ব্যয় করা উচিত নয় । যদি আপনার হয় তবে অযথা শারীরিক ডিস্ক অ্যাক্সেস এড়ানোর জন্য আপনি এটি র্যাম ডিস্ক (যেমন নেটিভ ** লিনাক্সে tmpfs) থেকে চালানো বিবেচনা করতে পারেন।
যাই হোক না কেন, নিশ্চিত হওয়ার একমাত্র উপায় হ'ল আপনার পরিবেশ সজ্জা এবং সময় চলতে কত সময় লাগে তা উভয়ই আপনার সিমুলেশন পরীক্ষা করা। যাইহোক, এর আগে, আপনি বিদ্যমান বেঞ্চমার্কগুলি একবার দেখে নিতে পারেন, যেমন ডাব্লুএসএল বনাম ডকার বনাম ভার্চুয়ালবক্স বনাম নেটিভ লিনাক্স পারফরম্যান্স বেঞ্চমার্ক দ্বারা ফোরোনিক্স ফেব্রুয়ারী 2018 থেকে , এবং কোনও পরীক্ষার ফলাফলগুলি পরীক্ষা করে যা একই উপাদানগুলিকে চাপ দেয় আপনার সিমুলেশন হিসাবে সিস্টেমের।
(এফডাব্লুআইডাব্লু, ফোরোনিক্স ফলাফলগুলি বেশিরভাগই আমার উপরে উল্লিখিত সাধারণ নীতিগুলির সাথে মেলে বলে মনে হয়, যদিও ভার্চুয়ালবক্সের মতো কয়েকটি I / O বাউন্ডমার্কে নেটিভ লিনাক্সকে স্পষ্টতই ছাড়িয়ে গেছে, দৃশ্যত এর ভার্চুয়াল ডিস্কের সাথে সাথে তাত্ক্ষণিকভাবে ডেটা সিঙ্ক করে না ফিজিকাল ডিস্কে। একটি সম্ভাব্য প্রাসঙ্গিক বিষয় যা আমি উপরে উল্লেখ করতে ব্যর্থ হই তা হ'ল বেঞ্চমার্কগুলি বিভিন্ন হোস্ট এনভায়রনমেন্টের মধ্যে এবং বিভিন্ন লিনাক্স ডিস্ট্রোজের মধ্যেও বেয়ার হার্ডওয়ারে চলার পরেও মাল্টি-থ্রেডড ওপেনএমপি পারফরম্যান্সে উল্লেখযোগ্য পার্থক্য দেখায় indআপনার দৃষ্টিতে, এটি খুব অবাক হওয়ার মতো নয়, যেহেতু থ্রেডিং এবং আইপিসি কার্নেল দ্বারা পরিচালিত হয় I'd আমি অনুমান করতে পারি যে ডিস্ট্রোদের মধ্যে অনেক পার্থক্য বিভিন্ন রানটাইম এবং / অথবা টাইপ কার্নেল টিউনিং প্যারামিটারে কমিয়ে আসতে পারে))
*) ২০১০ সালের এই এমএসডিএন ব্লগ পোস্ট অনুসারে , ডাব্লুএসএলে দুটি ফাইলসিস্টেম ইন্টারফেস উপাদান রয়েছে: ভলফস, যা এনটিএফএসের মাধ্যমে নেটিভ লিনাক্স ফাইল সিস্টেমেটিকসকে ঘনিষ্ঠভাবে অনুকরণ করে এবং উদাহরণস্বরূপ মাউন্ট করতে ব্যবহৃত হয় /
এবং /home
এবং ডিআরভিএফস, যা বেশিরভাগ উইন্ডোজ-এর মতো শব্দার্থবিজ্ঞান সরবরাহ করে এবং হোস্ট উইন্ডোজ ড্রাইভগুলি /mnt/c
ইত্যাদির মাধ্যমে অ্যাক্সেসের জন্য ব্যবহৃত হয় যদি আপনার সফ্টওয়্যারটিতে বিশেষত একই ফাইলের একাধিক হার্ড লিঙ্কগুলির মতো নেটিভ লিনাক্স ফাইল সিস্টেমের বৈশিষ্ট্যগুলির প্রয়োজন না হয় তবে এটি কোনও ডিভিএফএস ফোল্ডারে তার ডেটা ফাইলগুলি সংরক্ষণ করার জন্য কনফিগার করে ফাইল অ্যাক্সেসের কার্যকারিতা উন্নত করতে পারে WSL।
**) মে ২০১ from থেকে এই রেডডিট থ্রেড অনুসারে , ডাব্লুএসএলে "tmpfs বর্তমানে ডিস্ক ব্যবহার করে অনুকরণ করা হয়"। গত বছরের তুলনায় কিছু পরিবর্তিত না হলে, সম্ভবত এটির অর্থ হ'ল ডাব্লুএসএলে টিএমপিএফ ব্যবহার করা কোনও সাধারণ অন-ডিস্ক ফাইল সিস্টেম ব্যবহার করার ফলে কোনও কার্যকারিতা সুবিধা দেয় না।
-O3 -march=haswell
সাথেই নয়, সংকলক বিকল্পগুলি (উদাহরণস্বরূপ বা কিছু। আমি জানি না যে ক্লিয়ার লিনাক্স আসলে তাদের কার্নেলগুলি তৈরি করতে কী ব্যবহার করে, তবে সম্ভবত বিএমআই 2 / popcnt
/ যা গ্লিবসি এবং কার্নেলের মধ্যে একটি পরিমাপযোগ্য পার্থক্য করতে পারে ((কার্নেল জিতেছে যদিও অ্যাভিএক্স থেকে কোনও লাভ হবে না, কারণ কার্নেলটি সফ্টওয়্যার-RAID5 / 6 ত্রুটি-সংশোধন ডেটার মতো নির্দিষ্ট কোড ব্যতীত এফপিইউ রেজিস্টারগুলিকে স্পর্শ করা এড়ায়))
উইন্ডোতে উবুন্টু (ডাব্লুএসএল - 2017 ফল ক্রিয়েটর আপডেট) লিনাক্স পরিবেশে "বিশুদ্ধ" উবুন্টুর চেয়ে অবশ্যই ধীর।
উদাহরণস্বরূপ, স্ক্রিন পেইন্টিং উইন্ডোজ 10 বনাম উবুন্টু 16.04 এর তুলনায় অনেকগুণ বেশি সময় নেয়, অর্থাত আপনি উইন্ডোজ 10 এ কার্সারটি সরানো দেখতে পাবেন:
ডাব্লুএসএল বাশ স্প্ল্যাশ স্ক্রিনটি আঁকাতে এটি প্রায় 5 সেকেন্ড সময় নেয়। তুলনা করে এটি উবুন্টু 16.04 এ একই স্প্ল্যাশ স্ক্রিনের জন্য প্রায় 1 1/2 সেকেন্ড:
প্রথম বিভাগটি দেখায় যে ধীরে ধীরে স্ক্রিন I / O তবে সিপিইউ বেঞ্চমার্কিংয়ের কী?
এই জিজ্ঞাসা উবুন্টু প্রশ্নোত্তর থেকে: লিনাক্সের সিপিইউ বেঞ্চমার্কিং ইউটিলিটি , আমি লিনাক্স এবং উইন্ডোতে উবুন্টু 16.04 এ পরীক্ষা করেছিলাম। লিনাক্সে উইন্ডোজ 10 সংস্করণে প্রায় 24 সেকেন্ডে 1709 প্রায় 31 সেকেন্ড। লিনাক্স 6 সেকেন্ড দ্রুত বা প্রায় 25% দ্রুত। তবে আমি সবেমাত্র উইন্ডোজ 10 কে সংস্করণ 1803 (রেডস্টোন 4 ওরফে স্প্রিং ক্রিয়েটর্স এপ্রিল 2018 আপডেট) এ আপগ্রেড করেছি এবং এটি 24 সেকেন্ড সময় নিয়েছে যা লিনাক্সের সমান।
$ sysbench --test=cpu --cpu-max-prime=20000 run
sysbench 0.4.12: multi-threaded system evaluation benchmark
Running the test with following options:
Number of threads: 1
Doing CPU performance benchmark
Threads started!
Done.
Maximum prime number checked in CPU test: 20000
Test execution summary:
total time: 23.5065s
total number of events: 10000
total time taken by event execution: 23.5049
per-request statistics:
min: 2.13ms
avg: 2.35ms
max: 8.52ms
approx. 95 percentile: 2.76ms
Threads fairness:
events (avg/stddev): 10000.0000/0.00
execution time (avg/stddev): 23.5049/0.00
$ sysbench --test=cpu --cpu-max-prime=20000 run
sysbench 0.4.12: multi-threaded system evaluation benchmark
Running the test with following options:
Number of threads: 1
Doing CPU performance benchmark
Threads started!
Done.
Maximum prime number checked in CPU test: 20000
Test execution summary:
total time: 30.5350s
total number of events: 10000
total time taken by event execution: 30.5231
per-request statistics:
min: 2.37ms
avg: 3.05ms
max: 6.21ms
approx. 95 percentile: 4.01ms
Threads fairness:
events (avg/stddev): 10000.0000/0.00
execution time (avg/stddev): 30.5231/0.00
$ sysbench --test=cpu --cpu-max-prime=20000 run
sysbench 0.4.12: multi-threaded system evaluation benchmark
Running the test with following options:
Number of threads: 1
Doing CPU performance benchmark
Threads started!
Done.
Maximum prime number checked in CPU test: 20000
Test execution summary:
total time: 23.7223s
total number of events: 10000
total time taken by event execution: 23.7155
per-request statistics:
min: 2.21ms
avg: 2.37ms
max: 4.53ms
approx. 95 percentile: 2.73ms
Threads fairness:
events (avg/stddev): 10000.0000/0.00
execution time (avg/stddev): 23.7155/0.00
দ্রষ্টব্য: 2018 এর জন্য উইন্ডোজ 10 স্প্রিং আপডেট (ডাবড রেডস্টোন 4 ) 9 ই মে (4 দিন আগে) প্রকাশ পেয়েছে এবং উন্নতিগুলি যাচাই করার জন্য আমি শীঘ্রই এটি ইনস্টল করব। সন্দেহ নেই অনেক আছে। আমি যে আগ্রহের বিষয়ে জানি তা হ'ল cron
স্টার্টআপে কাজ চালানোর দক্ষতা । আমার প্রয়োজনটি স্বয়ংক্রিয় দৈনিক ব্যাকআপগুলির জন্য gmail.com এ।
দ্রষ্টব্য 2: আমি সবেমাত্র উইন্ডোজ 10 বিল্ড 1803 ইনস্টল করেছি (এপ্রিল 2018 স্প্রিং ক্রিয়েটার্স আপডেট এ কেএ রেডস্টোন 4) এবং স্ক্রিন পেইন্টিংটি অনেক দ্রুত। বাশ স্প্ল্যাশ স্ক্রিনটি প্রদর্শন করতে এখন এটি 5 সেকেন্ডের পরিবর্তে মাত্র 3 সেকেন্ড। সিপিইউ বেঞ্চমার্ক এখন লিনাক্সের সমান।
এটি সম্পর্কে চিন্তা করুন - ডাব্লুএসএল-এ আপনার কম্পিউটার পুরো গ্রাফিকাল উইন্ডোজ সিস্টেম (যা প্রথম স্থানে একটি ভয়াবহ সংস্থান হগ) এবং উবুন্টু সাবসিস্টেম চালাচ্ছে। নেটিভ উবুন্টুতে এটি কেবল উবুন্টু চলছে।
pstree
বা ps auxw
, এটি অবশ্যই স্পষ্ট যে সমস্ত প্রক্রিয়া এখনও জীবিত। (বা top
মেমরির খরচ অনুসারে বাছাই করতে এম চাপুন)।
systemd
সিসভির মতো কাজ করে না init
। এই মন্তব্যের আগের অংশটি ভান করে যে আপনি একটি পুরানো-স্কুল init
সেটআপের সাথে 5 বা 10 বছরের পুরানো লিনাক্স ডিস্ট্রো চালিয়ে যাচ্ছেন ।) তবে হ্যাঁ , আপনার এক্স সেশন থেকে লগ আউট এবং এক্স 11 / জিডিএম বন্ধ করা সংস্থানগুলি মুক্ত করবে, বিশেষত আপনার যদি অদলবদল নেই, বা আপনার ডেস্কটপে ক্র্যাপ রয়েছে যা "নিষ্ক্রিয়" হয়ে গেলেও প্রায়শই জাগ্রত হয়।
এটি বিশেষত আপনার সিমুলেশনকে প্রভাবিত করবে কিনা তা আমি জানি না, তবে এটি হতে পারে:
এর অর্থ, যদি আপনার সিমুলেশন শেয়ার্ড মেমরি ব্যবহার করে (মনে করুন /dev/shm
), এটি ধীর হতে পারে এবং / অথবা আপনার স্টোরেজ ডিভাইসটি পরিধান করতে পারে! এবং পারফরম্যান্স পেনাল্টিটি বেশ কয়েকটি স্তর থেকে আসে :
ফাইল সিস্টেম ড্রাইভার
স্টোরেজ ড্রাইভার
স্টোরেজ মাধ্যম
তবে যদি এটি এটি না করে, তবে পারফরম্যান্সটি খালি-ধাতব উবুন্টু (যেমন অন্যরা উল্লেখ করেছেন যে অন্য কোনও আই / ওকে ধরে না রেখে) এর মতো হওয়া উচিত।