Presentation is loading. Please wait.

Presentation is loading. Please wait.

Version 5. ¿What is PAF? PAF is a tool to easily and quickly implement… …distributed analysis over ROOT trees. …by hiding as much as possible the inherent.

Similar presentations


Presentation on theme: "Version 5. ¿What is PAF? PAF is a tool to easily and quickly implement… …distributed analysis over ROOT trees. …by hiding as much as possible the inherent."— Presentation transcript:

1 Version 5

2 ¿What is PAF? PAF is a tool to easily and quickly implement… …distributed analysis over ROOT trees. …by hiding as much as possible the inherent complexities of parallel paradigms to the users. …and by providing a common framework for some of the different technologies available. We have preserved as much as possible the compatibility with previous releases.

3 PAF Core changes Modular architecture allowing an easy adaptation to new scenarios. There are enough interfaces to change almost all of its behaviours. PAF has now a strong object orientation: Makes an easy understanding of the system, particularly to coming developers. Facilitates its modifications.

4 Workflow Very similar to previous versions. A few small changes: Selector development now inherits from PAFChainItemSelector. We have also developed a new way to access branches: With templates (Recommended): Get (“Branch”) And predefined: GetInt, GetFloat and GetDouble.

5 The new RunProof.C Execution configuration has suffered a deep change. Now it is created as a PAFProject but only 4 lines to default process:

6 New functionality and improvements Modular development of analysis: PAF now allows us to chain selectors. Communication between selectors is easy: SetParam(“Name”, value); and GetParam (“Name”); Each selector could be independent from the others: Reusability of selectors from different analysis. If each selector has only only one responsibility: Easy to develop and extend. Easy understanding of the analysis chain.

7 New functionality and improvements (cont.) For example, we could create several selectors (or reuse from previous analysis):

8 New functionality and improvements (cont.) Project paradigm to configure an execution: Configuration is now easier and more human. A PAFProject has a lot of parameters, but most of them have default values. Project configuration does not interfere with the selectors developed. You canlaunch your analysis in a bunch of different scenarios.

9 New functionality and improvements (III) Lazy loading of branches Completely transparent to users. Significantly improves your analysis performance. Also reduces disk and bandwidth usage. Activated by default.

10 Migration from previous PAF Easy and fast process: Selectors should be adapted to: Inherit from PAFChainItemSelector instead of PAFBaseSelector. The way to get a variable now is “ Get (“VariableName”) ”, there is also an array access “ Get (“VariableName”, position); ” PAF Selector functions tutorial Creation of PAFProject object: Easy process, we promise less than 2 minutes. Running a project tutorial Nothing else … and we will provide support if you spot something not covered here We will not support previous versions of PAF.

11 PAF Inspect Tree A new tool to know more about ROOT analysis files. For full documentation: $ paf inspectree -h Support for multi-tree files. Filters available for variables: Support for regular expressions. Shows code snippet (under development).

12 Conclusions PAF is an easy-to-use distributed analysis tool that helps you in the last phases of the analysis allowing you to focus your attention only on your research. There are many tutorials explaining almost every functionality of PAF. It is under heavy development and we need a lot of feedback We want to develop a very comfortable tool. Anything you miss, please, let us know, everything is welcome.

13 References PAF homepage: http://www.hep.uniovi.es/PAF/ Source code (GitHub): https://github.com/PROOF-Analysis-Framework/PROOF-Analysis-Framework Tutorials: http://www.hep.uniovi.es/PAF/index.php/tutorials

14 Thank you.


Download ppt "Version 5. ¿What is PAF? PAF is a tool to easily and quickly implement… …distributed analysis over ROOT trees. …by hiding as much as possible the inherent."

Similar presentations


Ads by Google