1 पॉइंट द्वारा GN⁺ 2024-06-02 | 1 टिप्पणियां | WhatsApp पर शेयर करें

√-1ROOT: बड़े पैमाने के डेटा विश्लेषण और विज़ुअलाइज़ेशन के लिए सॉफ़्टवेयर

ROOT परिचय

  • ROOT बड़े पैमाने के डेटा का सांख्यिकीय विश्लेषण और विज़ुअलाइज़ेशन संभव बनाने वाला उच्च-प्रदर्शन सॉफ़्टवेयर है।
  • यह मुख्यतः C++ में लिखा गया है, और Linux, macOS, Windows पर उपलब्ध है।
  • यह open source सॉफ़्टवेयर है, इसलिए इसे स्वतंत्र रूप से इस्तेमाल, संशोधित और इसमें योगदान किया जा सकता है।

मुख्य विशेषताएँ

  • तेज़ prototyping के लिए शक्तिशाली C++ interpreter प्रदान करता है।
  • Python के साथ सहज एकीकरण के जरिए Python और C++ के बीच dynamic binding संभव है।
  • इसे Jupyter notebook में भी इस्तेमाल किया जा सकता है।

RNTuple: वर्तमान और भविष्य

  • RNTuple, TTree के उत्तराधिकारी के रूप में विकसित किया जा रहा है, और इसका उपयोग Run 4 में होने की योजना है।
  • इसमें नए सिस्टम की आवश्यकता, वर्तमान स्थिति, पहली production release से पहले किए जाने वाले काम, और आगे की योजनाओं के बारे में बताया गया है।
  • RNTuple को अभी आज़माने के तरीके भी उपलब्ध कराए गए हैं।

वेब-आधारित canvas डिफ़ॉल्ट सेटिंग

  • वेब-आधारित TCanvas implementation को ROOT master version में डिफ़ॉल्ट सेटिंग में बदल दिया गया है।
  • यह 2017 से ROOT में मौजूद है, और वेब-आधारित TBrowser में भी उपयोग होता है।

नई class TScatter

  • नई class TScatter का परिचय।

ROOT development environment में सुधार

  • QtCreator का उपयोग करके ROOT development और debugging environment को बेहतर बनाने के तरीके सुझाए गए हैं।
  • Eclipse IDE में CERN ROOT script और ROOT-आधारित प्रोग्राम debug किए जा सकते हैं।

नवीनतम रिलीज़

  • Release 6.32/00 - 28 मई 2024
  • Release 6.30.06 - 3 अप्रैल 2024
  • Release 6.30.04 - 31 जनवरी 2024
  • Release 6.30/02 - 28 नवंबर 2023
  • Release 6.30/00 - 7 नवंबर 2023

GN⁺ की राय

  • ROOT बड़े पैमाने के डेटा विश्लेषण के लिए अनुकूलित टूल है, और विशेष रूप से वैज्ञानिक शोध में उपयोगी है।
  • Python के साथ इसके एकीकरण की वजह से, C++ से परिचित न होने वाले उपयोगकर्ता भी इसे आसानी से अपना सकते हैं।
  • वेब-आधारित canvas की डिफ़ॉल्ट सेटिंग उपयोगकर्ता अनुभव को काफी बेहतर बना सकती है।
  • RNTuple के आने से प्रदर्शन और फीचर दोनों में सुधार की उम्मीद की जा सकती है।
  • QtCreator और Eclipse IDE का उपयोग कर development environment में सुधार, उत्पादकता बढ़ाने में मददगार हो सकता है।

1 टिप्पणियां

 
GN⁺ 2024-06-02
Hacker News टिप्पणियाँ
  • पुरानी यादें: particle physics में ROOT का बहुत इस्तेमाल किया था। technical debt और कई विचित्रताएँ थीं, लेकिन histogram या structured data processing जैसे कुछ खास काम ROOT में ज़्यादा आसान थे। इसका object-oriented API सहज लगता था।
  • बदलाव की प्रक्रिया: 5 साल पहले यह क्षेत्र छोड़ दिया था, लेकिन ROOT बदल रहा था। CINT interpreter को हटाकर Clang-आधारित code पर ले जाया गया, और अब Jupyter में C++ या Python से analysis किया जा सकता है।
  • नए analysis tools: नए analysis के लिए ROOT की जगह uproot जैसे ज़्यादा user-friendly tools का इस्तेमाल करना बेहतर है। कुछ लोग legacy workflow की वजह से ROOT का इस्तेमाल जारी रख सकते हैं।
  • दिलचस्प 404 पेज: ROOT का 404 पेज मज़ेदार है। (Room 404 से कोई संबंध नहीं है)
  • वैज्ञानिक खोज: यह देखना शानदार है कि बड़े software projects का उपयोग scientific discovery में होता है। उदाहरण के लिए, LIGO में gravitational waves को GStreamer से खोजा गया था।
  • ROOT की समस्याएँ: ROOT में बहुत सारी सुविधाएँ हैं, लेकिन इसका API design अच्छा नहीं है और library तथा program के बीच अलगाव भी पर्याप्त नहीं है। ROOT 6 में कुछ समस्याओं को सुलझाने की कोशिश की गई, लेकिन इसमें समय लग रहा है।
  • input/output format की समस्या: पुराने ROOT का input/output format ठीक से documented नहीं था। अब groot और uproot की बदौलत ROOT data को आसानी से पढ़ा और लिखा जा सकता है।
  • ROOT 6 के लिए आभार: हर दिन ROOT 6 या उससे ऊपर का version इस्तेमाल कर पाने के लिए आभारी हूँ।
  • debugging की यादें: कंप्यूटर साइंस पृष्ठभूमि के बिना भी शानदार physicists द्वारा लिखे गए code को रात भर debug करने की यादें ताज़ा हो जाती हैं।
  • particle physics की रीढ़: experimental particle physics में ROOT बहुत से कामों की रीढ़ है, लेकिन नए graduate students के लिए यह किसी दुःस्वप्न से कम नहीं है।
  • Cling का उपयोग: Jupyter notebook में C++ interpreter Cling और Xeus का उपयोग करता हूँ। यह Python 3 से काफ़ी तेज़ है। मैं Cling का उपयोग मुख्य रूप से C++ में compile होने वाली भाषाओं के JIT के रूप में करता हूँ।
  • source code: ROOT project का source code GitHub पर देखा जा सकता है।
  • debugging का दुःस्वप्न: CERN ROOT scripts और programs को Eclipse IDE में debug करना दुःस्वप्न था। लेकिन यह दिखाता है कि बेहद खराब environment में भी हैरतअंगेज़ चीज़ें बनाई जा सकती हैं।