1 pontos por GN⁺ 2024-06-02 | 1 comentários | Compartilhar no WhatsApp

√-1ROOT: software para análise e visualização de dados em larga escala

Visão geral do ROOT

  • ROOT é um software de alto desempenho que permite análise estatística e visualização de grandes volumes de dados.
  • É escrito principalmente em C++ e pode ser usado em Linux, macOS e Windows.
  • Como software de código aberto, pode ser usado, modificado e receber contribuições livremente.

Principais recursos

  • Fornece um poderoso interpretador de C++ para prototipagem rápida.
  • Permite binding dinâmico entre Python e C++ por meio de integração fluida com Python.
  • Também pode ser usado em Jupyter notebooks.

RNTuple: presente e futuro

  • RNTuple está sendo desenvolvido como sucessor do TTree e está previsto para ser usado no Run 4.
  • Explica a necessidade do novo sistema, o estado atual, o que precisa ser feito antes do primeiro release de produção e os planos futuros.
  • Já oferece uma forma de experimentar o RNTuple.

Configuração padrão do canvas baseado na web

  • A implementação do TCanvas baseado na web passou a ser a configuração padrão na versão master do ROOT.
  • Ela já existe no ROOT desde 2017 e também é usada no TBrowser baseado na web.

Nova classe TScatter

  • Apresentação da nova classe TScatter.

Melhorias no ambiente de desenvolvimento do ROOT

  • Propõe maneiras de melhorar o ambiente de desenvolvimento e depuração do ROOT usando QtCreator.
  • Também é possível depurar scripts do CERN ROOT e programas baseados em ROOT no Eclipse IDE.

Releases mais recentes

  • Release 6.32/00 - 28 de maio de 2024
  • Release 6.30.06 - 3 de abril de 2024
  • Release 6.30.04 - 31 de janeiro de 2024
  • Release 6.30/02 - 28 de novembro de 2023
  • Release 6.30/00 - 7 de novembro de 2023

Opinião do GN⁺

  • ROOT é uma ferramenta otimizada para análise de dados em larga escala, especialmente útil em pesquisa científica.
  • Graças à integração com Python, até usuários menos familiarizados com C++ conseguem adotá-lo com facilidade.
  • A configuração padrão do canvas baseado na web pode melhorar bastante a experiência do usuário.
  • A introdução do RNTuple deve trazer ganhos de desempenho e funcionalidades.
  • Melhorias no ambiente de desenvolvimento com QtCreator e Eclipse IDE ajudam a aumentar a produtividade.

1 comentários

 
GN⁺ 2024-06-02
Comentários do Hacker News
  • Memórias do passado: Usei muito o ROOT em física de partículas. Havia muita dívida técnica e várias peculiaridades, mas para tarefas específicas, como histogramas ou processamento de dados estruturados, o ROOT era mais fácil. A API orientada a objetos era intuitiva.
  • Processo de mudança: Saí da área há 5 anos, mas o ROOT estava mudando. Removeram o interpretador CINT e migraram para código baseado em Clang, e agora é possível fazer análises no Jupyter com C++ ou Python.
  • Novas ferramentas de análise: Para análises novas, é melhor usar ferramentas mais amigáveis, como o uproot, em vez do ROOT. Alguns ainda podem continuar usando o ROOT por causa de fluxos de trabalho legados.
  • Página 404 interessante: A página 404 do ROOT é divertida. (Não tem relação com o quarto 404.)
  • Descoberta científica: É legal ver grandes projetos de software sendo usados para descobertas científicas. Por exemplo, o LIGO descobriu ondas gravitacionais com o GStreamer.
  • Problemas do ROOT: O ROOT tem muitos recursos, mas o design da API não é bom e há pouca separação entre a biblioteca e os programas. Tentaram resolver parte desses problemas no ROOT 6, mas isso leva tempo.
  • Problema com o formato de E/S: O antigo formato de entrada/saída do ROOT não era bem documentado. Agora, graças ao groot e ao uproot, ficou fácil ler e escrever dados do ROOT.
  • Gratidão pelo ROOT 6: Sou grato por poder usar diariamente o ROOT 6 ou versões mais novas.
  • Memórias de depuração: Isso me faz lembrar das noites viradas depurando código escrito por físicos brilhantes sem formação em ciência da computação.
  • Espinha dorsal da física de partículas: O ROOT é a espinha dorsal de muito trabalho em física experimental de partículas, mas é um pesadelo para novos pós-graduandos.
  • Uso do Cling: Uso o interpretador C++ Cling e o Xeus em notebooks Jupyter. É muito mais rápido que Python 3. Uso o Cling principalmente como JIT para linguagens que são compiladas para C++.
  • Código-fonte: O código-fonte do projeto ROOT pode ser visto no GitHub.
  • Pesadelo de depuração: Depurar scripts e programas do CERN ROOT na IDE Eclipse era um pesadelo. Mas isso mostra que dá para criar coisas incríveis mesmo em ambientes horríveis.