مرحبا،
عذرًا إذا كان السؤال سخيفًا ، ولكن ، هل من الممكن إنشاء H2O باستخدام التحسين الموجه للملف الشخصي؟
يعتبر،
PGO هي ميزة مترجم ، ونعم ، يمكنك ذلك.
شكرا لك meritozh على إجابتك.
بأي فرصة ، هل تعرف كيف تفعل ذلك؟
حاولت هذا:
env CXXFLAGS='-march=native -fprofile-dir=/src/h2o/pgo -fprofile-generate=/src/h2o/pgo' cmake -DWITH_MRUBY=on
make
بعد التثبيت ، وإيقاف / بدء تشغيل H2O ، والوصول إلى صفحة ، وإيقاف H2O ، كنت أتوقع كتابة الملفات في المجلد / src / h2o / pgo (لتغذية fprofile-use في البنية التالية). لكن مجلد pgo لا يزال فارغًا.
استخدام CMAKE_C_FLAGS
الأعلام، ج، وليس ج ++. h2o استخدم cmake ، لذلك يجب عليك تعديل _CMakeLists.txt_ ، واستخدام متغيرات cmake المضمنة لتجاوز السلوك الافتراضي. وتذكر ، قم بتنظيف جميع ملفات cmake التي تم إنشاؤها أولاً.
ماذا يقول meritozh . على الرغم من أن IIRC لا تحتاج إلى تعديل CMakeLists.txt. يرث CMakeLists.txt لـ H2O متغير البيئة CMAKE_C_FLAGS
عند تعيينه (راجع https://github.com/h2o/h2o/blob/master/CMakeLists.txt#L206).
شكرا لك meritozh و @ kazuho !
التعليق الأكثر فائدة
استخدام
CMAKE_C_FLAGS
الأعلام، ج، وليس ج ++. h2o استخدم cmake ، لذلك يجب عليك تعديل _CMakeLists.txt_ ، واستخدام متغيرات cmake المضمنة لتجاوز السلوك الافتراضي. وتذكر ، قم بتنظيف جميع ملفات cmake التي تم إنشاؤها أولاً.