English
Related papers

Related papers: Extending ROOT through Modules

200 papers

ROOT is a data analysis framework broadly used in and outside of High Energy Physics (HEP). Since HEP software frameworks always strive for performance improvements, ROOT was extended with experimental support of runtime C++ Modules. C++…

Programming Languages · Computer Science 2019-10-02 Yuka Takahashi , Vassil Vassilev , Oksana Shadura , Raphael Isemann

ROOT is a large code base with a complex set of build-time dependencies; there is a significant difference in compilation time between the "core" of ROOT and the full-fledged deployment. We present results on a "delayed build" for internal…

Software Engineering · Computer Science 2020-08-26 Oksana Shadura , Brian Paul Bockelman , Vassil Vassilev

C++ Modules come in C++20 to fix the long-standing build scalability problems in the language. They provide an io-efficient, on-disk representation capable to reduce build times and peak memory usage. ROOT employs the C++ modules technology…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-02-03 Vassil Vassilev , David Lange , Malik Shahzad Muzaffar , Mircho Rodozov , Oksana Shadura , Alexander Penev

ROOT has several features which interact with libraries and require implicit header inclusion. This can be triggered by reading or writing data on disk, or user actions at the prompt. Often, the headers are immutable, and reparsing is…

Software Engineering · Computer Science 2020-08-26 Yuka Takahashi , Oksana Shadura , Vassil Vassilev

ROOT is an object-oriented C++ framework conceived in the high-energy physics (HEP) community, designed for storing and analyzing petabytes of data in an efficient way. Any instance of a C++ class can be stored into a ROOT file in a…

Software engineering practices such as constructing requirements and establishing traceability help ensure systems are safe, reliable, and maintainable. However, they can be resource-intensive and are frequently underutilized. To alleviate…

Software Engineering · Computer Science 2024-08-21 Katherine R. Dearstyne , Alberto D. Rodriguez , Jane Cleland-Huang

In this talk we will review the major additions and improvements made to the ROOT system in the last 18 months and present our plans for future developments. The additons and improvements range from modifications to the I/O sub-system to…

Software Engineering · Computer Science 2008-11-26 Fons Rademakers , Masaharu Goto , Philippe Canal , Rene Brun

For the last several months the main focus of development in the ROOT I/O package has been code consolidation and performance improvements. Access to remote files is affected both by bandwidth and latency. We introduced a pre-fetch…

Other Computer Science · Computer Science 2009-01-08 R. Brun , P. Canal , M. Frank , A. Kreshuk , S. Linev , P. Russo , F. Rademakers

Many of the existing approaches for program comprehension rely on the linguistic information found in source code, such as identifier names and comments. Semantic clustering is one such technique for modularization of the system that relies…

Software Engineering · Computer Science 2017-08-08 Amir Saeidi , Jurriaan Hage , Ravi Khadka , Slinger Jansen

The ROOT I/O (RIO) subsystem is foundational to most HEP experiments - it provides a file format, a set of APIs/semantics, and a reference implementation in C++. It is often found at the base of an experiment's framework and is used to…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-11-08 Brian Bockelman , Zhe Zhang , Jim Pivarski

Systematically developing high--quality reusable software components is a difficult task and requires careful design to find a proper balance between potential reuse, functionalities and ease of implementation. Extendibility is an important…

Robotics · Computer Science 2021-06-30 Ali Paikan , Vadim Tikhanoff , Giorgio Metta , Lorenzo Natale

This paper presents the software architecture and deployment strategy behind the MoonBot platform: a modular space robotic system composed of heterogeneous components distributed across multiple computers, networks and ultimately celestial…

Statistical modeling is a key element in many scientific fields and especially in High-Energy Physics (HEP) analysis. The standard framework to perform this task in HEP is the C++ ROOT/RooFit toolkit; with Python bindings that are only…

Data Analysis, Statistics and Probability · Physics 2020-05-21 Jonas Eschle , Albert Puig Navarro , Rafael Silva Coutinho , Nicola Serra

Distinct HEP workflows have distinct I/O needs; while ROOT I/O excels at serializing complex C++ objects common to reconstruction, analysis workflows typically have simpler objects and can sustain higher event rates. To meet these…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-08-26 Brian Bockelman , Zhe Zhang , Oksana Shadura

This paper presents an open-source, lightweight, yet comprehensive software framework, named RPC, which integrates physics-based simulators, planning and control libraries, debugging tools, and a user-friendly operator interface. RPC…

Robotics · Computer Science 2024-09-17 Seung Hyeon Bang , Carlos Gonzalez , Gabriel Moore , Dong Ho Kang , Mingyo Seo , Luis Sentis

We overview recent changes in the ROOT I/O system, increasing performance and enhancing it and improving its interaction with other data analysis ecosystems. Both the newly introduced compression algorithms, the much faster bulk I/O data…

Other Computer Science · Computer Science 2021-02-03 Oksana Shadura , Brian Paul Bockelman , Philippe Canal , Danilo Piparo , Zhe Zhang

As software systems are getting increasingly connected, there is a need for equipping nonmonotonic logic programs with access to external sources that are possibly remote and may contain information in heterogeneous formats. To cater for…

Artificial Intelligence · Computer Science 2020-02-19 Thomas Eiter , Michael Fink , Giovambattista Ianni , Thomas Krennwallner , Christoph Redl , Peter Schüller

Foundational software libraries such as ROOT are under intense pressure to avoid software regression, including performance regressions. Continuous performance benchmarking, as a part of continuous integration and other code quality…

Software Engineering · Computer Science 2019-10-02 Oksana Shadura , Vassil Vassilev , Brian Paul Bockelman

Access libraries such as ROOT and HDF5 allow users to interact with datasets using high level abstractions, like coordinate systems and associated slicing operations. Unfortunately, the implementations of access libraries are based on…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-07-06 Xiaowei , Chu , Jeff LeFevre , Aldrin Montana , Dana Robinson , Quincey Koziol , Peter Alvaro , Carlos Maltzahn

To remain useful for their users, software systems need to continuously enhance and extend their functionality. Nevertheless, in many object-oriented applications, features are not represented explicitly. The lack of modularization is known…

Software Engineering · Computer Science 2014-07-07 T. Pandiyavathi
‹ Prev 1 2 3 10 Next ›