1 पॉइंट द्वारा GN⁺ 2023-12-30 | 1 टिप्पणियां | WhatsApp पर शेयर करें

M3 MacBook अपग्रेड की वैल्यू क्या है?

  • यह जानने के लिए कि M1/M2 chip से M3 पर डेवलपर मशीन को अपग्रेड करना वाकई फायदेमंद है या नहीं.
  • डेवलपर productivity को मात्रात्मक रूप से मापना कठिन है.
  • तेज feedback loop डेवलपर की efficiency बढ़ाते हैं.

Build telemetry संग्रह

  • डेवलपर laptop पर build telemetry ट्रैक करने के लिए Go hot reloader का उपयोग.
  • system-level, runtime metrics और build telemetry आदि को ट्रैक करने के लिए अपना build tool विकसित किया गया.
  • telemetry events को data warehouse में भेजा गया.

डेटा विश्लेषण

  • high-quality data तैयार करने और पर्याप्त dataset बनाने के बाद analysis शुरू किया गया.
  • build time हर system में अलग हो सकता है, इसलिए simple average की तुलना संभव नहीं है.
  • डेटा विश्लेषण के लिए OpenAI के नए code interpreter का उपयोग.

OpenAI assistant बनाना

  • डेटा को CSV में export करके OpenAI assistant को analysis के लिए दिया गया.
  • डेटा विश्लेषण के लिए gpt-4-1106-preview model का उपयोग.

डेटा शुद्धिकरण (power source, cancellation आदि)

  • असफल या cancel किए गए builds को बाहर रखा गया.
  • battery power पर चलने वाले builds में performance गिर सकती है, इसलिए केवल AC power पर चलने वाले builds को शामिल किया गया.

सभी builds एक जैसे नहीं होते

  • Go project कई तरह के 'package' से बने होते हैं, और compiler केवल बदलाव होने पर ही दोबारा compile करता है.
  • build time को तुरंत (<3 सेकंड), तेज (<30 सेकंड), मध्यम (30 सेकंड-1 मिनट), और धीमा (1 मिनट+) के रूप में वर्गीकृत किया गया.

M1 और M2 की तुलना

  • AC power और सफल build डेटा को शुद्ध करने के बाद M1 और M2 platform की तुलना की गई.
  • M2 Max, M1 Pro की तुलना में build speed में कहीं अधिक तेज निकला.

M3 के भीतर आंतरिक तुलना

  • M2 Pro 16GB और M2 Max 32GB के build time की तुलना से पता चला कि memory का प्रभाव बहुत बड़ा नहीं है.
  • M3 Pro और M3 Max के बीच performance का अंतर price difference को सही नहीं ठहराता.

M1, M2, M3 की समग्र तुलना

  • M1, M2 और M3 platform के build time की तुलना से पता चला कि M2, M1 के मुकाबले बड़ा सुधार दिखाता है.
  • M3, M2 की तुलना में केवल थोड़ा सुधार दिखाता है.

क्या memory सच में फर्क नहीं डालती?

  • यह सामने आया कि memory का build time पर बड़ा असर नहीं पड़ता.
  • linker time के डेटा analysis से पुष्टि हुई कि memory linking performance को प्रभावित करती है.

M3 MacBook आ रहा है!

  • यह निर्णय लिया गया कि नया Space Black M3 Pro laptop डेवलपर productivity बढ़ाने में मदद करेगा.
  • M1 उपयोगकर्ताओं को 36GB memory वाले M3 Pro पर अपग्रेड किया जाएगा.
  • M2 उपयोगकर्ता फिलहाल upgrade का इंतजार करेंगे क्योंकि मौजूदा performance पहले से अच्छी है.

GN⁺ की राय

  • यह अध्ययन दिखाता है कि डेवलपर build time कम करने से productivity में सीधे सुधार होता है.
  • यह पता चलना दिलचस्प है कि memory build time पर बड़ा असर नहीं डालती, लेकिन linker time पर असर डाल सकती है.
  • OpenAI का उपयोग करके डेटा विश्लेषण करने का तरीका दूसरी कंपनियों और डेवलपर्स के लिए भी उपयोगी उदाहरण हो सकता है.

1 टिप्पणियां

 
GN⁺ 2023-12-30
Hacker News टिप्पणियाँ
  • पहली टिप्पणी का सार:

    • लेख अच्छी तरह लिखा गया है और डेटा संग्रह व विश्लेषण के तरीके विविध हैं।
    • लेकिन लैपटॉप को साथ-साथ रखकर एक ही परिदृश्य में compile time मापना अधिक सरल और सटीक होता।
    • पूरी कंपनी के आँकड़े इकट्ठा करना bias पैदा कर सकता है। उदाहरण के लिए, नए कर्मचारियों और पुराने कर्मचारियों द्वारा इस्तेमाल किए जाने वाले लैपटॉप अलग हो सकते हैं।
    • यह भी बताया गया कि sampling पूरी तरह random और representative नहीं हो सकती।
  • दूसरी टिप्पणी का सार:

    • एक वैज्ञानिक के रूप में, प्रोग्रामर डेटा को कैसे संभालते हैं, इसमें रुचि है।
    • सुंदर graphs बनाए गए और ChatGPT का उपयोग करके विश्लेषण को जल्दी automate किया गया।
    • लेकिन memory और chip type के अनुसार variability होने के बावजूद linear regression का उपयोग नहीं किया गया।
    • histogram बनाए गए, लेकिन उनकी तुलना करना कठिन है। average values और error bars जोड़े जा सकते थे, या cumulative distribution function का उपयोग किया जा सकता था।
  • तीसरी टिप्पणी का सार:

    • डेवलपर productivity बढ़ाने के लिए नए लैपटॉप के बजाय development stack को AWS पर offload करने वाला प्रोजेक्ट चलाने का अनुभव साझा किया गया।
    • यह कई वर्षों तक चलने वाला प्रोजेक्ट था, और अंत में निष्कर्ष निकला कि लैपटॉप upgrade करना बेहतर होता।
  • चौथी टिप्पणी का सार:

    • Chromium और Node.js के पूर्व core contributor, और वर्तमान में gRPC Core/C++ के core contributor।
    • build time को लेकर बहुत अधिक चिंता नहीं करते। महत्वपूर्ण चीज़ें हैं screen size और quality, तथा storage की speed।
    • व्यक्तिगत projects में Bazel का उपयोग करते हैं, और CPU की प्रगति की तुलना में build system का प्रभाव अधिक मानते हैं।
  • पाँचवीं टिप्पणी का सार:

    • iOS development पर किए गए व्यक्तिगत शोध के परिणाम साझा किए गए।
    • M2 Pro और M1 Pro के बीच performance का अंतर बड़ा नहीं है। M3 Pro का स्तर भी M2 Pro के समान है।
    • नतीजतन, इस्तेमाल किया हुआ M1 Pro खरीदा और उससे संतुष्ट हैं। cost-to-performance बहुत अच्छा है।
  • छठी टिप्पणी का सार:

    • डेटा विश्लेषण में AI के उपयोग पर सलाह दी गई।
    • R या Stata जैसे tools का उपयोग अधिक सरल और reproducible है।
    • डेटा को समझना और उसके generation mechanism को जानना, data analysis का सबसे कठिन हिस्सा है।
    • इस पर सवाल उठाया गया कि क्या मौजूदा AI तकनीक वास्तव में यह कर सकती है।
  • सातवीं टिप्पणी का सार:

    • डेवलपर्स का अपने local लैपटॉप पर पूरा environment चला पाना अपने आप में बड़ी उपलब्धि है।
    • टिप्पणी में कहा गया कि किसी कंपनी में पूरे system को एक ही machine पर चलाने का अनुभव दुर्लभ होता है।
  • आठवीं टिप्पणी का सार:

    • लेख के लेखक की ओर से की गई टिप्पणी।
    • Go compile profiling, hot reloader बनाना, और AI का उपयोग करके build dataset का analysis करने जैसी बातें शामिल हैं।
    • निष्कर्ष यह निकाला गया कि M1 से M3 Pro में upgrade करना सार्थक है। M2 और M3 के बीच अंतर बड़ा नहीं है, इसलिए उस upgrade का खास मूल्य नहीं है।
  • नौवीं टिप्पणी का सार:

    • डेटा को CSV में export करने और उद्देश्य समझाने वाले prompt के साथ एक 'assistant' बनाने की प्रक्रिया समझाई गई।
    • यह राय दी गई कि यदि Microsoft इस प्रक्रिया को Excel में integrate कर दे, तो यह बड़ा बदलाव होगा।
  • दसवीं टिप्पणी का सार:

    • M3 Pro, M2 की तुलना में थोड़ा बेहतर प्रदर्शन करता है, और M1 Pro से काफ़ी बेहतर है।
    • M3 की performance-per-watt और rendering performance बेहतर है, लेकिन अधिक memory bandwidth वाले M3 Ultra के आने तक upgrade का इंतज़ार करने का निर्णय लिया गया।