170 likes | 285 Views
Coherent Software Framework a Proposal. LCG meeting CERN- 11 June Ren é Brun. ftp://root.cern.ch/root/blueprint.ppt. Way 1: the component model. A. PROs: In principle easy to add or replace a component because of weak coupling. C’. B. C. D. E. G. F. H. I.
E N D
Coherent Software Frameworka Proposal LCG meeting CERN- 11 June René Brun ftp://root.cern.ch/root/blueprint.ppt Blueprint RTAGs
Way 1: the component model A PROs: In principle easy to add or replace a component because of weak coupling C’ B C D E G F H I In reality, you simply postpone the integration problem if the number of components is > N eg N> 10 L J K J’ ... Blue print RTAG
The main software areas DAQ Online GRID middleware Event Models Folders Event Generators RDBMS run/file catalogs Object persistencyv Object persistencyv Event Display Dectector Simulation System services Histograming Fitting 2-d, 3-d graphics Ntuple analysis Detector Geometry Math Libs Statistics GUI Toolkits Interpreters Blue print RTAG
Any box connected to many boxes DAQ Online GRID middleware Event Models Folders Event Generators RDBMS run/file catalogs Object persistencyv Object persistencyv Event Display Dectector Simulation System services Histograming Fitting 2-d, 3-d graphics Ntuple analysis Detector Geometry Math Libs Statistics GUI Toolkits Interpreters Blue print RTAG
Any box connected to many boxes DAQ Online GRID middleware Event Models Folders Event Generators RDBMS run/file catalogs Object persistencyv Object persistencyv Event Display Dectector Simulation System services Histograming Fitting 2-d, 3-d graphics Ntuple analysis Detector Geometry Math Libs Statistics GUI Toolkits Interpreters Blue print RTAG
Any box connected to many boxes DAQ Online GRID middleware Event Models Folders Event Generators RDBMS run/file catalogs Object persistencyv Object persistencyv Event Display Dectector Simulation System services Histograming Fitting 2-d, 3-d graphics Ntuple analysis Detector Geometry Math Libs Statistics GUI Toolkits Interpreters Blue print RTAG
Way 2: Framework with Object bus User Applications Higher level framework services Experiment framework Higher level framework services Higher level framework services Higher level framework services Higher level framework services User Applications Object bus: Object dictionary Data Interface (I/O): Functional Interface Blue print RTAG
Evidence • It takes time to build solid fundations • more than 6 years for Geant3, PAW, ROOT • The process must be validated by users • in different experiments • in different configurations • In the long term, users prefer general purpose frameworks to experiment-specific frameworks because users work in 3, 4 experiments during the life time of any framework • People vote with their feet Blue print RTAG
Object Persistency Continue current developments in ROOT I/O Foreign classes Support for STL Improved Trees TLongRefs Interface to Catalogs Large files > 2 Gbytes Implement in TStreamerInfo in interpreted mode what is currently generated by Rootcint DAQ Online GRID middleware Event Models Folders Event Generators RDBMS run/file catalogs Object persistencyv Object persistencyv Event Display Dectector Simulation System services Histograming Fitting 2-d, 3-d graphics Ntuple analysis Detector Geometry Math Libs Statistics GUI Toolkits Interpreters Blue print RTAG
CINT, Python, Java, C# DAQ Online GRID middleware Event Models Folders Facilitate automatic interfaces to Python and Java Current implementations are slow Root dictionary could be exploited to improve run time. Event Generators RDBMS run/file catalogs Object persistencyv Object persistencyv Event Display Dectector Simulation System services Histograming Fitting 2-d, 3-d graphics Ntuple analysis Detector Geometry Math Libs Statistics GUI Toolkits Interpreters Blue print RTAG
GUI Toolkits DAQ Online GRID middleware Event Models Folders Consolidate the TVirtualX interface Complete TVirtualX/Qt implementation Implement TVirtualX/FOX (free/fast on Windows) Export script from a running GUI Build GUI from a given script GUI editor/builder Event Generators RDBMS run/file catalogs Object persistencyv Object persistencyv Event Display Dectector Simulation System services Histograming Fitting 2-d, 3-d graphics Ntuple analysis Detector Geometry Math Libs Statistics GUI Toolkits Interpreters Blue print RTAG
Simulation program Geant3-based Geant4-based Fluka-based C++ classes Geometry package MySQL Reconstruction program Detector geometry A very important element Request number 1 at ROOT FNAL workshop 2001 Work in progress with ALICE Huge interest in many experiments I have a complete talk on this DAQ Online GRID middleware Event Models Folders Event Generators RDBMS run/file catalogs Object persistencyv Object persistencyv Event Display Dectector Simulation System services Histograming Fitting 2-d, 3-d graphics Ntuple analysis Detector Geometry Math Libs Statistics GUI Toolkits Interpreters Blue print RTAG
The main software areas DAQ Online GRID middleware Event Models Folders Event Generators RDBMS run/file catalogs Object persistencyv Object persistencyv Event Display Dectector Simulation System services Histograming Fitting 2-d, 3-d graphics Ntuple analysis Detector Geometry Math Libs Statistics GUI Toolkits Interpreters Blue print RTAG
The main software areas DAQ Online GRID middleware Event Models Folders Event Generators RDBMS run/file catalogs Object persistencyv Object persistencyv Event Display Dectector Simulation System services Histograming Fitting 2-d, 3-d graphics Ntuple analysis Detector Geometry Math Libs Statistics GUI Toolkits Interpreters Blue print RTAG
The main software areas DAQ Online GRID middleware Event Models Folders Event Generators RDBMS run/file catalogs Object persistencyv Object persistencyv Event Display Dectector Simulation System services Histograming Fitting 2-d, 3-d graphics Ntuple analysis Detector Geometry Math Libs Statistics GUI Toolkits Interpreters Blue print RTAG