كيفية تحسين تجميع تطبيق 32 بت في Visual C++ 2005 على نظام التشغيل windows 64 بت 2008

StackOverflow https://stackoverflow.com/questions/102377

سؤال

لقد قمت للتو بتثبيت خادم بناء مع Windows Server 2008 64 بت للتكامل المستمر.

كان سبب اختياري لخادم 64 بت هو أن يكون لدي أكثر من 3 جيجابايت من ذاكرة الوصول العشوائي.كنت آمل أن يوفر هذا الجهاز تصميمات سريعة للغاية.

لسوء الحظ، فإن النتيجة تفتقر إلى حد كبير على أقل تقدير.يوفر سطح المكتب الخاص بي تصميمات أسرع من هذا الخادم المجهز بمعالج Xeon رباعي النواة و15 ألف دورة في الدقيقة SAS و8 جيجا من ذاكرة الوصول العشوائي.

نحن نستخدم Visual C++ 2005 لتجميع تطبيقنا 32 بت مع Cygwin.

هل يمكن أن يكون محاكي WOW64 هو عنق الزجاجة الذي يبطئ عملية الإنشاء؟

أي مؤشرات، تعليقات سيكون موضع تقدير كبير.

يعتبر،

هل كانت مفيدة؟

المحلول

نستخدم Visual C ++ 2005 لتجميع تطبيقنا 32 بت مع Cygwin.

أعتقد أن هذه هي المشكلة.أنا أحب Cygwin كثيرًا، لكنه كذلك حقًا بطيء عندما يتعلق الأمر بملف الإدخال/الإخراج.من المفيد قليلاً إلغاء تنشيط ميزة نظام ملفات NTFS لتتبع آخر وصول إلى الملف.

للحصول على زيادة سرعة أفضل، قم بمنفذ برنامج build-script/makefile الخاص بك لاستخدام shell Command الأصلي إذا كان ذلك ممكنًا واستدعاء cygwin-tools فقط إذا لم يكن هناك بديل متاح حقًا.

إذا كنت تستخدم برنامج التحويل البرمجي gcc، فجرب إصدار mingw.هذا هو أسرع بكثير.

نصائح أخرى

WOW64 ليس محاكيًا على x64.يقوم المعالج أصلاً بتنفيذ كود 32 بت x86.في الجزء السفلي من مكدس وضع المستخدم، تحت kernel32 وآخرون, ، هي ملفات DLL التي تقوم بتعيين مكالمات النظام إلى واجهة الاتصال 64 بت.

يرى تفاصيل تنفيذ WOW64.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top