TRANSP and Frameworks Presented by D. McCune at the Joint ORNL/IU Workshop on Computational Frameworks in Fusion, June 6, 2005.

Slides:



Advertisements
Similar presentations
Fitting transport models to 14MeV neutron camera data D C McDonald, K D Zastrow and I Voitsekhovitch.
Advertisements

CS0004: Introduction to Programming Visual Studio 2010 and Controls.
MIS 2000 Class 20 System Development Process Updated 2014.
Test Automation An Approach to Automated Software Regression Testing Presented by Adnet, Inc Feb 2015.
Cloud Computing Resource provisioning Keke Chen. Outline  For Web applications statistical Learning and automatic control for datacenters  For data.
MotoHawk Training Model-Based Design of Embedded Systems.
Nov. 17, 2008D. McCune1 Status of TRANSP and PTRANSP Presented at APS-DPP 2008, Nov , 2008 *Supported by U.S. DOE Contract No. DE-AC02-76CH03073.
1 Software & Grid Middleware for Tier 2 Centers Rob Gardner Indiana University DOE/NSF Review of U.S. ATLAS and CMS Computing Projects Brookhaven National.
Kashif Jalal CA-240 (072) Web Development Using ASP.NET CA – 240 Kashif Jalal Welcome to week – 2 of…
Chapter 1 and 2 Computer System and Operating System Overview
1 CS6320 – Why Servlets? L. Grewe 2 What is a Servlet? Servlets are Java programs that can be run dynamically from a Web Server Servlets are Java programs.
Nov. 8, 2010D. McCune1 Status of TRANSP Presented at APS-DPP 2010, Nov , 2010 *Supported by U.S. DOE Contract No. DE-AC02-09CH11466.
Sitefinity Performance and Architecture
Software Reengineering 2003 년 12 월 2 일 최창익, 고광 원.
The Project AH Computing. Functional Requirements  What the product must do!  Examples attractive welcome screen all options available as clickable.
The SAM-Grid Fabric Services Gabriele Garzoglio (for the SAM-Grid team) Computing Division Fermilab.
Introduction to Systems Analysis and Design Trisha Cummings.
QCDgrid Technology James Perry, George Beckett, Lorna Smith EPCC, The University Of Edinburgh.
Research on cloud computing application in the peer-to-peer based video-on-demand systems Speaker : 吳靖緯 MA0G rd International Workshop.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
ABSTRACT Zirous Inc. is a growing company and they need a new way to track who their employees working on various different projects. To solve the issue.
ElVis Developments for Simulation and Analysis Programs Tarun Pondicherry Summer 2006 Science Ed High School Intern Eliot Feibush, Mentor 8/16/2006.
1 Shawlands Academy Higher Computing Software Development Unit.
What is Sure BDCs? BDC stands for Batch Data Communication and is also known as Batch Input. It is a technique for mass input of data into SAP by simulating.
D. McCune 1 Plasma State Representation XPLASMA – Tool for Representation of Equilibrium, Fields and Profiles Available at:
Study of transport simulation on RF heated and current driven EAST plasma Siye Ding Under instruction of Prof. Baonian Wan 12/09/2009.
Codeigniter is an open source web application. It occupies a very small amount of space in the memory and is most useful for developers who aim to develop.
Usability Issues Documentation J. Apostolakis for Geant4 16 January 2009.
03/27/2003CHEP20031 Remote Operation of a Monte Carlo Production Farm Using Globus Dirk Hufnagel, Teela Pulliam, Thomas Allmendinger, Klaus Honscheid (Ohio.
Development of ORBIT Data Generation and Exploration Routines G. Shelburne K. Indireshkumar E. Feibush.
Database structure for the European Integrated Tokamak Modelling Task Force F. Imbeaux On behalf of the Data Coordination Project.
Program Development Life Cycle (PDLC)
ArcGIS Network Analyst: Automating Workflows with Geoprocessing
1 The Software Development Process  Systems analysis  Systems design  Implementation  Testing  Documentation  Evaluation  Maintenance.
3rd June 2004 CDF Grid SAM:Metadata and Middleware Components Mòrag Burgon-Lyon University of Glasgow.
Mantid Scientific Steering Committee Nick Draper 10/11/2010.
ITPA/IMAGE 7-10 May 2007 Software and Hardware Infrastructure for the ITM B.Guillerminet, on behalf of the ITM & ISIP teams (P Strand, F Imbeaux, G Huysmans,
1 st December 2003 JIM for CDF 1 JIM and SAMGrid for CDF Mòrag Burgon-Lyon University of Glasgow.
The european ITM Task Force data structure F. Imbeaux.
CE Operating Systems Lecture 3 Overview of OS functions and structure.
TRANSP users meeting Agenda 1.TRANSP development in 2010/2011, user’s suggestions to facilitate/accelerate TRANSP submissions. 2.TRANSP work:
Introduction to Computer Application (IC) MH Room 517 Time : 7:00-9:30pm.
Framework for MDO Studies Amitay Isaacs Center for Aerospace System Design and Engineering IIT Bombay.
RF codes for Transp Transp User Course 2014 Jim Conboy.
The Software Development Process
The EDGeS project receives Community research funding 1 Porting Applications to the EDGeS Infrastructure A comparison of the available methods, APIs, and.
Sept. 19, 2007D. McCune1 TRANSP and PTRANSP: Status and Plans Presented at JET/MAST TRANSP Users’ Meeting, Sept. 19, 2007.
Chapter 6 CASE Tools Software Engineering Chapter 6-- CASE TOOLS
Nov. 2, 2009D. McCune1 Status of TRANSP and PTRANSP Presented at APS-DPP 2009, Nov. 2--6, 2009 *Supported by U.S. DOE Contract No. DE-AC02-09CH11466.
Hysteresis in the L-H-L transition, D C McDonald, ITPA, Princeton 20091/22 Hysterics in the L-H transition D C McDonald.
D. McCune 1 PTRANSP Predictive Upgrades for TRANSP.
Firmware - 1 CMS Upgrade Workshop October SLHC CMS Firmware SLHC CMS Firmware Organization, Validation, and Commissioning M. Schulte, University.
Plasma State Component. Software Status Current Version: 1.001; no recent updates. Implemented as 3 libraries layered over the NTCC library set: xplasma,
DISCUSSION OF ISSUES, OPPORTUNITIES AND CONCLUSIONS FOR ROTATION AND MOMENTUM TRANSPORT SESSIONS 10th ITPA Transport Physics and CDBM TG Meetings Princeton.
045-05/rs PERSISTENT SURVEILLANCE FOR PIPELINE PROTECTION AND THREAT INTERDICTION Taming The Physics For Commercial Fusion Power Plants ARIES Team Meeting.
Jim Conboy / DPGTF-H 20-May Toric at JET – Status & Tools Work in Progress – See for latest.
AHM04: Sep 2004 Nottingham CCLRC e-Science Centre eMinerals: Environment from the Molecular Level Managing simulation data Lisa Blanshard e- Science Data.
SPI NIGHTLIES Alex Hodgkins. SPI nightlies  Build and test various software projects each night  Provide a nightlies summary page that displays all.
1 The Software Development Process ► Systems analysis ► Systems design ► Implementation ► Testing ► Documentation ► Evaluation ► Maintenance.
NSTX Team Meeting - Physics Analysis September 25, 2003 C.K. Phillips and S. Kaye.
Application Development in Engineering Optimization with Matlab and External Solvers Aalto University School of Engineering.
Navigation Framework using CF Architecture for a Client-Server Application using the open standards of the Web presented by Kedar Desai Differential Technologies,
Building PetaScale Applications and Tools on the TeraGrid Workshop December 11-12, 2007 Scott Lathrop and Sergiu Sanielevici.
Some of the utilities associated with the development of programs. These program development tools allow users to write and construct programs that the.
MANAGEMENT INFORMATION SYSTEM
Fast Ion Transport Options in TRANSP Presented at Energetic Particle SFG Meeting, PPPL June – D. McCune.
Introduction to Visual Basic 2008 Programming
The Client/Server Database Environment
Status of TRANSP and PTRANSP
Automation of Control System Configuration TAC 18
Presentation transcript:

TRANSP and Frameworks Presented by D. McCune at the Joint ORNL/IU Workshop on Computational Frameworks in Fusion, June 6, 2005

Outline of Talk TRANSP Background Information: –What is TRANSP; Applications of TRANSP. –Users, Developers, Funding profile. FusionGrid TRANSP. TRANSP Code Generators – Python. TRANSP Makefile Generators – Development Environment. Requirements for Frameworks.

What is TRANSP? “1.5D” time dependent tokamak transport simulation tool: –2d axisymmetric tokamak reduced to 1d by using standard “flux coordinate” methods. Major application: analysis of experimental data from tokamaks. Major strengths: –Physics: e.g. validated fast ion models. –Operations: effective workflow & support. Under continuous development since 1978!

Applications of TRANSP Transport and confinement studies (with or without ITB, H-mode, etc.). Neutral beam heating simulation; computation of fast ion distributions. RF heating and current drive simulations. Diagnostics simulations. Predictive calculations for experimental proposals.

Applications of TRANSP (cont.) Many groups report use of TRANSP results in conference papers and refereed journal articles. Two examples follow: –Tritium Transport on JET (I. Voitsekovitch). –NPA Simulations on NSTX (S. Medley). Numerous other examples could have been chosen.

TRANSP at JET Trace Tritium: Thermal Tritium Transport: 14 MeV neutrons measured along 19 chords (left) are reproduced in TRANSP by using a proper adjustment of Tritium transport coefficients (right, 6 bottom chords are shown) 2 techniques have been used: (1) Dt and Vt are adjusted in TRANSP; (2) novel use - combined TRANSP/SANCO analysis - plasma reactivity is extracted from TRANSP using 20 runs and transmitted to SANCO for automatic estimation of Dt and Vt by minimising  2 -value Publications: K.-D. Zastrow and JET team (EPS 2004, PPCF, 2004 in press), I. Voitsekhovitch, et al., Trace Tritium transport in H-mode JET plasma with different density, JET pinboard, waiting for clearance, to be submitted to Phys. Plasmas and also in EPS 2004; J. Mailloux et al, EPS 2004; P. Belo et al., EPS 2004; D. Stork and JET team, IAEA 2004; D. Stork and JET team, APS 2004

MHD-Induced Fast Ion Losses in NSTX S. Medley et al., Nucl. Fusion 44(2004)

TRANSP Developers and Users PPPL TRANSP team: –R. Andre, A. Brooks, F. Dahlgren, E. Feibush, K. Indireshkumar, S. Klasky, L. P. Ku, C. Ludescher, D. McCune, L. Randerson ~5 FTE for TRANSP & related efforts. –Major focus on production & support… User Sites: –Culham (MAST) –GA (DIII-D) –IPP/Garching (Asdex-U) –JET –MIT (C-Mod) –PPPL (NSTX) –PPPL (Collaborations)

FY05 PPPL TRANSP Funding NSTX/MAST (approx FTE, 60%) DIII-D collaboration (0.9 FTE, 25%) C-Mod collaboration (0.25 FTE, 7%) JET collaboration (0.25 FTE, 7%) Tokamak Projects Total: 3.55 FTE R&D Projects (1.45 FTE): –PTRANSP (predictive upgrade), 0.6 FTE –SciDAC FusionGrid (2 year renewal grant), 0.85 FTE

Outline of Talk TRANSP Background Information. FusionGrid TRANSP: –TRANSP as a Computational Service. –TRANSP Workflow; Workflow Automation. –Future: Linked, Distributed Services. TRANSP Code Generators – Python TRANSP Makefile Generators – Development Environment. Requirements for Frameworks.

FusionGrid TRANSP TRANSP runs as a service on PPPL Linux cluster machines. –User authentication via Globus. –Credit to SciDAC Fusion Collaboratory Project. Users submit run requests via supported client software tools. Users can monitor system load and watch progress of runs, access log files, etc. Website:

TRANSP Client Tools, Services Prepare Input Data. Submit runs. Monitor run progress; view log files. Fetch interim data. Option to cancel run prior to completion. Explore, visualize output data. Crashed runs debugged by TRANSP support staff at PPPL.

access via

FusionGrid TRANSP Annual Run Production *FusionGrid TRANSP Operational Since September 2002

FusionGrid TRANSP Workflow Preliminary data Analysis and Preparation (largely automated) Diagnostic Hardware Experiments (CMod, DIII-D, JET, MAST, NSTX) signals {f(t), f(x,t)} Plasma position, Shape, Temperatures, Densities Field, Current, RF and Beam Injected Powers. TRANSP Analysis*: Current diffusion, MHD equilibrium, fast ions, thermal plasma heating; power, particle and momentum balance. Experiment simulation Output Database ~ signals {f(t), f(x,t)} Visualization Load Relational Databases Detailed (3d) time-slice physics simulations (GS2, ORBIT, M3D…) *FusionGrid TRANSP now executes on PPPL servers; GS2 and other grid services are planned for the future. Pre- and Post-processing at the experimental site…

Workflow Automation User-programmable automated data preparation is key to system productivity. –IDL (many legacy tools in fusion program). –UREAD/SGLIB and other legacy fortran tools*. Also important: –convenient tools for submission and web- based monitoring of runs. –User-programmable automated visualization, database loading, and further post-processing. D. McCune 23 Apr 2004 *available at

TRANSP Workflow Caveats The software technology used is ancient. –But: familiar to current users. The workflow volumes (dataset sizes) are small, so far. –So, no motivation yet for transition to high performance solutions. The potential for generation of larger datasets exists. –Current practice may be a limiting factor.

TRANSP FusionGrid Future: Linked, Distributed Services. Serial TRANSP at PPPL Parallel RF Wave Solver (TORIC at MIT) Parallel Monte Carlo Fast Ion Model (NUBEAM at PPPL) Multi-site Globus Forwarded Authentication Possible issues: Firewalls Resource sharing Queue wait time. Data transfer times.

Outline of Talk TRANSP Background Information. FusionGrid TRANSP. TRANSP Code Generators – Python: –Ad hoc data specification languages. –Python code generators. TRANSP Makefile Generators – Development Environment. Requirements for Frameworks.

Code Generators Many i/o interfaces of TRANSP are written by code generators (Python scripts). –Measured once to be ~25% of fortran lines. Code generator input: list of data items. Code generator output: –Anything needing to be driven by the list: Fortran namelists, “state” or restart file i/o routines, documentation, allocate/deallocate routines, default/initialization routines, plot labeling routines, Fortran-90 type definition modules, debugging…

Ad Hoc Languages Custom, ad hoc, requirements-driven “language” for each list. Example: NTCC NUBEAM “nbspec.dat”*: –Sections: Array_Dimensions, Constants, Inputs, Internal, Outputs. –“nbigen.py” writes code for internal data structures, public modules defining input/output data structures, input default settings, state file i/o, html documentation, … *see

Ad Hoc Languages Section: Inputs # from nbspec.dat… … … Block: Atomic ! Atomic physics controls (defaults shown). D xdepmod = 1.0d0 ! Anomolous deposition opacity adjust. L nlbbcx =.TRUE. !.FALSE. to disable beam-beam ch.ex. … … Section: Outputs … … orb%DAS sorbn0(mj,mig,mibs) ! Thermal neutral source ! due to deposition or charge exchange recapture of fast ! neutrals, vs. x, thermal ion, fast ion; “orb” MPI_reduce. Key: D means REAL*8, L means LOGICAL A means ARRAY, S means “in State File”,…

Code Development Automation Code generators organize i/o and “book- keeping” aspects of code. –They make it easy to add inputs & outputs: (a) edit specification file. (b) run generator python script. –Less error prone than hand-maintained methods, where list-driven requirements exist. –Allows greater focus on physics coding. Key to long term success of TRANSP.

Python Chosen for Code Generators Early TRANSP code generators were written in fortran-77 or C, but… Much easier / faster to work with Python. –Python “dictionary” and “list” data structures perfect for code generator application. –Fast prototype / debug cycle. –Python has excellent error reporting. –Python has excellent tutorial and reference documentation (e.g. O’Reilly books).

Outline of Talk TRANSP Background Information. FusionGrid TRANSP. TRANSP Code Generators – Python TRANSP Makefile Generators – Development Environment: –Makefile generator system. –Resulting benefits for code developer. –Issues / Limitations. Requirements for Frameworks.

TRANSP Developers do not edit Makefiles… Makefiles are written by makefile generator for: –Subroutine libraries (179). –Executables (220). Supported by script database with information on various fortran compilers… Library makefiles based on contents of library source directory: –F90 module dependency analysis included.

TRANSP Makefile Generator Linkage for executables defined by separate file containing ordered list of objects and libraries: > cat foo_exe.link foo_main.o foo_sub1.a foo_sub2.a $L_NETCDF $L_LAPACK $L_FFTW Elements:.o – from TRANSP source..a – from TRANSP source. $L_ -- non-TRANSP dependency.

Command Line Interface cmsmms -- generate makefile for library. uplib -- update (build) library. makelink -- generate makefile for executable. uplink -- update executable. These commands build “standard” (i.e. non-debug) libraries and executables.

Debug builds dbxadd -- add single source to debug list. –F90 module dependencies added automatically. dbxaddlib -- add entire library to debug list. uplink debug – build debug executable. –Makefile for custom debug executable is built; only named items are debug compiled.

Benefits Relieves developer of makefile maintenance requirement. –Hand built makefiles become nightmares… Precise control of generation of debug executables. Easy to learn. Saves time.

Drawbacks / Limitations Monolithic – not easily transferable outside the TRANSP project. Too much dependency on ancient csh scripts (awkward to maintain). Certain peculiarities, due to a lapsed VMS compatibility requirement, persist… We are looking at SCONS for possible upgrade or replacement… Advice of CS experts would be welcome!

Outline of Talk TRANSP Background Information. FusionGrid TRANSP. TRANSP Code Generators – Python TRANSP Makefile Generators – Development Environment. Requirements for Frameworks. –Generic Requirements. –Requirements Checklist. –Compatibility with CS Research (?).

Generic Requirements Non-invasive; light-weight. –No motivation for massive project to convert an existing, working system. –Evolutionary method needed for introduction of new technology. Simple things must be simple, complicated things must be possible. Well engineered. –Robustness, ease-of-use, documentation…

Requirements Checklist Technical assessment: –Computational resources needed. –Data management issues to be faced. Sociological assessment: –Define benefit to end user. –Define cost to end user (e.g. skills to learn). –Define benefit to code developer. –Define cost to developer (e.g. skills to learn).

Requirements vs. CS Research Are the deployment requirements for a production scientific application compatible with CS research constraints? –How are engineering issues handled: robustness, error handling, documentation… –Who finances such expensive work? Shouldn’t production deployment be viewed as the “experimental program” for software technology research?

Example of adoption of new software technology in the TRANSP project: introduction of Python for code generator applications.

The End. Hopefully, the perspective derived from TRANSP experience will be helpful. But, it is only one perspective…