abshammeri

Google تنشر مقارنة بين C++ , Java , Go و Scala

28 ردود في هذا الموضوع

نشرت جوجل قبل فترة قليلة من تاريخ هذه المشاركة ، مقارنة ملفتة للنظر بين ++C و Java و GO و Scala . المقارنة تناولت جوانب عديدة ، بدايةً من توفير بيئة اختبار عادلة مروراً بعمل مقارنات على أمور كثيرة من عدد سطور الكود حتى مستوى آداء التطبيق وقت التنفيذ . قرأت الورقة التي نشرت بهذا الخصوص ( قراءة سريعة ) ، و هذه أهم الأمور التي يمكن أن ألاحظها :

  • تم استخدام خصائص مشتركة بين لغات البرمجة المذكورة مثل : المصفوفات - الحلقات التكرارية - هياكل البيانات - الكائنات - الخ .. ولم يتم استخدام مزايات تخص لغات معينة مثل : Multithreading أو Parallel Programming .
  • في ++C مثلاً تم استخدام Containers المعروفة مثل std::vector و std::map أما في الجافا ، فأيضاً تم استخدام Collections المعروفة مثل List و Map ، مع الاستفادة من Generic ، وهكذا مع Scala و GO .
  • يبدو أنهم استخدموا خورازميات ما ، لعمل تلك المقارنة ، تم كتابة تلك الخوارزميات بنفس الطريقة تقريباً . حتى التعليقات و عدد السطور ، حاول الفريق أن تكون متطابقة بين كل اللغات المذكورة ، و استخدموا Coding style الخاص بكل لغة ، ( أو شيء متعارف عليه عموماً ) ..
  • هناك نسخ محسّنة من الأكواد ، قد تجدها تنتهي بـ pro ، هذه حسنها مهندسوا Google ، ويبدو أنها أضيفت إلى النتائج ، ولا أظن أن الكود المصدري متوافر ، لأن Google تغلق مصدر بعض الأكواد !
النتائج
  • عدد سطور الكود في كل لغة ( حجم الكود ) :

post-42837-039816800 1307738240_thumb.pn

  • حجم الملف التفيذي أو حجم ملف Jar الناتج :

post-42837-008007500 1307738252_thumb.pn

  • وقت الترجمة لتحويل الملف إلى ملف تنفيذي - ( في حالة Jar ، وقت تحويل الكود إلى byte codes ) :

post-42837-032835000 1307738269_thumb.pn

  • الحجم المستهلك في الذاكرة :

post-42837-045456100 1307738284_thumb.pn

  • آداء التطبيق وقت التشغيل :

post-42837-094997500 1307738297_thumb.pn

- الوثيقة ، فيها تفاصيل أكثر ، تجدها كرابط في هذا الموقع :

http://www.readwrite...e-benchmark.php

- أو يمكن تحميلها من المرفقات :

ws3-1-Hundt.zip

- الأكواد المستخدمة ، طبعاً لن تجد cpp_pro ، لأنها مغلقة المصدر من Google

http://code.google.c...language-bench/

9

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

هناك شيء لم يدخل عقلي في هذه المقارنة:

وقت الترجمة لتحويل الملف إلى ملف تنفيذي - ( في حالة Jar ، وقت تحويل الكود إلى byte codes ) :

كيف تكون ترجمة الكود بعمليات الـ optimization أسرع من حالة إنتاج ملف للتنقيح؟!

حسب تجربتي إنتاج ملف تنفيذي للتنقيح يأخذ وقت أقصر إلى النصف تقريباً منه في حالة إنتاج ملف تنفيذي optimized.

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

بفضل هذا الموضوع قرات الورقة كتبها Robert Hundt (هوه الكاتب الوحيد للورقة) ولم اجده يذكر اسم تطبيق اللغة

وكأن المقارنة بين "اللغة"... مع ان "اللغة" لا تقوم بشيء، هي فقط مجرد لغة.. مثلا hiphop تستخدم لغة php لكن تطبيقها مختلفة جدا

وهذا ما انا مستغرب منه جدا.... (اذا حد يعرف مكان تم ذكر فيه اسم التطبيق يخبرني)

حسب فهمي للجداول في هذا الموضوع ن لغة جوجل Go ليست الاسرع وقت التشغيل، وليست الاقل استهلاكا للموارد

وفقط الاسرع وقت الكومبايل... وربما هذا غير مفيد جدا

حتى تطبيقات لغات مثل php (كmod_php) تتجنب الكومبايل كل مرة

لذا على مايبدو ان تطبيق لغة go غير مفيد جدا ولا يستحق هذه البلبلة

خالد

لا توجد غرابة في الموضوع.. الoptimization لا تعني دائما تبطئة الكومبايل

مثلا كومبايلر gcc، هناك optimization level 0 المفعلة افتراضيا والتي تقوم بتسريع وقت الكومبايل

هناك مستويات اخرى s و 1 و 2 و 3 يحتوون على optimization اخرى لامور مثل تصغير حجم البرنامج وتسريعه وقت التشغيل

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

لا اتصور ان مهندسي google سيعتمدون على compiler optimization بل ستتم العملية بأدواتهم الخاصة.

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

فزاري....

اولا: لم ينفي احد ان هناك optimizations اخرى غير تلك المنتشرة في الcompiler

وانا كلامي هو ذكر مثال عن ان هناك optmizations تزيد سرعة الكومبايل.. وهذا لا ينفي الطرق الاخرى

ثانيا: لماذا تستبعد ان جوجل تستخدم optimization مشهورة ومنتشرة في العديد من الكومبايلرز؟

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

اولا: لم ينفي احد ان هناك optimizations اخرى غير تلك المنتشرة في الcompiler

وانا كلامي هو ذكر مثال عن ان هناك optmizations تزيد سرعة الكومبايل.. وهذا لا ينفي الطرق الاخرى

وجهة نظرك واضحة وانا كان تعليقي بشكل عام وليس على ما تفضلت به اخي الكريم.

ثانيا: لماذا تستبعد ان جوجل تستخدم optimization مشهورة ومنتشرة في العديد من الكومبايلرز؟

معلوماتي ضبابية حول الموضوع صراحة اخي password123 وبالتالي لا استطيع ان استبعد ولا حتى استقرب ... قبل فترة اتذكر انه اخذتني الحمية وقررت ان اتعمق قليلا في الموضوع وجمعت بعض المصادر على النت ولكني صدمت من حجم المعلومات التي يجب ان تتعلمها فحتى على مستوى memory copies تختلف الامور من chip الى chip وبعد نصف يوم من القراءة كرهت الموضوع بالكامل وحلفت من يومها يمين ان لا ادخل في هذا الـ taboo مرة اخرى. المهم ما اتذكره اني قرأت ان اول شيء يجب القيام به هوا ازالة اي built-in optimization من الاداة التي تستخدمها حتى لا تتعارض مع manual optimization الذي تقوم به.

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

ليست جميع الoptimization تتضارب

والoptimizations تعتمد كثيرا على التطبيق نفسه

مثلا هناك حالات عندما تضيف O3 يصبح البرنامج ابطا.. وحالات يصبح اسرع

المسالة واسعة جدا ولا يجب الجزم ان جوجل لا تستخدم optimization مشهورة وتكتفي باختراع optimization خاصة بها لان هذا كلام غير علمي

اذا لديك مصدر ان جوجل فعلا تتجنب جميع الoptimization حينها ممكن... لكن بصفة "عامة" لا يوجد قانون "عام"

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

ليست جميع الoptimization تتضارب.

صحيح و باستخدام predicate logic هذا يعني ان بعض ال optimization تتضارب وبالتالي ولأجل هذه البعض (التي لم تنكرها انت) قد تحتاج الى الغاء built-in optimization.

والoptimizations تعتمد كثيرا على التطبيق نفسه

مثلا هناك حالات عندما تضيف O3 يصبح البرنامج ابطا.. وحالات يصبح اسرع.

كلام جميل.

المسالة واسعة جدا ولا يجب الجزم ان جوجل لا تستخدم optimization مشهورة وتكتفي باختراع optimization خاصة بها لان هذا كلام غير علمي

اذا لديك مصدر ان جوجل فعلا تتجنب جميع الoptimization حينها ممكن... لكن بصفة "عامة" لا يوجد قانون "عام"

هل حددت google الـ optimizations التي استخدمتها ؟؟؟؟ حسب علمي لم تحدد.

هل حددت google الـ compilers التي استخدمتها ؟؟؟ حسب علمي لم تحدد.

هل نشرت google الكود الذي اعتمدته ؟؟؟؟ حسب علمي لم تحدد.

بالتالي لا احد يستطيع يجزم ... والمصدر الوحيد هي google (مغلقة المصدر).

و بعدين لا تلزمني بكلام لم اقله فانا لم اجزم وهذا نص تعليقي:

لا اتصور ان مهندسي google سيعتمدون على compiler optimization بل ستتم العملية بأدواتهم الخاصة.

من اين اتيت بالجزم هنا ؟؟؟ انت تميز بين الفعل "تصور" و "تخيل" و "توقع" من الحدس وبين الفعل "جزم" ؟؟؟؟ الرجاء قراءة التعليقات بتمعن قبل الرد والرجاء لا تقولني ما لم اقله.

يا سيدي تصورت او اعتقدت وان كان هالاعتقاد ازعجك لهذه الدرجة فانا اتراجع وامام الجميع اعلنها توبه واسحب تعليقي.

تم تعديل بواسطه فزاري
-1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

JDurrah

الخلاصة حسب الconclusion في الورقة من google ان الاسرع هو cpp بوضوح

وان go غير ناضجة حتى الآن لكنها الفائز في سرعة الكومبايل فقط

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

يا سيدي تصورت او اعتقدت وان كان هالاعتقاد ازعجك لهذه الدرجة فانا اتراجع وامام الجميع اعلنها توبه واسحب تعليقي.

يا أخي مرة أخرى أنت تأخذ الأمور بشخصية. قلنا لك من قبل نحن لا نهاجمك أنت، نهاجم فقط ما قلت. لا تحول مل كان نقاشاً علمياً إلى مشادة كلامية.

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

عندما تقوم google بعمل optimization لـ code ولا تنشره فهذا يعني ان التقنيات التي استخدمها المهندسون على درجة عالية من الحرفية (قد تكون خاصة بهم) وتستحق بسبب ذلك اخفائها لأنها قد تكشف مثلا بعض التقنيات التي تستخدمها google نفسها في الخدمات التي توفرها... يعني استنتاج بريء ومنطقي لم اقطع به ولم اجزم ... وقد اوضحت وجهة نظري للأخ password123 وانتهى الموضوع عليه.

يا أخي مرة أخرى أنت تأخذ الأمور بشخصية. قلنا لك من قبل نحن لا نهاجمك أنت، نهاجم فقط ما قلت. لا تحول مل كان نقاشاً علمياً إلى مشادة كلامية.

بعد التحية والاحترام للجميع ... اخ System Down النقاش بيني وبين password123 انتهى فلا تحاول اعادة فتح الموضوع و التركيز على النقاط السلبية (التي تجاهلها الشخص المعني) ... قد اكون اخطأت في نقاشي مع الاخ password123 والرجل لم يرد (ربما حتى لا يتحول التقاش إلى مشادة كلامية) ... ان كان لديك شيء لتضيفه حول موضوع النقاش فاهلا وسهلا ورجاء حاول ان لا تتحدث بصيغة الجمع "نحن" فانت لا تمثل الا نفسك.

-2

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

فزاري... انا حاولت اتجاهل كلامك الغير منطقي ربمى يتنسي، لكن مازلت تكرره من اول وجديد.

استنتاجك "البريء" خاطئ. وعندما اقول انه خاطئ، يجب ان لا تبكي كما في ردك السابق.. وكونه "بريء" لا يجعله معصوما من الخطا

كما ان الرد عليك ليس "ظلما" حتى تقول ان ردك "بريء"..... انت عايش في عالم آخر، ولذا تتنرفز من النقد

تقول انك "لا" تتصور ان جوجل تستخدم compiler built-in optimization.. والدليل؟ ان السورس كود مغلق وان مهندسوا جوجل محترفين.... :huh: ماعلاقة هذا بهذا

ستقول: ربما وربما وربما.... لكن انت هكذا تقوم بassumptions كبيرة جدا مع error margin كبيرة لدرجة ان كلامك يساوي ولا شيء (وكأنك لم تقل شيئا)

لهذا السبب سالتك اذا لديك ادلة.. وهدفي كان ان تقوم بالتفكير تلقائيا وتكتشف شيئا... لكن يبدو انك اكتشفت شيء آخر: عش عصفور

بالنسبة انك لم تجزم.. فانت قاعد تلعب على حبل "لغوي"... حسب قوانين اللغة انت جزمت.. "لا" من حروف الجزم.

لذا انت جزمت انك لا تتصور ان جوجل تستخدم كذا وكذا.... وانا قلت لك لا تجزم... مالمشكلة، لماذا البكاء

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

فزاري... انا حاولت اتجاهل كلامك الغير منطقي ربمى يتنسي، لكن مازلت تكرره من اول وجديد.

استنتاجك "البريء" خاطئ. وعندما اقول انه خاطئ، يجب ان لا تبكي كما في ردك السابق.. وكونه "بريء" لا يجعله معصوما من الخطا

كما ان الرد عليك ليس "ظلما" حتى تقول ان ردك "بريء"..... انت عايش في عالم آخر، ولذا تتنرفز من النقد

تقول انك "لا" تتصور ان جوجل تستخدم compiler built-in optimization.. والدليل؟ ان السورس كود مغلق وان مهندسوا جوجل محترفين.... :huh: ماعلاقة هذا بهذا

ستقول: ربما وربما وربما.... لكن انت هكذا تقوم بassumptions كبيرة جدا مع error margin كبيرة لدرجة ان كلامك يساوي ولا شيء (وكأنك لم تقل شيئا)

لهذا السبب سالتك اذا لديك ادلة.. وهدفي كان ان تقوم بالتفكير تلقائيا وتكتشف شيئا... لكن يبدو انك اكتشفت شيء آخر: عش عصفور

بالنسبة انك لم تجزم.. فانت قاعد تلعب على حبل "لغوي"... حسب قوانين اللغة انت جزمت.. "لا" من حروف الجزم.

لذا انت جزمت انك لا تتصور ان جوجل تستخدم كذا وكذا.... وانا قلت لك لا تجزم... مالمشكلة، لماذا البكاء

مازلت عند وجهة نظري أن google استخدمت optimization خاصة بها وليس compiler built-in optimization ... إذا كان لديك دليل على عكس ذلك فتفضل قدمه ونحن بانتظارك و بعدين يا أخي هذا رأيي وأنا حر فيه. انت ليش منرفز هدي اعصابك.

فقط اتمنى عليك في المرات القادمة و قبل ما ترد علي أنا خصوصا تقرأ ردي بشكل صحيح ولا تلزمني بما لم اقل ...

بالنسبة لبقية ردك فهوا وعلى حد تعبيرك يساوي ولا شيء (وكأنك لم تقل شيئا).

اخيرا اعتذر لصاحب الموضوع الشمري

تم تعديل بواسطه فزاري
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

طبعا لم تقرأ الورقة من جوجل، الروابط في موضوع الشمري:

ستجد انهم قاموا بoptimize لتطبيقات الجافا بواسطة تعديلات جاهزة: -XX:+UseCompressedOop‎ و -XX:+CycleTime الذي ادى لتحسين (تقليل) سرعة التشغيل

وهذه طبعا ليست تطبيقات اضافية من جوجل... منطقي... طبيعي انهم سيستخدمون الطرف المتوفرة اذا امكن. لكن يبدو ان عقلك * مازال مستغرب

المشكلة ليست انني لا اقرأ كلامك بشكل صحيح... كما ان المشكلة ليست انك لا تكتب بشكل صحيح.... المشكلة ان تفكيرك من الاساس غير صحيح (المنبع)

* البينة على من ادعى: انت من ادعيت ان جوجل لا تستخدم كذا وكذا، والمفروض ان تأتي انت بالدليل وليس العكس (لكن بالرغم من هذا جبتلك واحدة)

* عندما طلب منك الدليل، زعلت وبكيت

* عندما قالولك لا تزعل، قلت لاء ده هو الي متنرفز مش انا

* وبعدها تعتذر من صاحب الموضوع عندما تشعر انك ملأت الموضوع بكلامك *

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

طبعا لم تقرأ الورقة من جوجل، الروابط في موضوع الشمري:

ستجد انهم قاموا بoptimize لتطبيقات الجافا بواسطة تعديلات جاهزة: -XX:+UseCompressedOop‎ و -XX:+CycleTime الذي ادى لتحسين (تقليل) سرعة التشغيل

وهذه طبعا ليست تطبيقات اضافية من جوجل... منطقي... طبيعي انهم سيستخدمون الطرف المتوفرة اذا امكن. لكن يبدو ان عقلك الصغير مازال مستغرب

قرأت الورقة ومن البارحة وقبل ان ارد وليس مثلك ... لم اكن اتحدث عن جافا بل عن كود سي بلص بلص فهوا المهم و يمكنك استنتاج ذلك من كل ردودي ... طبعا انت قرأت الورقة متأخر ولأنك لم تجد اي ذكر لكومبايلر بل ان كل optimization الذي تم تم على مستوى اللغة وباستخدام structures خاصة بشركة google ولذلك لم ينشر الكود بناء على ذلك (لا تضطرني الى نسخ ماورد في ورقة الشمري هنا) ... طبعا بسبب السابق ها انت تقوم بالهروب الكبير بطريقة اقل ما اقول عنها انها لا تليق بشخص مثلك ... اتحداك ان يكون في الورقة مايدل على وجود اي built-in compiler optimization لكود السي بلص بلص (موضوع النقاش) بل المعلومات الواردة في C++ tuning تثبت كلامي لا كلامك.

المشكلة ليست انني لا اقرأ كلامك بشكل صحيح... كما ان المشكلة ليست انك لا تكتب بشكل صحيح.... المشكلة ان تفكيرك من الاساس غير صحيح (المنبع)

* البينة على من ادعى: انت من ادعيت ان جوجل لا تستخدم كذا وكذا، والمفروض ان تأتي انت بالدليل وليس العكس (لكن بالرغم من هذا جبتلك واحدة)

* عندما طلب منك الدليل، زعلت وبكيت

* عندما قالولك لا تزعل، قلت لاء ده هو الي متنرفز مش انا

* وبعدها تعتذر من صاحب الموضوع عندما تشعر انك ملأت الموضوع بكلامك الفارغ

الصراخ على قدر الألم.

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

حديثك كله كان عن compiler optimization ولم تحدد اللغة

وحتى لو ضيقت الدائرة على cpp فالفكرة هي نفسها: لامانع ان جوجل تستخدم optimization جاهزة (بديهي - لكن حضرتك معترض ولاتملك دليل)

بالنسبة للcpp طبعا لم يذكروا اي معلومات مفيدة حول التطبيق... لم ينكر احد هذا

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

حديثك كله كان عن compiler optimization ولم تحدد اللغة

وحتى لو ضيقت الدائرة على cpp فالفكرة هي نفسها: لامانع ان جوجل تستخدم optimization جاهزة (بديهي - لكن حضرتك معترض ولاتملك دليل)

بالنسبة للcpp طبعا لم يذكروا اي معلومات مفيدة حول التطبيق... لم ينكر احد هذا

اولا : من باب العشم في كرمك ولطفك ارجوك لا تصف اي شخص في المنتدى بان عقله صغير (والله عيب وان ماتقبلها على نفسك) وحتى لو كان تعليقي غلط فارجوك لا تصف كلامي بالفارغ يعني يا اخي طنشني ازبلني لا تعبرني ولكن ان تسفه رأيي بهذه الطريقة فهذا والله عيب.

ثانيا: هذا ما ورد في وثيقة الشمري جزاه خيرا

Doug Rhode created a greatly improved version, which improved performance by 3x to 5x. This version will be kept in the havlak_cpp_pro directory. At the time of this writing, the code was heavily dependent on several Google internal data structures and could not be open sourced.

اذن optimization الذي ادى الا زيادة الفعالية بمقدار 3 الى خمس اضعاف تم من خلال internal data structures خاصة بشركة google وبناء عليه وحفاظا على هذه التقنيات فلن تقوم google بنشر الكود.

الأن والسؤال هذا غير موجه لك ... وليجب اي شخص منصف .... الا يدل ذلك النص على ان optimization الذي تم استخدم تقنيات خاصة بشركة google ؟؟؟

اخيرا اتحسب انه google و facebook وغيرها من عمالقة التقنية تستخدم ادوات جاهزة معلبة كالتالي تستخدمها انت وانا ... هل تظن ان نسخة web server التي تستخدمها google هي نفسها التي تستخدمها انت وتقوم google بتحميلها من موقع اباتشي :lol: ... لا يا عيني لا يا حبيبي لديهم مهندسين يقومون بعمل optimization للكود ليعمل بافضل مستوى ممكن على الهاردوير المتوفر.

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
الأن والسؤال هذا غير موجه لك ... وليجب اي شخص منصف .... الا يدل ذلك النص على ان optimization الذي تم استخدم تقنيات خاصة بشركة google ؟؟؟
نعم يدل على ذلك (لم ينفي احد هذا)

والسؤال الموجه إليك: هل كون جوجل تقوم بإنتاج تقنيات optimization جديدة دليل على ان جوجل "لا" تستخدم تقنيات optimization جاهزة (المعلبات على حد تعبيرك)؟

لم ينف احد اضافة جوجل لتقنيات جديدة من عندها. الذي يحصل ان جوجل:

* تضيف جديد من عندها.

* تستخدم ماهو موجود.

لكن المشكلة انك تستبعد ان جوجل تستخدم ماهو موجود. وهذا هو خطأك الذي اقوله لك منذ البداية، والذي لا تملك عليه اي دليل.

هل تظن ان نسخة web server التي تستخدمها google هي نفسها التي تستخدمها انت وتقوم google بتحميلها من موقع اباتشي :D ... لا يا عيني لا يا حبيبي لديهم مهندسين يقومون بعمل optimization للكود ليعمل بافضل مستوى ممكن على الهاردوير المتوفر.
هذا ليس دليلا ان جوجل "لا" تستخدم تقنيات جاهزة.. بالعكس، هذا دليل ان جوجل تستخدم الاثنين: تقنيات جاهزة + تضيف من عندها. يكفي انها تستخدم اللينكس وتطور عليه (فهي تستخدم الجيد وتعدل ماهو ليس بجيد)
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

- معلش ، لكن لا أرى فائدة من الحديث عن أدوات و طرق " لا نعلمها " تسخدمها Google ، ونترك لب الدراسة التي قامت بها Google ، يعني لماذا نتشاجر حول شيء لا نعرف عنه شيء ؟

- لم أفهم فائدة عمود Factor في بعض الجداول ، ماهو المقصود به ؟

- أثبتت الدراسة أن C++ الأسرع تقريباً .. وبالتالي المفترض الآن هو استخدام خط آخر لتسريع الكود مثل البرمجة المتوازية و المهام المتعددة .. الخ .. مثل الخط الذي انتهجته Intel في معالجاتها .. توقفت عند سرعة معينة ، ولجأت إلى Multicore ..مع فارق التشبيه ، يعني مجالين مختلفين تقريباً ..

@ password : كون العضو قال معلومة خاطئة أو صحيحة .. لا يعني هذا أن تهاجمه بهذه الطريقة وكأنه ارتكب كبيرة ! كلنا جاهلون في أمور معينة و كلنا نتعلم و كلنا نخمن و نحاول و نتفلسف أحياناً ! هل إذا تفلسفت وقلت شيئاً خاطئاً عن حسن نية ستهاجمني بهذه الطريقة أيضاً ، لا أعرف لماذا تبدو أحياناً شاب وديع ، وأحياناً أخرى رجل شرير . :-) !

5

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

factor = نسبة لأداء الافضل.. يعني الاسرع كان cpp وحصل على 1، و go حصل 7 في بعض التجارب، يعني 7 مرات ابطاء من cpp

"لا أعرف لماذا تبدو أحياناً شاب وديع ، وأحياناً أخرى رجل شرير . :-) ! " ربما يسمى split-personality :-D... يعتمد على الشخص الذي اتعامل معه...

انا لا احب الtrolls الذين ينشرون كلام خاطئ وثم ياخذهم الغرور

في رايي نشر معلومات خاطئة "تقنية" وثم الاصرار عليها كبيرة من الكبائر... هذه هي الحالات التي اتحول فيها إلى "رجل شرير"

تم تعديل بواسطه password123
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
factor = نسبة لأداء الافضل.. يعني الاسرع كان cpp وحصل على 1، و go حصل 7 في بعض التجارب، يعني 7 مرات ابطاء من cpp

اه .. واضح الآن ، هم يختارون أفضل نتيجة ويقارنوها بالباقي ..

أيضاً هناك ملاحظة ، سمعت كثيراً أن std::vector بطيئة ، وبشكل خاص مع default allocator .. لكن مقارنة بآداءها ( وآداء STL بشكل عام ) مع المقابل لها في اللغات الأخرى يبدو جداً رائع . وهذا دليل أننا لا نحتاج لكتابة allocator أفضل مما هو موجود في STL و الحمدلله :D .

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

نعم يدل على ذلك (لم ينفي احد هذا)

اذن دليلي على ان google استخدمت تقنيات خاصة بها في عمل optimizations هوا المصدر الذي اورده الاخ الشمري. وانت تقر بهذا الدليل ... صح ؟؟؟

والسؤال الموجه إليك: هل كون جوجل تقوم بإنتاج تقنيات optimization جديدة دليل على ان جوجل "لا" تستخدم تقنيات optimization جاهزة (المعلبات على حد تعبيرك)؟

حديثنا لم يكن عن كون google تستخدم تقنيات optimization جاهزة من عدمه ... حديثنا كان عن كون optimizations التي استخدمتها google كانت خاصة بها (كما تصورت انا) ام لم تكن كما ادعيت انت وقد طلبت الدليل والدليل قدمته لك من google نفسها ومن الورقة التي ادعيت قرائتها ... وانت اقريت بهذا.

بالنسبة لسؤالك فلا اجد مانع يمنع google من استخدام تقنيات optimization الجاهزة ... ولكن لم يرد في ورقة google مايدل على ذلك.

لم ينف احد اضافة جوجل لتقنيات جديدة من عندها. الذي يحصل ان جوجل:

* تضيف جديد من عندها.

* تستخدم ماهو موجود.

لكن المشكلة انك تستبعد ان جوجل تستخدم ماهو موجود. وهذا هو خطأك الذي اقوله لك منذ البداية، والذي لا تملك عليه اي دليل.

اعطيني دليل ان جوجل استخدمت built-in compiler optimizations على كود سي بلص بلص ... طبعا لا يوجد.

المحصلة كلامي كان علمي وبدليل .... انتهى.

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

كيف تكون ترجمة الكود بعمليات الـ optimization أسرع من حالة إنتاج ملف للتنقيح؟!

حسب تجربتي إنتاج ملف تنفيذي للتنقيح يأخذ وقت أقصر إلى النصف تقريباً منه في حالة إنتاج ملف تنفيذي optimized.

قد يكون السبب انه فى حالة ال Debug تكون المساحة للملف التنفيذى اكبر وبالتالى يتم استعمال قرص التخزين Harddisk بشكل اكبر (وقت اكثر)

وسرعة عمل الـ Harddisk مقارنة بال Memory و Registers اقل بكثير ومن هنا ياتى البطء المتوقع مقارنة بحجم اقل واستعمال اقل لل harddisk

على حساب استعمال اكثر للـ Memory وال Processor لعمل المعالجة المطلوبة فى ال Optimization

والله الموفق

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
كيف تكون ترجمة الكود بعمليات الـ optimization أسرع من حالة إنتاج ملف للتنقيح؟!

حسب تجربتي إنتاج ملف تنفيذي للتنقيح يأخذ وقت أقصر إلى النصف تقريباً منه في حالة إنتاج ملف تنفيذي optimized.

ربما ربما لأن optimization المطبقة هي manual وليست built-in وبالتالي المترجم لا يقوم اصلا بعمل optimization.

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .