Axel Naumann's research while affiliated with CERN and other places
What is this page?
This page lists the scientific contributions of an author, who either does not have a ResearchGate profile, or has not yet added these contributions to their profile.
It was automatically created by ResearchGate to create a record of this author's body of work. We create such pages to advance our goal of creating and maintaining the most comprehensive scientific repository possible. In doing so, we process publicly available (personal) data relating to the author as a member of the scientific community.
If you're a ResearchGate member, you can follow this page to keep up with this author's work.
If you are this author, and you don't want us to display this page anymore, please let us know.
It was automatically created by ResearchGate to create a record of this author's body of work. We create such pages to advance our goal of creating and maintaining the most comprehensive scientific repository possible. In doing so, we process publicly available (personal) data relating to the author as a member of the scientific community.
If you're a ResearchGate member, you can follow this page to keep up with this author's work.
If you are this author, and you don't want us to display this page anymore, please let us know.
Publications (30)
In recent years, RDataFrame, ROOT’s high-level interface for data analysis and processing, has seen widespread adoption on the part of HEP physicists. Much of this success is due to RDataFrame’s ergonomic programming model that enables the implementation of common analysis tasks more easily than previous APIs, without compromising on application pe...
High-frequency financial market data is conceptually distinct from high energy physics (HEP) data. Market data is a time series generated by market participants, while HEP data is a set of independent events generated by collisions between particles. However, there are similarities within the data structure and required tools for data analysis, and...
ROOT is high energy physics' software for storing and mining data in a statistically sound way, to publish results with scientific graphics. It is evolving since 25 years, now providing the storage format for more than one exabyte of data; virtually all high energy physics experiments use ROOT. With another significant increase in the amount of dat...
This document discusses the state, roadmap, and risks of the foundational components of ROOT with respect to the experiments at the HL-LHC (Run 4 and beyond). As foundational components, the document considers in particular the ROOT input/output (I/O) subsystem. The current HEP I/O is based on the TFile container file format and the TTree binary ev...
On September 29, 2020, JPMorgan was ordered to pay a settlement of $920.2 million for spoofing the metals and Treasury futures markets from 2008 to 2016. We examine these cases using a visualization method developed in particle physics (CERN) and the messages that the exchange receives about market activity rather than time‐based snapshots. This ap...
We introduce a methodology to visualize the limit order book (LOB) using a particle physics lens. Open-source data-analysis tool ROOT, developed by CERN, is used to reconstruct and visualize futures markets. Message-based data is used, rather than snapshots, as it offers numerous visualization advantages. The visualization method can include multip...
We introduce a methodology to visualize the limit order book (LOB) using a particle physics lens. Open‐source data‐analysis tool ROOT, developed by CERN, is used to reconstruct and visualize futures markets. Message‐based data is used, rather than snapshots, as it offers numerous visualization advantages. The visualization method can include multip...
The high energy physics community is discussing where investment is needed to prepare software for the HL-LHC and its unprecedented challenges. The ROOT project is one of the central software players in high energy physics since decades. From its experience and expectations, the ROOT team has distilled a comprehensive set of areas that should see r...
The ROOT TTree data format encodes hundreds of petabytes of High Energy and Nuclear Physics events. Its columnar layout drives rapid analyses, as only those parts ("branches") that are really used in a given analysis need to be read from storage. Its unique feature is the seamless C++ integration, which allows users to directly store their event cl...
The ROOT TTree data format encodes hundreds of petabytes of High Energy and Nuclear Physics events. Its columnar layout drives rapid analyses, as only those parts (“branches”) that are really used in a given analysis need to be read from storage. Its unique feature is the seamless C++ integration, which allows users to directly store their event cl...
For the last 5 years Accelogic pioneered and perfected a radically new theory of numerical computing codenamed “Compressive Computing”, which has an extremely profound impact on real-world computer science [1]. At the core of this new theory is the discovery of one of its fundamental theorems which states that, under very general conditions, the va...
The Physics programmes of LHC Run III and HL-LHC challenge the HEP community. The volume of data to be handled is unprecedented at every step of the data processing chain: analysis is no exception. Physicists must be provided with first-class analysis tools which are easy to use, exploit bleeding edge hardware technologies and allow to seamlessly e...
In the coming years, HEP data processing will need to exploit parallelism on present and future hardware resources to sustain the bandwidth requirements. As one of the cornerstones of the HEP software ecosystem, ROOT embraced an ambitious parallelisation plan which delivered compelling results. In this contribution the strategy is characterised as...
This paper proposes to add support for compile-time reflection to standard C++. We propose that the compiler shall generate meta-objects — representations of certain program declarations, which can be reasoned-about at compile time. These meta-objects can then be used, through a set of operations to obtain various pieces of metadata, like declarati...
The aim of this paper is to provide the rationale driving the design of the static reflection facility proposed in P0194 [9] (and its predecessors N3996 [3], N4111 [4], N4451 [6] and N4452 [5]), to enumerate and describe its potential use-cases and to keep a written record of its evolution. It also answers questions frequently asked in regard to th...
This paper is the follow-up to N3996, N4111 and N4451 and it is the fourth revision of the proposal to add static reflection to the C++ standard. It also introduces and briefly describes a partial, experimental implementation of this proposal.
Following the release of version 6, ROOT has entered a new area of development. It will leverage the industrial strength compiler library shipping in ROOT 6 and its support of the C++11/14 standard, to significantly simplify and harden ROOT's interfaces and to clarify and substantially improve ROOT's support for multi-threaded environments. This ta...
Cling is an interactive C++ interpreter, built on top of Clang and LLVM compiler infrastructure. Like its predecessor Cint, Cling realizes the read-print-evaluate-loop concept, in order to leverage rapid application development. Implemented as a small extension to LLVM and Clang, the interpreter reuses their strengths such as the praised concise an...
A new stable version ("production version") v5.28.00 of ROOT [1] has been published [2]. It features several major improvements in many areas, most noteworthy data storage performance as well as statistics and graphics features. Some of these improvements have already been predicted in the original publication Antcheva et al. (2009) [3]. This versi...
High performance computing with a large code base and C++ has proved to be a good combination. But when it comes to storing data, C++ is a problematic choice: it offers no support for serialization, type definitions are amazingly complex to parse, and the dependency analysis (what does object A need to be stored?) is incredibly difficult. Neverthel...
Compiled code is fast, interpreted code is slow. There is not much we can do about it, and it's the reason why interpreters' use in high performance computing is usually restricted to job submission. We show where interpreters make sense even in the context of analysis code, and what aspects have to be taken into account to make this combination a...
Citations
... This means ROOT is itself an active element of open science. At the same time, ROOT is used also outside HEP, for instance through BioDynamo [16] or in quantitative finance research [17]. ...
Reference: HL-LHC Analysis With ROOT
... We expect the implementation of the support of RNTuple to be easier than TTree that it is expected to replace, thanks to its design. Data are stored in column of fundamental types (float, int,...) [54], similar to Apache Arrow [55], which should ease support from programming languages other than C ++ like Julia. ...
... The resulting technology has the capability to enable substantial economic and operational gains (including speedup) for High Energy and Nuclear Physics data storage/analysis. In our initial studies, a factor of nearly x4 (3.9) compression was achieved with RHIC/STAR data where ROOT compression managed only x1.4 [6]. ...
... In paper [6], the function templates are instantiated at runtime by providing non-constant expressions to the non-type template parameters and strings from which the type is deduced by conversion to type template parameters. Another paper [7] allows multiple definitions for the same language construct, producing different Abstract Syntax Trees (AST). While LLVM Clang is used to separate the unique AST from the redefined ones, the redefined AST is JIT compiled [7]. ...
... This library defines a I/O layer and a data format through which more than 1 Exabyte of data is stored. It also offers a high-level interface to data analysis called RDataFrame [9], which is more user-friendly with respect to other ROOT facilities and has already seen wide usage in the community. ...
... When code tries to access (e.g. for serialization or interpretation) a templated class, CINT is looking this type up in its collection of dictionaries. We have extended CINT to react to a lacking dictionary for a templated class by generating it: If the member of a class Klass<MyArg> is accessed, and if CINT knows the header files defining Klass and MyArg (e.g. because of #include statements), CINT will tell ROOT to create a dictionary for it using ROOT's automatic library builder ACLiC [5]. ...
Reference: C++ and Data
... For example: typedef reflexpr() meta_global_scope; typedef reflexpr(int) meta_int; typedef reflexpr(std) meta_std; typedef reflexpr(std::size_t) meta_std_size_t; 8 It's not possible to create a run-time variable of metaobject type. 9 Namespace, typedef, function, parameter, specifier, etc. 10 Which will happen very often in the more complex use cases typedef reflexpr(std::thread) meta_std_thread; typedef reflexpr(std::pair) meta_std_pair; ...
... In P0385R1, Matus Chochlik, Axel Naumann and David Sankel use a reflexpr operator to associate a unique implementationdefined class with each reflected type (fundamental, compound, user-defined), namespace, and specifier (public, virtual, etc.) [133]. A set of queries, in the form of type traits, is used to access the name, members, and other properties of the reflected class. ...
... This allowed to verify the feasibility of the readout at this threshold, which on the other hand, in simulations, has been proven to enhance the sensitivity of a full array at low energy. The prototype served to evaluate the readout method based on the WaveCatcher device (Breton et al., 2014) set at 400 MHz sampling rate, 128 samples, and its Linux libraries that we used in our real-time data analysis and formatting with ROOT6 (Brun and Rademakers, 1997;Bellenot et al., 2015), running on a dedicated Single Board Computer connected to the WaveCatcher via UDP. The sampling rate chosen for simulations is identical, and the number of samples similar (120), to ensure a similar and realistic performance in charge integration and Time-of-Maximum measurement. ...
... The need to reconcile high performance with fast development has led to the development of a C ++ interpreter [8] that provides the convenience of a read-eval-print-loop (REPL) interactive experience, also known as programming shell, that supports just-in-time compilation, and allows the use of the same programming language for compiled and interpreted code. The same analysis framework ROOT [9,10] can then be used with compiled code and interactively. ...