সি ++ কম্পাইল করার জন্য আমি কীভাবে উইন্ডোজকে লিনাক্সের মতো দ্রুত যেতে পারি?


142

আমি জানি এটি এত বেশি প্রোগ্রামিং প্রশ্ন নয় তবে এটি প্রাসঙ্গিক।

আমি মোটামুটি বড় ক্রস প্ল্যাটফর্ম প্রকল্পে কাজ করি । উইন্ডোজে আমি ভিসি ++ 2008 ব্যবহার করি Linux লিনাক্সে আমি জিসিসি ব্যবহার করি। প্রকল্পে প্রায় 40k ফাইল রয়েছে। একই প্রকল্পটি সংকলন এবং লিঙ্কে লিনাক্সের তুলনায় উইন্ডোজ 10x থেকে 40x ধীর। আমি কীভাবে এটি ঠিক করতে পারি?

লিনাক্স এবং উইন্ডোজে>> 3 মিনিটে 20 সেকেন্ডে একক পরিবর্তন বর্ধনশীল build কেন? এমনকি আমি লিনাক্সে 'সোনার' লিঙ্কার ইনস্টল করতে পারি এবং সেই সময়টি 7 সেকেন্ডে নামিয়ে আনতে পারি।

একইভাবে উইন্ডোজের তুলনায় গিটটি 10x থেকে 40x গতিযুক্ত faster

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

সাধারণ পরীক্ষা হিসাবে, প্রচুর সাব-ফোল্ডার সহ একটি ফোল্ডার সন্ধান করুন এবং একটি সহজ করুন

dir /s > c:\list.txt

উইন্ডোজে এটি দ্বিতীয়বার চালান এবং দ্বিতীয় বার চালান যাতে এটি ক্যাশে থেকে চলে। ফাইলগুলি লিনাক্সে অনুলিপি করুন এবং দ্বিতীয় রানের সমতুল্য 2 রান এবং সময় করুন।

ls -R > /tmp/list.txt

আমার কাছে ঠিক একই চশমা সহ 2 টি ওয়ার্কস্টেশন রয়েছে। এইচপি জেড 600 এর 12 জিগ র‌্যাম, ৮.০ কোয়ার্স এগার Folder 400k ফাইল সহ একটি ফোল্ডারে উইন্ডোজ 40 সেকেন্ড নেয়, লিনাক্স <1 সেকেন্ড লাগে।

উইন্ডোজ গতি বাড়ানোর জন্য আমি কি একটি রেজিস্ট্রি সেটিংস সেট করতে পারি? কি দেয়?


কিছু সংক্ষিপ্ত প্রাসঙ্গিক লিঙ্কগুলি, সময় সংকলনের জন্য প্রাসঙ্গিকভাবে প্রয়োজনীয় নয়, i / o।


5
আমি কেন জানি না, তবে এটি উইন্ডোজ এবং লিনাক্সের পারফরম্যান্স বৈশিষ্ট্যের একটি জ্ঞাত পার্থক্য, লিনাক্স একটি একক ডিরেক্টরিতে ফাইলের বোঝা নিয়ে কাজ করার ক্ষেত্রে উইন্ডোজের চেয়ে ভাল, সম্ভবত এটি কেবল এনটিএফএস বনাম Ext4 / যাই হোক না কেন? লিনাক্সের ডেন্ট্রি ক্যাশে উইন্ডোজ সমতুল্য ঠিক তেমন ভাল নাও হতে পারে।
স্পুড 86

73
কেন এটি বন্ধ ছিল? "গঠনমূলক হচ্ছে না" ??! আমি এটি বিকাশকারীদের জন্য বেশ প্রাসঙ্গিক বলে মনে করি।
নীল

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

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

2
@ রায়ম-চেন চিমের মতো কাউকে কিছু অন্তর্দৃষ্টি দিয়ে দেখতে পারা অবাক লাগবে - যদি প্রশ্নটি প্রযুক্তিগত থাকে এবং সমস্যাটি পুনরুত্পাদন করার জন্য যথেষ্ট পরিমাণে ডেটা / তথ্য সরবরাহ করে।
বেনিয়ামিন পোডসজুন

উত্তর:


32

যদি কোনও হার্ড উইন্ডোজ সিস্টেম হ্যাকার না আসে, আপনি পক্ষপাতদুষ্ট মন্তব্য (যা আমি করব না) এবং অনুমান (যা আমি চেষ্টা করতে যাচ্ছি) এর চেয়ে বেশি কিছু পাবেন না।

  1. ফাইল সিস্টেম - আপনার একই ফাইল সিস্টেমে একই ক্রিয়াকলাপগুলি (সহ dir) টিপুন। আমি জুড়ে এসেছিল এই বিভিন্ন পরামিতি জন্য কয়েক ফাইল সিস্টেম benchmarks।

  2. ক্যাশে। আমি একবার লিনাক্সে একটি র‌্যাম ডিস্কে একটি সংকলন চালানোর চেষ্টা করে দেখেছি যে কার্নেল ক্যাশিংয়ের যত্ন নেওয়ার জন্য কার্নেল যেভাবে ডিস্কে চালাচ্ছেন তার চেয়ে ধীর ছিল। এটি লিনাক্সের জন্য একটি শক্ত বিক্রয় কেন্দ্র এবং কারণ পারফরম্যান্সটি এত আলাদা।

  3. উইন্ডোজ উপর খারাপ নির্ভরতা নির্দিষ্টকরণ। উইন্ডোজের জন্য ক্রোমিয়াম নির্ভরতা নির্দিষ্টকরণগুলি লিনাক্সের মতো সঠিক নয় correct আপনি যখন একটি ছোট পরিবর্তন করেন এটির ফলে অপ্রয়োজনীয় সংকলন হতে পারে। আপনি উইন্ডোজ একই সংকলক সরঞ্জামচেন ব্যবহার করে এটি বৈধ করতে সক্ষম হতে পারে।


আপনি কি # 2 তে কিছুটা বিস্তারিত বর্ণনা করতে পারেন? এটি বেশ আশ্চর্যজনক - কারণ কার্নেলটি র‌্যাম ডিস্ক বা কোনও কিছুর ডেটা ক্যাশে করে না?
ব্যবহারকারী541686

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

1
"যদি না [কোনও নির্দিষ্ট বিষয়ে বিশেষজ্ঞ] উপস্থিত না হন, আপনি পক্ষপাতদুষ্ট মন্তব্য এবং অনুমানের চেয়ে বেশি কিছু পাবেন না": অন্য যে কোনও প্রশ্নের চেয়ে কীভাবে আলাদা?
ডল্ফ

1
এটি, উইন বনাম লিন বিষয়টির জন্য ধন্যবাদ একটি ফ্যানবয় চুম্বক বেশি। এছাড়াও প্রশ্নটি সরাসরি নির্দেশগুলির চেয়ে ভিন্ন, যা কেবল আদেশ বা ব্যবহারের পদ্ধতিগুলির জন্য জিজ্ঞাসা করে।
নওফাল ইব্রাহিম

# 1 এর লিঙ্কটি আর সক্রিয় নেই।
alkasm

28

কয়েকটি ধারণা:

  1. 8.3 নাম অক্ষম করুন। এটি প্রচুর সংখ্যক ফাইল এবং অপেক্ষাকৃত কম সংখ্যক ফোল্ডার সহ ড্রাইভের একটি বড় কারণ হতে পারে:fsutil behavior set disable8dot3 1
  2. আরও ফোল্ডার ব্যবহার করুন। আমার অভিজ্ঞতা হিসাবে, এনটিএফএস প্রতি ফোল্ডারে প্রায় 1000 টিরও বেশি ফাইল দিয়ে ধীর হতে শুরু করে।
  3. এমএসবিল্ডের সাথে সমান্তরাল বিল্ডগুলি সক্ষম করুন; কেবল "/ এম" স্যুইচটি যুক্ত করুন এবং এটি সিপিইউ কোর প্রতি এমএসবিল্ডের একটি অনুলিপি স্বয়ংক্রিয়ভাবে শুরু করবে।
  4. আপনার ফাইলগুলিকে একটি এসএসডি রাখুন - র্যান্ডম আই / ও এর জন্য প্রচুর পরিমাণে সহায়তা করে।
  5. যদি আপনার গড় ফাইলের আকার 4KB এর চেয়ে বেশি হয়, তবে আপনার গড় ফাইলের আকারের সাথে মোটামুটিভাবে মেলে এমন একটি বৃহত ক্লাস্টার আকারের সাথে ফাইল সিস্টেমটি পুনর্নির্মাণের বিষয়টি বিবেচনা করুন।
  6. ফাইলগুলি Defragmented হয়েছে তা নিশ্চিত করুন। খণ্ডিত ফাইলগুলির ফলে প্রচুর ডিস্ক সিক হয়, যার ফলে আপনার কাছে থ্রুপুট 40+ এর ফ্যাক্টর লাগতে পারে। সিসিনটার্নালগুলি বা বিল্ট-ইন উইন্ডোজ ডিফ্রাগম্যান্টার থেকে "কনটিগ" ইউটিলিটি ব্যবহার করুন।
  7. যদি আপনার গড় ফাইলের আকার ছোট হয় এবং আপনি যে পার্টিশনটি করছেন সে তুলনামূলকভাবে পূর্ণ, আপনি সম্ভবত খণ্ডিত এমএফটি নিয়ে চলছে, যা কার্য সম্পাদনের জন্য খারাপ। এছাড়াও, 1K এর চেয়ে ছোট ফাইলগুলি সরাসরি এমএফটিতে সংরক্ষণ করা হয়। উপরে উল্লিখিত "কনটিগ" ইউটিলিটি সাহায্য করতে পারে বা আপনার এমএফটি আকার বাড়ানোর প্রয়োজন হতে পারে। নিম্নলিখিত কমান্ডটি এটি দ্বিগুণ করবে, ভলিউমের 25% এ: fsutil behavior set mftzone 2অতিরিক্ত 12.5% ​​ইনক্রিমেন্ট বৃদ্ধি করে আকার বাড়াতে শেষ সংখ্যাটি 3 বা 4 এ পরিবর্তন করুন। কমান্ডটি চালানোর পরে পুনরায় বুট করুন এবং তারপরে ফাইল সিস্টেমটি তৈরি করুন।
  8. শেষ অ্যাক্সেসের সময়টি অক্ষম করুন: fsutil behavior set disablelastaccess 1
  9. ইনডেক্সিং পরিষেবাটি অক্ষম করুন
  10. আপনার অ্যান্টি-ভাইরাস এবং অ্যান্টি-স্পাইওয়্যার সফ্টওয়্যার অক্ষম করুন, বা কমপক্ষে প্রাসঙ্গিক ফোল্ডারগুলি উপেক্ষা করার জন্য সেট করুন।
  11. আপনার ফাইলগুলি ওএস এবং পেজিং ফাইল থেকে আলাদা শারীরিক ড্রাইভে রাখুন। একটি পৃথক শারীরিক ড্রাইভ ব্যবহার করা উইন্ডোজকে উভয় ড্রাইভে সমান্তরাল আই / ওএস ব্যবহার করতে দেয়।
  12. আপনার সংকলক পতাকা তাকান। উইন্ডোজ সি ++ সংকলকটিতে প্রচুর বিকল্প রয়েছে; নিশ্চিত করুন যে আপনি কেবলমাত্র যা আপনার প্রয়োজন প্রয়োজন তা ব্যবহার করছেন।
  13. পেজড-পুল বাফারগুলির জন্য ওএস যে পরিমাণ মেমরি ব্যবহার করে তা বাড়ানোর চেষ্টা করুন (নিশ্চিত করুন যে আপনার পর্যাপ্ত র‌্যাম প্রথমে রয়েছে) fsutil behavior set memoryusage 2
  14. আপনি মাঝে মধ্যে ডিস্ক ত্রুটি অনুভব করছেন না তা নিশ্চিত করতে উইন্ডোজ ত্রুটি লগটি পরীক্ষা করুন।
  15. আপনার ডিস্কগুলি কতটা ব্যস্ত তা দেখতে শারীরিক ডিস্ক সম্পর্কিত পারফরম্যান্স কাউন্টারগুলিতে একবার দেখুন। উচ্চ সারির দৈর্ঘ্য বা স্থানান্তর প্রতি দীর্ঘ সময়গুলি খারাপ লক্ষণ।
  16. প্রথম 30% ডিস্ক পার্টিশন কাঁচা স্থানান্তর সময়ের ক্ষেত্রে বাকী ডিস্কের চেয়ে অনেক দ্রুত। সংক্ষিপ্ত পার্টিশনগুলি সময় সন্ধান করতে কমাতে সহায়তা করে।
  17. আপনি কি রেড ব্যবহার করছেন? যদি তা হয় তবে আপনার RAID প্রকারের পছন্দটি অপ্টিমাইজ করার প্রয়োজন হতে পারে (লেখার জন্য ভারী ক্রম রচনার জন্য RAID-5 খারাপ)
  18. আপনার প্রয়োজন নেই এমন কোনও পরিষেবা অক্ষম করুন
  19. ডিফ্র্যাগমেন্ট ফোল্ডারগুলি: সমস্ত ফাইলকে অন্য ড্রাইভে (কেবল ফাইলগুলি) অনুলিপি করুন, মূল ফাইলগুলি মুছুন, সমস্ত ফোল্ডারকে অন্য ড্রাইভে (কেবল খালি ফোল্ডারগুলি) অনুলিপি করুন, তারপরে মূল ফোল্ডারগুলি মুছুন, মূল ড্রাইভকে ডিফ্র্যাগমেন্ট করুন, ফোল্ডারের কাঠামোটিকে প্রথমে অনুলিপি করুন তারপরে ফাইলগুলি অনুলিপি করুন। উইন্ডোজ একবারে একটি বড় ফাইল ফোল্ডার তৈরি করে, ফোল্ডারগুলি খণ্ডিত এবং ধীর হয়ে যায়। ("কনটিগ" এরও এখানে সহায়তা করা উচিত)
  20. আপনি যদি I / O আবদ্ধ হন এবং সিপিইউ চক্রটি ছাড়াই রাখেন, ডিস্ক সংক্ষেপণ চালু করার চেষ্টা করুন। এটি সিপিইউতে কিছু ব্যয় করে অত্যন্ত সংকোচনের ফাইলগুলির জন্য (উত্স কোডের মতো) জন্য কয়েকটি উল্লেখযোগ্য স্পিডআপ সরবরাহ করতে পারে।

1
আপনি যদি এই সমস্ত জিনিসগুলি করেন তবে আপনি লিনাক্স পারফরম্যান্সের কাছাকাছি আসবেন না। নীচে পরীক্ষা দিন এবং আপনি অসম্মতি প্রকাশ করে আপনার সময় পোস্ট করুন।
বি 7 কিচ

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

3
তাহলে আপনি যা বর্ণনা করছেন তা হ'ল সমস্যা। একটি পৃথক মানদণ্ড বাছাই করা সমস্যার সমাধান করে না - আপনি কেবল দূরে সন্ধান করছেন।
বি 7 কিচ

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

1
উপরে প্রস্তাবিত কিছু পরিবর্তন করার পরে, ক্রোমিয়াম গাছের জন্য "ls -R" এর দ্বিতীয় রানটি আমার জন্য 4.3 সেকেন্ড সময় নেয় (ওপিতে 40 সেকেন্ড বনাম)। "দির / স" প্রায় এক সেকেন্ড সময় নেয়। এসএসডি-এ স্যুইচ করা একক গণনার জন্য সহায়ক হয়নি, তবে আমার সন্দেহ হয় এটি সংকলনের জন্য সহায়তা করবে।
রিকএনজেড

25

এনটিএফএস প্রতিটি সময় ফাইল অ্যাক্সেসের সময় সংরক্ষণ করে। আপনি এটিকে অক্ষম করার চেষ্টা করতে পারেন: "fsutil আচরণ সেট disablelastaccess 1" (পুনঃসূচনা)


6
টেস্টিং 4 সেকেন্ড পূর্ববর্তী 36 এখনও জঘন্য আমার লিনাক্স VM- র উপর .6 সেকেন্ড তুলনায় থেকে নেমে চাঁচা
b7kich

21

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

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


17

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

এটি করার ফলে আমি একটি বড় (250 কিলোক) সি ++ প্রকল্পের সংকলনের সময়গুলি দ্রুত করতে সক্ষম হয়েছি যা আমি 15 মিনিট থেকে প্রায় 6 মিনিটের মতো কিছুতে কাজ করছি।


গম্ভীরভাবে? আপনার মানে আমি কোনও ভিএমকে ডেভ মাসচাইন হিসাবে ব্যবহার করার জন্য ট্রায়াল দেব? অদ্ভুত শোনায় ... আপনি কোন ভিএম ব্যবহার করবেন?
মার্টিন বুকা ওয়েজার

8
আমি আমার উইন্ডোজ work ওয়ার্কস্টেশনের অভ্যন্তরে একটি উবুন্টু ১১.০৪ ভিএম ব্যবহার করে উপরের দৃশ্যের পরীক্ষা করেছি। লিনাক্স ভিএম এর জন্য 0.6 সেকেন্ড, আমার উইন্ডোজ ওয়ার্কস্টেশনের জন্য 36 সেকেন্ড
b7kich

2
যদি আপনি ভার্চুয়ালবক্স ব্যবহার করেন এবং একটি ভাগ করা ড্রাইভ সেট আপ করেন তবে আপনি মূলত আপনার সংকলনগুলি নিখরচায় গতিতে পারেন।
orlp

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

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

17

এটি করতে অসুবিধা হ'ল সি ++ অনেকগুলি ছোট, স্বতন্ত্র, ফাইলগুলির মধ্যে নিজেকে এবং সংকলন প্রক্রিয়াটি ছড়িয়ে দেয় fact লিনাক্স এমন কিছু যা ভাল এবং উইন্ডোজ না। আপনি যদি উইন্ডোজের জন্য সত্যই দ্রুত সি ++ সংকলক তৈরি করতে চান তবে সমস্ত কিছু র‌্যামে রাখার চেষ্টা করুন এবং যতটা সম্ভব ফাইল সিস্টেমকে স্পর্শ করুন।

এটিই আপনি কীভাবে একটি দ্রুত লিনাক্স সি ++ কম্পাইল চেইন তৈরি করবেন, তবে এটি লিনাক্সে কম গুরুত্বপূর্ণ কারণ ফাইল সিস্টেম ইতিমধ্যে আপনার জন্য এই টিউনিংয়ের অনেক কিছু করছে।

ইউনিক্স সংস্কৃতির কারণে এর কারণ: ixতিহাসিকভাবে ফাইল সিস্টেমের কার্যকারিতা উইন্ডোজের চেয়ে ইউনিক্স বিশ্বে অনেক বেশি অগ্রাধিকার পেয়েছে। বলা বাহুল্য যে এটি উইন্ডোজে অগ্রাধিকার ছিল না, ইউনিক্সে এটি একটি উচ্চ অগ্রাধিকার ছিল।

  1. উত্স কোড অ্যাক্সেস।

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

    ইউনিক্স উত্স কোডে অ্যাক্সেস (এমনকি ওপেন সোর্সের আগে) আরও বিস্তৃত ছিল। অতএব, আপনি যদি পারফরম্যান্স উন্নত করতে চান তবে আপনি এটি প্রথমে সফ্টওয়্যার (সস্তা এবং সহজ) এবং হার্ডওয়্যার দ্বিতীয়তে সম্বোধন করবেন।

    ফলস্বরূপ, বিশ্বে এমন অনেক লোক রয়েছে যারা ইউনিক্স ফাইল সিস্টেমটি অধ্যয়ন করে এবং পারফরম্যান্সের উন্নতির জন্য অভিনব উপায় সন্ধান করে তাদের পিএইচডি করেছেন।

  2. ইউনিক্স অনেক ছোট ফাইলের দিকে ঝুঁকছে; উইন্ডোজ কয়েকটি (বা একক) বড় ফাইলের দিকে ঝুঁকছে।

    ইউনিক্স অ্যাপ্লিকেশনগুলি অনেক ছোট ফাইল নিয়ে কাজ করে। একটি সফ্টওয়্যার বিকাশের পরিবেশের কথা চিন্তা করুন: অনেকগুলি ছোট উত্স ফাইল, প্রতিটি নিজস্ব উদ্দেশ্য নিয়ে। চূড়ান্ত পর্যায়ে (লিঙ্কিং) একটি বড় ফাইল তৈরি করে তবে এটি একটি ছোট শতাংশ।

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

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

    উইন্ডোজ বেঞ্চমার্কিং এবং অপ্টিমাইজেশনের ইতিহাসটি কীভাবে দীর্ঘ ফাইল পড়তে বা লিখতে পারে তার উপর নির্ভর করে। এটিই অনুকূলিত হয়।

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

  3. ইউনিক্স উচ্চ কর্মক্ষমতা উপর দৃষ্টি নিবদ্ধ করা হয়; উইন্ডোজ ব্যবহারকারীর অভিজ্ঞতার উপর দৃষ্টি নিবদ্ধ করে

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

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

  4. উইন্ডোজ বাস্তুসংস্থান পরিকল্পিত অপ্রচলিত উপর নির্ভর করে। যখন নতুন হার্ডওয়্যার মাত্র এক বা দুই বছর দূরে থাকবে তখন কেন সফ্টওয়্যারটি অপ্টিমাইজ করবেন?

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

    এছাড়াও, ইউনিক্স ওপেন সোর্স হিসাবে (এটি ছিল না তখনও প্রত্যেকেরই উত্সটিতে অ্যাক্সেস ছিল) যে কোনও বিরক্ত পিএইচডি শিক্ষার্থী কোডটি পড়তে এবং আরও ভাল করে বিখ্যাত হতে পারে। এটি উইন্ডোতে ঘটে না (এমএসের এমন একটি প্রোগ্রাম রয়েছে যা উইন্ডোজ সোর্স কোডে একাডেমিকদের অ্যাক্সেস দেয়, এটি খুব কমই গ্রহণ করা হয়)। ইউনিক্স-সম্পর্কিত পারফরম্যান্স কাগজগুলির এই নির্বাচনটি দেখুন : http://www.eecs.harvard.edu/margo/papers/ বা অস্টেরহাউস, হেনরি স্পেন্সার বা অন্যদের দ্বারা কাগজপত্রের ইতিহাস দেখুন। ইউনিক্স ইতিহাসের সবচেয়ে বড় (এবং দেখতে সবচেয়ে আনন্দদায়ক) বিতর্কগুলির মধ্যে হেক হ'ল অস্টেরহাউস এবং সেলজারের মধ্যে http://www.eecs.harvard.edu/margo/papers/usenix95-lfs/supplement/rebuttal এর মধ্যে পিছনে ছিল । এইচটিএমএল আপনি উইন্ডোজ বিশ্বে এই জাতীয় জিনিসটি ঘটতে দেখছেন না। আপনি বিক্রেতাদের একে অপরকে আপ করতে দেখবেন, তবে নতুনত্বটি যেহেতু মানসম্পন্ন স্তরের স্তরে রয়েছে বলে মনে হচ্ছে ইদানীং এটি অনেক বেশি বিরল বলে মনে হচ্ছে।

এটাই আমি দেখছি।

আপডেট: আপনি যদি মাইক্রোসফ্ট থেকে বেরিয়ে আসা নতুন সংকলক শৃঙ্খলার দিকে নজর দেন তবে আপনি খুব আশাবাদী হবেন কারণ তারা যা করছে তার বেশিরভাগই পুরো টুলচেনটিকে র‍্যামে রাখা এবং কম কাজ পুনরাবৃত্তি করা সহজ করে তোলে। খুব চিত্তাকর্ষক স্টাফ।


6
কারণটি "সাংস্কৃতিক, প্রযুক্তিগত নয়" বলে সত্যই প্রশ্নের উত্তর দেয় না doesn't স্পষ্টতই, লিনাক্সের তুলনায় উইন্ডোজটিতে নির্দিষ্ট অপারেশনগুলি ধীর হওয়ার জন্য এক বা একাধিক অন্তর্নিহিত প্রযুক্তিগত কারণ রয়েছে। এখন, সাংস্কৃতিক সমস্যাগুলি ব্যাখ্যা করতে পারে যে লোকেরা কেন তাদের প্রযুক্তিগত সিদ্ধান্ত নিয়েছিল; তবে এটি একটি প্রযুক্তিগত প্রশ্নোত্তর সাইট। সংস্কৃতি সম্পর্কে অপ্রতিরোধ্য অনুমান নয়, কারণগুলির একটি কারণ অন্য সিস্টেমের চেয়ে ধীরে ধীরে (এবং পরিস্থিতি উন্নত করার জন্য কী করা যেতে পারে) প্রযুক্তিগত কারণগুলি উত্তরগুলির উচিত ।
ব্রায়ান ক্যাম্পবেল

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

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

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

… এবং সার্ভারগুলিও এটি করে না। * নিক্স সিস্টেমে তাদের বৈশিষ্ট্যগুলি সাধারণত প্রচুর ছোট মডিউলগুলিতে বিভক্ত হয় যার সাথে সার্ভার কোর মূলত একটি খালি শেল হয়।
স্পেকট্রা

7

বর্ধিত লিঙ্ক

যদি ভিসি 2008 সমাধানটি .lib আউটপুটগুলির সাথে একাধিক প্রকল্প হিসাবে সেট আপ করা হয়, আপনাকে "লাইব্রেরি নির্ভরতা ইনপুট ব্যবহার করুন" সেট করতে হবে; এটি লিঙ্কের লিঙ্কটিকে .lib পরিবর্তে .obj ফাইলগুলির বিরুদ্ধে সরাসরি লিঙ্ক তৈরি করে। (এবং আসলে এটিকে বর্ধিত লিঙ্ক করে তোলে makes)

ডিরেক্টরি traversal কর্মক্ষমতা

মূল মেশিনে ক্রলিংয়ের ডিরেক্টরিটিকে অন্য মেশিনে একই ফাইলগুলির সাথে সদ্য নির্মিত ডিরেক্টরিকে ক্রল করার সাথে তুলনা করা কিছুটা অন্যায়। যদি আপনি একটি সমমানের পরীক্ষা চান, আপনার সম্ভবত উত্স মেশিনে ডিরেক্টরিটির অন্য একটি অনুলিপি তৈরি করা উচিত। (এটি এখনও ধীর হতে পারে তবে এটি যে কোনও সংখ্যক জিনিসের কারণে হতে পারে: ডিস্ক বিভাজন, সংক্ষিপ্ত ফাইলের নাম, পটভূমি পরিষেবাদি ইত্যাদি) যদিও আমি মনে করি যে dir /sপ্রকৃত ফাইলগুলি পরিমাপ করার চেয়ে আউটপুট লেখার ক্ষেত্রে পারফেক্ট ইস্যুগুলির আরও কিছু করার আছে I traversal কর্মক্ষমতা। এমনকি dir /s /b > nulএকটি বিশাল ডিরেক্টরি সহ আমার মেশিনে ধীর।


6

আমি নিশ্চিত যে এটি ফাইল সিস্টেমের সাথে সম্পর্কিত। আমি লিনাক্স এবং উইন্ডোজের জন্য একটি ক্রস প্ল্যাটফর্ম প্রকল্পে কাজ করি যেখানে প্ল্যাটফর্ম নির্ভর নির্ভর কোড ব্যতীত সমস্ত কোডই সাধারণ। আমরা মার্কুরিয়াল ব্যবহার করি, গিট নয়, তাই গিটের "লিনাক্স" প্রয়োগ হয় না। লিনাক্সের তুলনায় কেন্দ্রীয় সংগ্রহস্থল থেকে পরিবর্তন আনতে উইন্ডোতে চিরকাল লাগে, তবে আমার বলতে হবে যে আমাদের উইন্ডোজ machines মেশিনগুলি উইন্ডোজ এক্সপিগুলির চেয়ে অনেক ভাল করে। এর পরে কোড সংকলন করা ভিএস ২০০৮-এ আরও খারাপ। এটি কেবল এইচজি নয়; সিএমকে উইন্ডোতেও অনেক ধীর গতিতে চলে এবং এই উভয় সরঞ্জামই ফাইল সিস্টেমটিকে অন্য যে কোনও কিছুর চেয়ে বেশি ব্যবহার করে।

সমস্যাটি এতটাই খারাপ যে আমাদের বেশিরভাগ বিকাশকারী যারা উইন্ডোজ পরিবেশে কাজ করে এমনকি বর্ধিত বিল্ডগুলি করাও বিরক্ত করে না - তারা দেখতে পান যে পরিবর্তে aক্য গড়ে তোলা আরও দ্রুত।

ঘটনাচক্রে, আপনি যদি উইন্ডোয় নাটকীয়ভাবে সংকলনের গতি হ্রাস করতে চান তবে আমি পূর্বোক্ত unityক্য গঠনের পরামর্শ দেব suggest বিল্ড সিস্টেমে সঠিকভাবে প্রয়োগ করার জন্য এটি একটি বেদনা (আমি সিএমকে আমাদের দলের হয়ে এটি করেছি), তবে একবার স্বয়ংক্রিয়ভাবে সম্পন্ন হয়ে গেলে আমাদের অবিচ্ছিন্ন ইন্টিগ্রেশন সার্ভারগুলির জন্য জিনিসগুলি গতি বাড়িয়ে তোলে। আপনার বিল্ড সিস্টেমটি কত বাইনারি ছড়িয়ে দিচ্ছে তার উপর নির্ভর করে আপনি 1 থেকে 2 এর আকারের উন্নতির অর্ডার পেতে পারেন। আপনার মাইলেজ পরিবর্তিত হতে পারে. আমাদের ক্ষেত্রে আমি মনে করি এটি লিনাক্স ত্রিগুণ এবং উইন্ডোজকে 10 এর একটি ফ্যাক্টর তৈরির গতি বাড়িয়েছে, তবে আমাদের প্রচুর অংশীদারি গ্রন্থাগার এবং এক্সিকিউটেবল রয়েছে (যা unityক্য গঠনের সুবিধা হ্রাস করে)।


5

আপনি কীভাবে আপনার বৃহত ক্রস প্ল্যাটফর্ম প্রকল্পটি তৈরি করবেন? আপনি যদি লিনাক্স এবং উইন্ডোজের জন্য সাধারণ মেকফিলগুলি ব্যবহার করেন তবে মেকফিলগুলি উইন্ডোতে দ্রুত নকশাকৃত না হলে আপনি 10 এর একটি ফ্যাক্টর দ্বারা উইন্ডোজ কার্যকারিতাটি সহজেই হ্রাস করতে পারেন।

আমি লিনাক্স এবং উইন্ডোজের সাধারণ (জিএনইউ) মেকফিলগুলি ব্যবহার করে ক্রস প্ল্যাটফর্ম প্রকল্পের কিছু মেকফিলগুলি ঠিক করেছি। sh.exeউইন্ডোজ এবং লিনাক্সের পারফরম্যান্সের পার্থক্যের জন্য মেক একটি রেসিপিটির প্রতিটি লাইনের জন্য একটি প্রক্রিয়া শুরু করছে !

জিএনইউ অনুসারে ডকুমেন্টেশন তৈরি করুন

.ONESHELL:

সমস্যাটি সমাধান করা উচিত তবে এই বৈশিষ্ট্যটি (বর্তমানে) উইন্ডোজ মেকের জন্য সমর্থিত নয়। সুতরাং রেসিপিগুলি একক লজিকাল লাইনে থাকার জন্য (যেমন বর্তমান সংস্থার লাইনের শেষে; \ বা adding যোগ করে) খুব ভালভাবে কাজ করেছে!


4

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

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

উপরে ক্রোমিয়াম ডিরেক্টরি গাছকে অনুসরণ করে প্রস্তাবিত সময়গুলি পরিমাপ করা হয়েছে:

  • উইন্ডোজ হোম প্রিমিয়াম 7 (8 জিবি র‌্যাম) এনটিএফএসে: 32 সেকেন্ড
  • এনটিএফএসে উবুন্টু 11.04 লিনাক্স (2 জিবি র‌্যাম): 10 সেকেন্ড
  • Ext4: 0.6 সেকেন্ডে উবুন্টু 11.04 লিনাক্স (2 জিবি র‌্যাম)

পরীক্ষাগুলির জন্য আমি ক্রোমিয়াম উত্স টান (উভয় উইন / লিনাক্সের অধীনে)

git clone http://github.com/chromium/chromium.git 
cd chromium
git checkout remotes/origin/trunk 

আমি দৌড়ে সময় পরিমাপ করতে

ls -lR > ../list.txt ; time ls -lR > ../list.txt # bash
dir -Recurse > ../list.txt ; (measure-command { dir -Recurse > ../list.txt }).TotalSeconds  #Powershell

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

যে কারও পক্ষে দাবি করতে চায় যে সংখ্যাগুলি ভুল - যে কারণেই হোক - দয়া করে চেষ্টা করে দেখুন এবং আপনার অনুসন্ধানগুলি পোস্ট করুন।


1
উইন্ডোজের জন্য আমার উত্তরে আমি কয়েকটি টিউনিং বর্ণনা করার পরে ক্রোমিয়াম গাছে উপরে "ls -lR" পরীক্ষা চালিয়েছি 19.4 সেকেন্ড। আমি যদি এর পরিবর্তে "ls -UR" ব্যবহার করি (যা ফাইলের পরিসংখ্যান পায় না), সময়টি 4.3 সেকেন্ডে নেমে যায়। একটি এসএসডি তে গাছ সরানো কোনও গতি পায়নি, কারণ ফাইলটি ডেটা প্রথম রান করার পরে ওএস দ্বারা ক্যাশে হয়ে যায়।
রিকএনজেড

ভাগ করে নেওয়ার জন্য ধন্যবাদ! উইন্ডোজ '' অফ-অফ-বক্স 'দৃশ্যের তুলনায় শক্ত ফ্যাক্টর 10 উন্নতি সত্ত্বেও, এটি এখনও লিনাক্স / এক্সট 4 এর চেয়ে খারাপ 10 গুণক।
বি 7 কিচ

আমি ভেবেছিলাম ওপির মূল বিষয়টি উইন্ডোজ পারফরম্যান্সের উন্নতি করতে হবে, তাই না? এছাড়াও, আমি উপরে পোস্ট হিসাবে, "dir / s" প্রায় এক সেকেন্ডে চলে।
রিকএনজেড

3

নমকে পরিবর্তে জম ব্যবহার করার চেষ্টা করুন

এটি এখানে পান: https://github.com/qt-labs/jom

আসল বিষয়টি হ'ল যে নমেকা আপনার কোরগুলির মধ্যে একটি ব্যবহার করছে, জম এমন একটি ক্লোম নামক যা মাল্টিকোর প্রসেসরের ব্যবহার করে।

জিএনইউ যে-জে বিকল্পটি বাইরের বাইরে বাক্সটিকে ধন্যবাদ জানায়, এটি মাইক্রোসফ্টের এনএমকে বনাম তার গতির কারণ হতে পারে।

jom বিভিন্ন প্রসেসর / কোরগুলিতে সমান্তরাল বিভিন্ন মেক কমান্ড সম্পাদন করে কাজ করে। নিজেকে একটি পার্থক্য বোধ চেষ্টা করুন!


1

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

আমার বড় মাথা ব্যথা হওয়ার আগে কারণ সমান্তরালে আমি ভিপিএন সংযোগ খোলার সময় বিল্ডের গতি 10 বা তার বেশি ফ্যাক্টর দ্বারা হ্রাস পেয়েছিল। এক্ষেত্রে এই সমস্ত ডিএনএস লুকআপ ভিপিএন দিয়ে গেছে।

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


0

আমি সম্প্রতি উইন্ডোজে উইন-ব্যাশ থেকে সংস্করণটির সাথে মিংডাবু ব্যাশ.এক্সই প্রতিস্থাপন করে উইন্ডোতে প্রায় 10% দ্বারা উইন্ডোতে সংকলনটি দ্রুততর করার অন্য কোনও উপায়ে সংরক্ষণ করতে পারি

(উইন-ব্যাশ ইন্টারেক্টিভ সম্পাদনা সম্পর্কে খুব স্বাচ্ছন্দ্য্য নয়))

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