Advanced Analysis Environments - PowerPoint PPT Presentation

About This Presentation
Title:

Advanced Analysis Environments

Description:

Can commercial products help meet our needs in this area? ... LHC /Lizard, JAS, Open Scientist, COLT. Interoperability/data exchange. Familiarity to users ... – PowerPoint PPT presentation

Number of Views:18
Avg rating:3.0/5.0
Slides: 17
Provided by: tony231
Category:

less

Transcript and Presenter's Notes

Title: Advanced Analysis Environments


1
Advanced Analysis Environments
  • What is the role of Java in physics analysis?
  • Will programming languages at all be relevant?
  • Can commercial products help meet our needs in
    this area?
  • What is the role of modularity and abstract
    interfaces?
  • Do we want an all encompassing framework or a
    collection of configurable tools?

2
What is the role of Java in physics analysis?
  • Java is a great language for analysis (among many
    other things)
  • Clean, modern, OO language, relatively simple
  • Platform independent
  • Mainstream language
  • Enormous set of standard and third party
    libraries
  • Distributed computing, networking, CORBA, RMI
  • Graphics, 2D and 3D, GUIs
  • Collections, Hash tables, Maps, Vectors, Binary
    Trees, Sorting
  • IO, Compression, Encryption
  • Large research teams working on development and
    performance

3
Java for Data Analysis
  • Maximizes programmer/physicist efficiency
  • Memory allocation taken care of for you
  • No dangling pointers
  • No core dumps
  • No memory leaks (unless you try hard)
  • No need to reinvent the wheel
  • Very fast compile/(dynamic) load/debug cycle
  • Spend time designing analysis program solving
    physics problems, not working around language
    problems

4
Java for Data Analysis
  • Previous generation of experiments used Fortran
    Data Management System ( Jazelle, Zebra, BOS)
  • Solves Three Problems
  • Ability to Represent Complex Data Structures
  • Persistence (i.e. read in and write out complex
    structures)
  • Run time access to named data in structures (for
    analysis)
  • Now time has marched on and modern experiments
    use C
  • Represent Complex Data
  • Persistence
  • Run time access to data
  • Still need to build (or buy and deploy) data
    management system (e.g. Root, Objectivity)
  • Java
  • Represent Complex Data
  • Persistence (serialization)
  • Run time access to data (reflection)
  • support built-in to language

5
Isnt Java too damn slow?
  • No!
  • Huge advances have been made in last 4 years
  • Dynamic code optimization
  • Optimizes code while it is running
  • Java now gives average of 60 of C performance
  • Java performance continues to improve
  • Static optimization (C) is mature no
    improvement expected

6
Examples of Java in Data Analysis
  • WIRED Experiment independent event display
  • JAS Java Analysis Studio
  • Linear Collider Detector
  • Entire reconstruction/analysis framework is in
    Java
  • Modular components are also reusable and are
    being moved to FreeHEP library
  • FreeHEP library
  • CLHep for Java (see talk ISAT201 tomorrow)
  • Code from WIRED, JAS, Atlas, Babar, LCD
  • In future JASWIRED will both become plugins for
    HEP Studio, part of FreeHEP Java library

7
JAS WIRED LCD
8
Example Analysis
9
Java and the GRID
  • Java has built-in support for distributed
    computing and Networking
  • Rather than move all the data to the user,
    transparently move code to data
  • Download JAVA analysis agents into remote
    server
  • flexible built-in padded cell protects server
    from analysis modules
  • Give user impression code is running locally

10
Will programming languages at all be relevant?
  • Not once we can say Computer please analyze
    the LEP data and compute the mass of the Higgs
  • Until then - Yes
  • GUI tools are important too but
  • The complexity of physics analysis algorithms are
    best expressed in terms of programs
  • Graphical representation of analysis is simply
    inadequate and inefficient

11
Can commercial products help meet our needs in
this area?
  • Yes we will not use a single tool, we will use
    many tools which can inter-operate
  • Some commercial
  • Some HENP specific
  • Home grown tools will always have a place
  • Our statistical usage of data and volume of data
    still tends to make mainstream commercial tools
    difficult to use

12
What is the role of modularity and abstract
interfaces?
  • Fundamental to good OO design
  • Separate interface keyword in Java language
    highlights importance of abstract interfaces
  • Separation of interface and implementation
  • Allows isolation of components within tools
  • Allows interoperability between tools
  • Allows user extensibility
  • Allows substitution or co-existence of
    components/tools
  • Prevents us getting stuck in a rut
  • PAW/CERNLIB

13
JAS Modules
14
  • AIDA Abstract Interface for Data Analysis
  • LHC/Lizard, JAS, Open Scientist, COLT
  • Interoperability/data exchange
  • Familiarity to users
  • Geant4 AIDA test bed

A I D A
C Program
C AIDA Implementation
A I D A
A I D A
Java AIDA Implementation
C Program
C -gt Java
A I D A
Java Program
Java AIDA Implementation
15
Do we want an all encompassing framework or a
collection of configurable tools?
  • Why not both?
  • JAS/FreeHEP provides set of highly modular tools
  • A framework which brings them all together
  • Framework is extensible and customizable
  • Users can pick and choose

16
Links
  • JAS http//jas.freehep.org
  • WIRED http//wired.cern.ch
  • FreeHEP Java Library http//java.freehep.org
Write a Comment
User Comments (0)
About PowerShow.com