Mantid Architecture Straw man proposal Nick Draper 24 th August 2007.

Slides:



Advertisements
Similar presentations
Develop an Information Strategy Plan
Advertisements

Instructed by: Ofir Erel Performed by: Adam Levi Marina Skarbovsky.
25/03/2003Simulation Application for the LHCb Experiment CHEP March 2003 Presented by: W. Pokorski / CERN Authors: I. Belyaev, Ph. Charpentier,
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Object Linking and Embedding A tool which allows different software application packages to share data.
6/1/2001 Supplementing Aleph Reports Using The Crystal Reports Web Component Server Presented by Bob Gerrity Head.
TerraForm3D Plasma Works 3D Engine & USGS Terrain Modeler Heather Jeffcott Craig Post Deborah Lee.
Gaudi Framework Tutorial, April Introduction.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Oct 26, 2005 CDT DOM Roadmap Doug Schaefer. Parser History  CDT 1.0 ► JavaCC based parser  Used to populate CModel and Structure Compare ► ctags based.
Mantid Scientific Steering Committee Nick Draper 10/11/2010.
Mantid Development introduction Nick Draper 11/04/2008.
Nick Draper 05/11/2008 Mantid Manipulation and Analysis Toolkit for ISIS data.
GLAST Gaudi Code Review, 10 Sept. 2002, H. Kelly, 2-1 GLAST Event Data Model and Persistency.
Analysis of the ROOT Persistence I/O Memory Footprint in LHCb Ivan Valenčík Supervisor Markus Frank 19 th September 2012.
HIT2037- HIT6037 Software Development in Java 22 – Data Structures and Introduction.
Introduction to Gaudi LHCb software tutorial - September
9 Associators How to relate objects to each other Create relations Save relations Use relations: Associators.
An Introduction to Software Engineering
Mantid Stakeholder Review Nick Draper 01/11/2007.
GDB Meeting - 10 June 2003 ATLAS Offline Software David R. Quarrie Lawrence Berkeley National Laboratory
Marco Cattaneo, 15-Sep OO software plans  Major milestone (presented last June) Fully functional SICB replacement by mid-2000  How to get there?
- Early Adopters (09mar00) May 2000 Prototype Framework Early Adopters Craig E. Tull HCG/NERSC/LBNL ATLAS Arch CERN March 9, 2000.
Introduction What is detector simulation? A detector simulation program must provide the possibility of describing accurately an experimental setup (both.
1 COMPUTER SCIENCE DEPARTMENT COLORADO STATE UNIVERSITY 1/9/2008 SAXS Software.
Mantid Stakeholder Review Nick Draper 01/11/2007.
WHAT IS THE VALUE OF X? x = 0 for value in [3, 41, 12, 9, 74, 15] : if value < 10 : x = x + value print x.
Detector Description in LHCb Detector Description Workshop 13 June 2002 S. Ponce, P. Mato / CERN.
23/2/2000Status of GAUDI 1 P. Mato / CERN Computing meeting, LHCb Week 23 February 2000.
Declarative Languages and Model Based Development of Web Applications Besnik Selimi South East European University DAAD: 15 th Workshop “Software Engineering.
CERN Tutorial, February Introduction to Gaudi.
Mantid: A new approach to data analysis at large scale facilities Jon Taylor Project WIKI (Binary downloads)
Prospects for Integrating Veloroot into GAUDI D. Steele - 24/11/1999.
N ATIONAL E NERGY R ESEARCH S CIENTIFIC C OMPUTING C ENTER Charles Leggett Prototype GEANT4 Service for ATHENA framework ATLAS Software Workshop Dec 3.
V-Shaped Software Development Life Cycle Model. Introduction: Variation of water fall model. Same sequence structure as water fall model. Strong emphasis.
Peter ClarkeATLAS software week / Berkley 9-13 May 2000ATLFAST status report Status of ATLFAST integration into Gaudi P.Clarke H.Phillips E. Richter-Was.
Ganga/Dirac Data Management meeting October 2003 Gennady Kuznetsov Production Manager Tools and Ganga (New Architecture)
Gaudi Framework Tutorial, April Histograms And N-tuples.
9 Associators How to relate objects to each other Create relations Save relations Use relations: Associators.
Integrating and Extending Workflow 8 AA301 Carl Sykes Ed Heaney.
MEMORY is part of the Central Processing Unit, or CPU, where data and information are stored. There are two main types of memory in a computer – RAM.
Mantid Scientific Steering Committee Nick Draper 18/06/2010.
Copyright Office Material Copyright Request System.
Cofax Scalability Document Version Scaling Cofax in General The scalability of Cofax is directly related to the system software, hardware and network.
Gaudi Framework Tutorial, April Histograms And N-tuples.
Modularization of Geant4 Dynamic loading of modules Configurable build using CMake Pere Mato Witek Pokorski
Evolution and History of Programming Languages
Root I/O and the Gaudi Framework
SNiPER在LHAASO实验中的应用: LodeStar
Migration of reconstruction and analysis software to C++
GLAST Gaudi Review T. Burnett H.Kelly 10 Sept 02 Gaudi code review
A451 Theory – 7 Programming 7A, B - Algorithms.
Investigating multiple scattering with McStas
SW Architecture SG meeting 22 July 1999 P. Mato, CERN
Implementation Process and What the Consultant Does
5 Steps to file your objections/ suggestions on KUDA Master Plan 2041
Raw Event Conversion Service in BOSS framework
BZHelp Review 25-Oct-14.
Use Of GAUDI framework in Online Environment
Reportnet 3.0 Database Feasibility Study – Approach
Company Name Your Logo Here Company Phone
YOUR LOGO HERE COMPANY COMPANY PHONE
Company Name Company Phone Your Logo Here
Photo Classification Evaluation Tool
COMPANY PHONE YOUR LOGO HERE COMPANY
COMPANY NAME YOUR LOGO HERE COMPANY PHONE
YOUR LOGO HERE COMPANY COMPANY PHONE
COMPANY NAME COMPANY PHONE YOUR LOGO HERE
YOUR COMPANY NAME | COMPANY PHONE YOUR COMPANY NAME | COMPANY PHONE
YOUR LOGO HERE COMPANY COMPANY PHONE
Presentation transcript:

Mantid Architecture Straw man proposal Nick Draper 24 th August 2007

GAUDI strengths The GAUDI framework has been built and supported in use for several years, and a lot of careful planning has gone into its design. Adding new algorithms is relatively straightforward. The GAUDI system has volumous amounts of documentation, however some of this is out of date The GAUDI framework comes with several Histogram classes that provide built in functionality for free. GAUDI has many associated services built in, of which several are useful.

GAUDI weaknesses Designed to process event based data. –Event loop, and assumptions based on this. Heavy to compile and install –linked packages ROOT, HBOOK etc JobOptions files are confusing and do not fit with ad-hoc or iterative anaylsis. The implicit use of converters makes understanding of the framework difficult.

Proposed architecture Based on GAUDI. Rewritten with neutron scattering in mind. Start from a blank project –Add & edit classes from GAUDI one at a time. –Write unit tests for each class. –Gain a better understanding of the inner workings. –May initially be slower than starting with GAUDI as a whole.

Changes from GAUDI The event loop inherent in the architecture will be removed and replaced by a more flexible analysis workflow. All references to the ROOT, HBOOK and GEANT4 software packages will be removed –Replaced where necessary by light weight implementations with greater relevance to the neutron scattering. Converter architecture used for implicit loading and saving of data to persistent stores will be replaced by explicit algorithms to load and persist data. A new type of temporary data service - Managed Data Service –Actively manage the memory use of the objects contained within it. Job Options - split the system wide settings from the algorithms settings and workflow.

Algorithms & Persistency

Temporary Data Services

Data Structure (1)

Data Structure (2)

Concerns What about workspaces? –Perhaps data objects that can be mapped on top of other data? How does the GAUDI - python integration fit with this. Team resources.

Suggested timeline 28 Aug – 10 Sept –Architecture design document, complete draft and review 07 Sept –First Prioritisation meeting 10 Sept – 8 Oct –First development cycle