هذا هو مصدر الأوامر الذي يمكن تشغيله في مزود الاستضافة المجانية OnWorks باستخدام إحدى محطات العمل المجانية المتعددة عبر الإنترنت مثل Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت
برنامج:
اسم
الاعتماد - مخفض برنامج C و C ++
الوصف
الاعتماد 2.5.0 (غير معروف) -- مخفض برنامج C و C ++
C-Reduce يتطلب "اختبار الاهتمام" وملف واحد أو أكثر لتقليله ، وهو ما يجب أن يكون كذلك
قابل للكتابة. اختبار المثير للاهتمام هو برنامج قابل للتنفيذ (عادة ما يكون برنامج شل النصي)
إرجاع 0 عندما يكون الملف المصغر جزئيًا مثيرًا للاهتمام (مرشح لمزيد من التخفيض)
ويعيد قيمة غير صفرية عندما يكون الملف المصغر جزئيًا غير مثير للاهتمام (ليس مرشحًا لـ
مزيد من الخفض -- يتم تجاهل جميع الملفات غير المهمة).
يقوم C-Reduce بتشغيل اختبار الاهتمام في دليل مؤقت جديد يحتوي فقط على الامتداد
ملف (ملفات) مخفض جزئيًا. وهكذا ، عندما يفحص اختبار الاهتمام بشكل جزئي
ملف مخفض ، يجب أن يقوم بذلك باستخدام مسار نسبي إلى دليل العمل الحالي. على ال
من ناحية أخرى ، عندما يشير اختبار الاهتمام إلى أي ملف لم يتم تصغيره ،
يجب أن يتم ذلك باستخدام مسار مطلق.
يجب ألا يتوقع اختبار الاهتمام أي وسيطات سطر أوامر. يجب أن يكون
حتمية وقد ترغب في فرض حدود الموارد على الأوامر الفرعية التي تستدعيها
(على سبيل المثال استخدام ulimit). على وجه الخصوص ، من المعروف أن C-Reduce يقدم أحيانًا لانهائيًا
حلقة في البرنامج يتم تقليله. لذلك ، إذا تم تشغيل اختبار الاهتمام
برنامج مترجمة ، ربما ينبغي أن تفعل ذلك في ظل انقضاء المهلة.
كمثال سريع ، إذا كنت تعتبر أحد الملفات مثيرًا للاهتمام إذا تم إطلاق برنامج Vectorizer الخاص بدول مجلس التعاون الخليجي
أثناء تجميعها ، يمكنك استخدام اختبار الاهتمام هذا:
دول مجلس التعاون الخليجي -w -O3 foo.c -S && grep xmm foo.s
لمعرفة ما إذا كان اختبار الاهتمام الخاص بك يعمل ، حاول تشغيل هذه الأوامر:
DIR = `mktemp -d`cp file_to_reduce [اختياريًا ، المزيد من الملفات لتقليل] $ DIR cd $ DIR
/ path / to / interestedness_test صدى دولار؟
يجب أن ينتج عن هذا صدى "0" للجهاز. إذا لم يحدث هذا ، فإن
اختبار الإثارة معيب ولن يتمكن C-Reduce من الاستفادة منه.
إذا لم تكن قد كتبت اختبارًا مثيرًا للاهتمام من قبل ، فيرجى الرجوع إلى هذا البرنامج التعليمي لـ
إرشادات إضافية:
https://embed.cs.utah.edu/creduce/using/
إذا كان ذلك ممكنًا ، فقم بتشغيل C-Reduce على كود معالج مسبقًا ، تم إنشاؤه على سبيل المثال باستخدام:
دول مجلس التعاون الخليجي -E -P ملف
إذا لم تتمكن من تقليل الكود المعالج مسبقًا ، فيمكنك إما تقليل الكود غير المعالج فقط
ملف أو إجراء تصغير متعدد الملفات على الملف وتضمينات متعدية (أو
أي مجموعة فرعية منهم). في الحالة الأولى ، تحتاج إلى تعيين CREDUCE_INCLUDE_PATH
متغير البيئة إلى قائمة مفصولة بنقطتين لتضمين الدلائل بالترتيب
clang_delta للعثور عليهم.
إذا كان اختبار الاهتمام الخاص بك يتضمن مترجمًا متقاطعًا وخصائص ملف
الهدف المتقاطع يختلف عن المضيف الذي ستحتاج إليه لتعيين CREDUCE_TARGET_TRIPLE لمطابقة
عبر الهدف. هذا مهم بشكل خاص إذا كنت تعمل باستخدام كود غير معالج مسبقًا
واستخدم CREDUCE_INCLUDE_PATH.
اضغط على "s" في أي وقت للانتقال إلى المسار التالي (يتم تعطيل هذه الميزة ما لم يتم تعطيل Perl
الوحدة النمطية: ReadKey متاح على نظامك).
ملخص of الخيارات:
- إضافة تمرير
أضف التمرير المحدد إلى الجدول
- أيضا مثيرة للاهتمام
رمز إنهاء العملية (في مكان ما في النطاق 64-113 سيكون أمرًا معتادًا) عندما
التي تم إرجاعها بواسطة اختبار الاهتمام ، سيؤدي إلى قيام C-Reduce بحفظ نسخة من ملف
البديل [الافتراضي: -1]
--Debug
طباعة معلومات التصحيح
--die-on-pass-bug
إنهاء C-Reduce إذا واجهت التمريرة مشكلة غير مميتة
- أقصى قدر من التحسين
أكبر تحسن في حجم الملف من عملية تحويل واحدة يجب على C-Reduce
قبول (مفيد فقط لإبطاء C-Reduce down)
--ن
عدد النوى المراد استخدامها ؛ يحاول C-Reduce اختيار إعداد جيد تلقائيًا ولكنه
قد يكون الاختيار منخفضًا جدًا أو مرتفعًا بالنسبة لموقفك [افتراضي: 2]
- لا افتراضي-يمر
ابدأ بجدول مرور فارغ
--لا تستسلم
لا تتخلى عن تمريرة لم تحرز تقدمًا في 50000 تكرار
- نوكيل
انتظر حتى تنتهي المثيلات الموازية من تلقاء نفسها بدلاً من قتلها (فقط
مفيد في التصحيح)
- طباعة فرق
إظهار التغييرات التي تم إجراؤها بواسطة عمليات التحويل ، من أجل التصحيح
--عقم
محاولة إخفاء التفاصيل من الملف المصدر الأصلي
- حفظ مؤقت
لا تحذف / tmp / الائتمان- x الدلائل عند الإنهاء
- شداد
منع الإخراج حول الأخطاء الداخلية غير الفادحة
- تخطي التمريرات الأولية
تخطي التمريرات الأولية (مفيد إذا تم تقليل الإدخال جزئيًا بالفعل)
- تخطي مفتاح الخروج
تعطيل تخطي بقية المرور الحالي عند الضغط على "s"
--سلوووو
حاول بجهد أكبر لتقليلها ، ولكن ربما تستغرق وقتًا طويلاً للقيام بذلك
--مرتب لا تقم بعمل نسخة احتياطية من كل ملف لتقليل حجم الملف
--توقيت
طباعة الطوابع الزمنية حول تقدم التخفيض
الاستخدام: تصديق [الخيارات] الممتعة. اختبار file_to_reduce [اختياريًا ، المزيد من الملفات إلى
يقلل]
اعتراض --مساعدة للمزيد من المعلومات
استخدم الاعتماد عبر الإنترنت باستخدام خدمات onworks.net