Recent and Proposed Changes to ZOOM Recent entries Intended future additions Possibilities –D0 and CDF users can affect which new “possible” additions.

Slides:



Advertisements
Similar presentations
Understand and appreciate Object Oriented Programming (OOP) Objects are self-contained modules or subroutines that contain data as well as the functions.
Advertisements

Configuration management
Hash Tables CSC220 Winter What is strength of b-tree? Can we make an array to be as fast search and insert as B-tree and LL?
Introduction to Maven 2.0 An open source build tool for Enterprise Java projects Mahen Goonewardene.
Chapter 14 Graph class design John Keyser’s Modifications of Slides by Bjarne Stroustrup
Lecture 3 Getting Started with ITK!. Goals for this lecture Learn how to use Cmake Build ITK Example programs that use ITK.
Alternate Software Development Methodologies
JAS in SDA. My Experience My assignment was to use JAS to read SDA data and make plots. –I used OSDA and OSDAphysics to read SDA data. OSDA and OSDAphysics.
SE 450 Software Processes & Product Metrics Reliability: An Introduction.
Performance Analysis and Monitoring Facilities in CPN Tools Tutorial CPN’05 October 25, 2005 Lisa Wells.
MC-tester as tool for transition from F77 HEPEVT to C++ HepMC Nadia Davidson.
SE 555 Software Requirements & Specification 1 SE 555 Software Requirements & Specification Prototyping.
Robert M. Saltzman © DS 851: 4 Main Components 1.Applications The more you see, the better 2.Probability & Statistics Computer does most of the work.
Automated Tests in NICOS Nightly Control System Alexander Undrus Brookhaven National Laboratory, Upton, NY Software testing is a difficult, time-consuming.
Chapter 12: Simulation and Modeling Invitation to Computer Science, Java Version, Third Edition.
2010 New Math Standards. Mathematical Practices 1. Attend to precision 2. Construct viable arguments and critique the reasoning of others 3. Make sense.
2.1 The Addition Property of Equality
3.7. O THER G AME P HYSICS A PPROACHES Overview of other game engine physics approaches.
1 Introduction to Tool chains. 2 Tool chain for the Sitara Family (but it is true for other ARM based devices as well) A tool chain is a collection of.
Debugging, Build and Version Control Rudra Dutta CSC Spring 2007, Section 001.
SEAL V1 Status 12 February 2003 P. Mato / CERN Shared Environment for Applications at LHC.
Introduction to the Enterprise Library. Sounds familiar? Writing a component to encapsulate data access Building a component that allows you to log errors.
Chapter 12: Simulation and Modeling
Exercise problems for students taking the Programming Parallel Computers course. Janusz Kowalik Piotr Arlukowicz Tadeusz Puzniakowski Informatics Institute.
Framework for Automated Builds Natalia Ratnikova CHEP’03.
University of Kansas Electrical Engineering Computer Science Jerry James and Douglas Niehaus Information and Telecommunication Technology Center Electrical.
New ROOT Math Libraries W. Brown 1), M. Fischler 1), L. Moneta 2), A. Zsenei 2) 1) Fermi National Accelerator Laboratory, Batavia, Illinois, USA 2) CERN.
 To explain the importance of software configuration management (CM)  To describe key CM activities namely CM planning, change management, version management.
1 Software Development Configuration management. \ 2 Software Configuration  Items that comprise all information produced as part of the software development.
4 November Development, validation and maintenance of Monte Carlo event generators & generator services in the LHC era Development, validation and.
Introduction Advantages/ disadvantages Code examples Speed Summary Running on the AOD Analysis Platforms 1/11/2007 Andrew Mehta.
Making Good Code AKA: So, You Wrote Some Code. Now What? Ray Haggerty July 23, 2015.
New ROOT Mathematical Libraries SMatrix Package with matrix and vector classes of arbitrary type (initially developed by T. Glebe for HeraB software) complementary.
Introduction to Programming in R Department of Statistical Sciences and Operations Research Computation Seminar Series Speaker: Edward Boone
Software Status  Last Software Workshop u Held at Fermilab just before Christmas. u Completed reconstruction testing: s MICE trackers and KEK tracker.
Atlas Graphics Group MeetingDec, 1 The Colt Distribution - Open Source Libraries for High Performance Scientific and Technical.
G4MICE Status and Plans 1M.Ellis - CM24 - RAL - 31st May 2009  Firstly, a correction to the agenda:  I failed to spot a mistake in the agenda that I.
Feedback from the POOL Project User Feedback from the POOL Project Dirk Düllmann, LCG-POOL LCG Application Area Internal Review October 2003.
Update Chris Rogers, Analysis PC, 13/07/06. State of the “Accelerator” Simulation Field model now fully implemented in revised MICE scheme Sanity checking.
Good Morning! f Tuesday, 28 January FPCLTF and CLHEP Walter E. Brown f Fermi National Accelerator Laboratory Z O O M.
ECE 103 Engineering Programming Chapter 55 C Math Library Herbert G. Mayer, PSU CS Status 6/4/2014 Initial content copied verbatim from ECE 103 material.
SEAL-ROOT Math Plans for 2005 Math work package Andras Zsenei, Anna Kreshuk, Lorenzo Moneta, Eddy Offermann LCG Application Area Internal Review, 30 March,
HNDIT23082 Lecture 06:Software Maintenance. Reasons for changes Errors in the existing system Changes in requirements Technological advances Legislation.
Feedback from LHC Experiments on using CLHEP Lorenzo Moneta CLHEP workshop 28 January 2003.
Linear Algebra Libraries: BLAS, LAPACK, ScaLAPACK, PLASMA, MAGMA
FORTRAN History. FORTRAN - Interesting Facts n FORTRAN is the oldest Language actively in use today. n FORTRAN is still used for new software development.
OPERATING SYSTEMS CS 3530 Summer 2014 Systems and Models Chapter 03.
Lecture 4 Mechanisms & Kernel for NOSs. Mechanisms for Network Operating Systems  Network operating systems provide three basic mechanisms that support.
SPI NIGHTLIES Alex Hodgkins. SPI nightlies  Build and test various software projects each night  Provide a nightlies summary page that displays all.
Improving performance Matlab’s a pig. Outline Announcements: –Homework I: Solutions on web –Homework II: on web--due Wed. Homework I Performance Issues.
Parallel Programming & Cluster Computing Linear Algebra Henry Neeman, University of Oklahoma Paul Gray, University of Northern Iowa SC08 Education Program’s.
Linear Algebra Libraries: BLAS, LAPACK, ScaLAPACK, PLASMA, MAGMA Shirley Moore CPS5401 Fall 2013 svmoore.pbworks.com November 12, 2012.
20 October 2005 LCG Generator Services monthly meeting, CERN Validation of GENSER & News on GENSER Alexander Toropin LCG Generator Services monthly meeting.
Martin-Gay, Beginning Algebra, 5ed
Get your software working before putting it on the robot!
1 Programming and problem solving in C, Maxima, and Excel.
SimTK 1.0 Workshop Downloads Jack Middleton March 20, 2008.
CLHEP Infrastructure Improvements CHEP 2004 Lynn Garren, FNAL and Andreas Pfeiffer, CERN.
Martin Kruliš by Martin Kruliš (v1.0)1.
Introduction To Modeling and Simulation 1. A simulation: A simulation is the imitation of the operation of real-world process or system over time. A Representation.
OPERATING SYSTEMS CS 3502 Fall 2017
Integration of OCP and SIMULINK
Compiler Construction (CS-636)
StdHepC++ L. Garren Presented by M. Fischler
3.7. Other Game Physics Approaches
Hash Tables.
Chapter 2 Section 1.
Discussing an OVS/OVN Split
2 Equations, Inequalities, and Applications.
Presentation transcript:

Recent and Proposed Changes to ZOOM Recent entries Intended future additions Possibilities –D0 and CDF users can affect which new “possible” additions become actual Is it right to think about altering our mode of working now that the push to production is real?

Areas Special Functions CLHEP StdHepC++ Graded asserts From the Gurus gcc Collective Error Logging Possible or Probable

Gnu Scientific Library Special Functions Will other gsl sections be ZOOM-packaged –Could do some preemptively, but prefer to react to specific needs –At a minimum, we must think through and implement sensible C++-looking syntax for any section we incorporate into ZOOM Example: y = Ai(x) rather than Ai(double, double*) For many packages this may be non-trivial

Gnu Scientific Library Other Sections gsl includes –Numerical Integration –Monte Carlo Integration (including VEGAS) –Statistics –FFT –Equation solving –Minimization –Accelerated series convergence –Simulated annealing and … –Random numbers and distributions –Linear Algebra, Vectors, Matrices, and BLAS

Gnu Scientific Library Other Sections Will other gsl sections be packaged? –Could do some preemptively, but prefer to react to specific needs –At a minimum, we must think through and implement sensible C++-looking syntax for any section we incorporate into ZOOM Example: y = Ai(x) rather than Ai(double, double*) For many packages this may be non-trivial If we can’t spare this much time, package won’t go in Please don’t look for ZOOM to replace existing working ZOOM packages with gsl equivalents –Comparative testing takes a lot of work –If external work proves a major advantage, …

Gnu Scientific Library Special Functions Will other gsl sections be ZOOM-packaged –Could do some preemptively, but prefer to react to specific needs –At a minimum, we must think through and implement sensible C++-looking syntax for any section we incorporate into ZOOM Example: y = Ai(x) rather than Ai(double, double*) For many packages this may be non-trivial

CLHEP Moving some ZOOM packages  CLHEP –Exceptions –ErrorLogger –PhysicsVectors will derive from CLHEP classes This is going slowly –In all cases, ZOOM package will be kept in place so user code won’t need to change Random –Random Engine Factory –Object properties of distributions –Easy recipe for adding engines Zoom is not looking to add more engines per se –Additional distributions coming from gsl (e.g. Fdist) if users have specific needs!

StdHepC++ Intention is for a common format usable by generators, simulators, recon, and so forth Also utilities to move from that format to forms used by existing generators, simulators, … –hepevt StdHepC++ is CLHEP 1.5 –which is our latest ZOOM CLHEP release Major restructuring coming to take advantage of C++, make Particle class more standard and abstract, and separate particle properties form event relationships –A collision is a “Directed Acyclic Graph” of Particles/Vertices Possible coordination with HepMC, aimed at ATLAS

Graded Asserts assert1, assert2, assert3 (easiest to deactivate) controlled by NDEBUG, NDEBUG1, NDEBUG2, NDEBUG3 Same behavior as assert –Goes away completely when deactivated sanityCheck –assert that is to be left in even if NDEBUG is on Versions that route to the ErrorLogger –Elassert, ELwarningAssert, …

From the Gurus ZOOM is a fine place to keep the collection of useful small tools, contributed by experts in the experiments or the CD special projects group, which are carefully implemented and make good use of C++. Block a = {0.5, 1.2, 3.1, 4.2}; –std::container syntax, but simple enough to block- initialize IteratorFilter –behaves like an std::iterator but with a user-supplied filtering function. Simplifies loops. HolderPtr xptr; –when a HolderPtr is copied, a copy or clone is made of the pointed-to object To come: ZMnew allocator

gcc gcc (as of cvs checking we will do today!) is a working ZOOM platform coordinating with ISOcxx so standard C++ can be used –One library header (locales) is still missing –sstring is present but with caveates… Will be cutting a release ASAP because this is considered important –Debuggers –Memory leak tools available –Speed of compilation –Worry about KAI being acquired by Intel Will be seeing if the production build of CDF, and a “golden build” for a D0 release, will go smoothly with gcc.

Collective Error Logging New ELcollected destination derived from ELoutput –(so changes needed to use it are very minimal) Transport scheme must be provided by experiment –send ( nbytes, data ) –some way to know when data has arrived errlog ( nbytes, data ) on the server –will log that message in a sensible way More about this mechanism Thursday –Handholding to get it into a framework is appropriate

Possible and Probable Package of Boudreau generic-functions, automated derivatives, and approximations Splines –1-D splines already being tested Small correlation matrix objects –much less general, much simpler, faster than general Linear Algebra constructs Other gsl sections, if needs arise