1 điểm bởi GN⁺ 2024-06-02 | 1 bình luận | Chia sẻ qua WhatsApp

√-1ROOT: Phần mềm cho phân tích và trực quan hóa dữ liệu quy mô lớn

Tổng quan về ROOT

  • ROOT là phần mềm hiệu năng cao cho phép phân tích thống kê và trực quan hóa dữ liệu quy mô lớn.
  • Chủ yếu được viết bằng C++, có thể sử dụng trên Linux, macOSWindows.
  • Đây là phần mềm mã nguồn mở, có thể tự do sử dụng, chỉnh sửa và đóng góp.

Các tính năng chính

  • Cung cấp trình thông dịch C++ mạnh mẽ để tạo mẫu nhanh.
  • Tích hợp mượt mà với Python, cho phép liên kết động giữa Python và C++.
  • Cũng có thể sử dụng trong Jupyter Notebook.

RNTuple: hiện tại và tương lai

  • RNTuple đang được phát triển như phiên bản kế nhiệm của TTree và dự kiến sẽ được sử dụng trong Run 4.
  • Bài viết giải thích về sự cần thiết của hệ thống mới, trạng thái hiện tại, công việc trước bản phát hành production đầu tiên và các kế hoạch sắp tới.
  • Đồng thời cung cấp cách để bạn có thể thử RNTuple ngay từ bây giờ.

Cấu hình mặc định cho canvas dựa trên web

  • Phần triển khai TCanvas dựa trên web đã được chuyển thành cấu hình mặc định trong phiên bản master của ROOT.
  • Nó đã tồn tại trong ROOT từ năm 2017 và cũng được dùng trong TBrowser dựa trên web.

Lớp mới TScatter

  • Giới thiệu lớp mới TScatter.

Cải thiện môi trường phát triển ROOT

  • Đề xuất cách cải thiện môi trường phát triển và gỡ lỗi ROOT bằng QtCreator.
  • Có thể gỡ lỗi script CERN ROOT và các chương trình dựa trên ROOT trong Eclipse IDE.

Bản phát hành mới nhất

  • Release 6.32/00 - 28 tháng 5, 2024
  • Release 6.30.06 - 3 tháng 4, 2024
  • Release 6.30.04 - 31 tháng 1, 2024
  • Release 6.30/02 - 28 tháng 11, 2023
  • Release 6.30/00 - 7 tháng 11, 2023

Ý kiến của GN⁺

  • ROOT là công cụ được tối ưu cho phân tích dữ liệu quy mô lớn, đặc biệt hữu ích trong nghiên cứu khoa học.
  • Nhờ tích hợp với Python, ngay cả người dùng không quen với C++ cũng có thể dễ dàng tiếp cận.
  • Việc đặt canvas dựa trên web làm mặc định có thể cải thiện đáng kể trải nghiệm người dùng.
  • Việc đưa vào RNTuple hứa hẹn cải thiện hiệu năng và tính năng.
  • Cải thiện môi trường phát triển bằng QtCreatorEclipse IDE giúp nâng cao năng suất.

1 bình luận

 
GN⁺ 2024-06-02
Ý kiến trên Hacker News
  • Ký ức ngày xưa: Đã dùng ROOT rất nhiều trong vật lý hạt. Dù có nhiều nợ kỹ thuật và điểm kỳ quặc, ROOT lại dễ hơn cho một số tác vụ nhất định như histogram hay xử lý dữ liệu có cấu trúc. API hướng đối tượng của nó khá trực quan.
  • Quá trình thay đổi: Dù đã rời lĩnh vực này 5 năm trước, ROOT khi đó vẫn đang thay đổi. Họ đã loại bỏ trình thông dịch CINT và chuyển sang mã dựa trên Clang, và giờ có thể phân tích trong Jupyter bằng C++ hoặc Python.
  • Công cụ phân tích mới: Với các phân tích mới, tốt hơn nên dùng những công cụ thân thiện hơn như uproot thay vì ROOT. Một số người vẫn có thể tiếp tục dùng ROOT vì quy trình làm việc legacy.
  • Trang 404 thú vị: Trang 404 của ROOT khá vui. (không liên quan đến phòng 404)
  • Khám phá khoa học: Thật tuyệt khi các dự án phần mềm quy mô lớn được dùng cho những khám phá khoa học. Ví dụ, LIGO đã phát hiện sóng hấp dẫn bằng GStreamer.
  • Vấn đề của ROOT: ROOT có rất nhiều tính năng, nhưng thiết kế API không tốt và thiếu sự tách bạch giữa thư viện với chương trình. ROOT 6 đã cố gắng giải quyết một phần các vấn đề này, nhưng cần thời gian.
  • Vấn đề định dạng I/O: Định dạng I/O của ROOT cũ từng không được tài liệu hóa tốt. Giờ đây nhờ groot và uproot, việc đọc và ghi dữ liệu ROOT đã dễ hơn nhiều.
  • Biết ơn ROOT 6: Thật đáng biết ơn khi giờ đây hằng ngày được dùng ROOT 6 trở lên.
  • Ký ức debug: Gợi nhớ những đêm thức trắng debug code do các nhà vật lý xuất sắc nhưng không có nền tảng khoa học máy tính viết ra.
  • Trụ cột của vật lý hạt: ROOT là xương sống của rất nhiều công việc trong vật lý hạt thực nghiệm, nhưng lại là cơn ác mộng với các nghiên cứu sinh mới.
  • Sử dụng Cling: Dùng trình thông dịch C++ Cling và Xeus trong notebook Jupyter. Nó nhanh hơn Python 3 rất nhiều. Chủ yếu dùng Cling như JIT cho các ngôn ngữ được biên dịch sang C++.
  • Mã nguồn: Có thể xem mã nguồn của dự án ROOT trên GitHub.
  • Ác mộng debug: Việc debug script và chương trình CERN ROOT trong Eclipse IDE từng là cơn ác mộng. Nhưng điều đó cũng cho thấy người ta vẫn có thể tạo ra những thứ đáng kinh ngạc ngay cả trong một môi trường tệ hại.