MAY 18, 2016 BARRY SMITH MATHEMATICS AND COMPUTER SCIENCE DIVISION ARGONNE NATIONAL LABORATORY WEBINAR SERIES: COLLABORATION AMONG THE IDEAS SCIENTIFIC.

Slides:



Advertisements
Similar presentations
A Taste of Visual Studio 2005 David Grey. Introduction In this session we will introduce Visual Studio 2005 and its features and examine those features.
Advertisements

1 Unit 02. Visual Studio Visual Studio.NET Creating Projects Project Anatomy Using the IDE Code Snippets.
PROCESS FRAMEWORK Lecture - 3. Topics covered PROCESS FRAMEWORK PROCESS MODELS DIFFERENCE.
Lecture 3 Getting Started with ITK!. Goals for this lecture Learn how to use Cmake Build ITK Example programs that use ITK.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System modeling 2.
COMS 4115 Programming Language and Translator Tsung-Kai Lin(tl2450) Jie Huang(jh3105) Fang Da(fd2263) Ran Wang(rw2409) Shao-Chuan Wang(sw2644) Computer.
Requirements Analysis 5. 1 CASE b505.ppt © Copyright De Montfort University 2000 All Rights Reserved INFO2005 Requirements Analysis CASE Computer.
Supplement 02CASE Tools1 Supplement 02 - Case Tools And Franchise Colleges By MANSHA NAWAZ.
fmsinc.com/dotnet 1 of 13 fmsinc.com/dotnet 2 of 13 Improving.NET code one line at a time.
L EC. 01: J AVA FUNDAMENTALS Fall Java Programming.
How to install CGAL Yuanzhen Wang. What is CGAL Computational Geometry Algorithms Library “Provide easy access to efficient and reliable geometric algorithms.
Knowledge Science & Engineering Institute, Beijing Normal University, Analyzing Transcripts of Online Asynchronous.
Computer Science 210 Computer Organization Modular Decomposition Making a Library Separate Compilation.
ISPW Natural Demo Mar 2011 Created by the kindness of CN Rail using the their Test ISPW system Through the efforts of Paul Vaenas CN - IT - Release Management.
Software Configuration Management (SCM)
These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer.
4.x Performance Technology drivers – Exascale systems will consist of complex configurations with a huge number of potentially heterogeneous components.
The NetBeans IDE CSIS 3701: Advanced Object Oriented Programming.
Teaching with Wikis Ken Baclawski College of Computer and Information Science.
Chapter 1: A First Program Using C#. Programming Computer program – A set of instructions that tells a computer what to do – Also called software Software.
Software Engineering in Robotics Packaging and Deployment of Systems Henrik I. Christensen –
Makefiles. makefiles Problem: You are working on one part of a large programming project (e. g., MS Word).  It consists of hundreds of individual.cpp.
Version control Using Git Version control, using Git1.
Developing C/C++ applications with the Eclipse CDT David Gallardo.
1 3. Computing System Fundamentals 3.1 Language Translators.
Version Control Systems with Subversion (SVN) and Tortoise.
Computer Science and Engineering The Ohio State University  Widely used, especially in the opensource community, to track all changes to a project and.
Installing CompuCell3D from source Maciej Swat Biocomplexity Institute, Indiana University.
NA-MIC National Alliance for Medical Image Computing Slicer Building and Deployment Steve Pieper, PhD.
Productivity Tools Ken Nguyen Department of Information Technology Clayton State University.
AliRoot Implementation of native CMake build system A. Grigoras, P. Hristov 19/11/20141Alice - CMake.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 22 Slide 1 Software Verification, Validation and Testing.
Perforce Software Version Everything.. Visual Studio Industry Partner Perforce Software NEXT STEPS Contact us at: Perforce products.
CMake refactoring P. Hristov 19/03/2014. History I  Recursive makefiles (F.Carminati):  Problems in dependencies  Slow  "Recursive Makefiles.
Programming with Visual C++ A short review of the process.
C++ and Ubuntu Linux Review and Practice CS 244 Brent M. Dingle, Ph.D. Game Design and Development Program Department of Mathematics, Statistics, and.
Discovery Informatics Workshop Social Computing Challenges DRAFT.
Amir Iqbal L Mahwish Khan L Rabia Akhtar L Nida Sarwar L Cloud Computing Based – Online IDE.
Low-Level Virtual Machine support for Eclipse C/C++ Development Tooling Petri Tuononen - 17/5/2011.
Java Example Presentation of a Language. Background Conception: Java began as a language for embedded processors in consumer electronics, such as VCR,
Team Foundation Server Petr Moravek Senior Premier Field Engineer Microsoft.
Software Development Introduction
Milan, 15 June 2001WP1 Meeting - F. Donno1 GRID Packaging and Code Management for WP1 F. Donno INFN - Pisa.
Build Tools 1. Building a program for a large project is usually managed by a build tool that controls the various steps involved. These steps may include:
Virtual techdays INDIA │ November 2010 Building Visual Studio LightSwitch Application Kunal Chowdhury │ Software Engineer, Silverlight MVP.
An EPICS IDE Using Eclipse Kenneth Evans, Jr. Presented at the EPICS Collaboration Meeting June 15, 2006 Argonne National Laboratory, Argonne, IL.
Modeling with Rational Rose Huzefa Kagdi Software Development Laboratory Department of Computer Science Kent State University Kent Ohio, USA.
TEAM FOUNDATION VERSION CONTROL AN OVERVIEW AND WALKTHROUGH By: Michael Mallar.
Sung-Dong Kim Dept. of Computer Engineering, Hansung University Chapter 3 Programming Tools.
Managing Database objects in Visual Studio and Team Foundation Server Presented by Sean P SQL Saturday - Phoenix 2016.
Part 1 The Basics of Information Systems. Purpose of Information Systems Information systems ◦ Collects, stores and organizes information ◦ Retrieves.
NALINI S. NAUTIYAL SYSTEM SOFTWARE DIVISION Subversion.
In an increasingly competitive industry is certified by a recognized provider as Microsoft exam will dramatically improve your chances busy. Microsoft.
Chapter 25 – Configuration Management 1Chapter 25 Configuration management.
CMake: Experience in ALICE P. Hristov 19/06/12. History I Recursive makefiles (F.Carminati): – Problems in dependencies – Slow "Recursive Makefiles.
CMake - Cross-Platform Make R. Douglas Barbieri Made to Order Software Corporation.
These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer.
Examples Data Driven, Event Driven Typical Architecture Building Ogre
Component and Deployment Diagrams
The 500 builds of 300 applications in the HeLmod repository will at least get you started on a full suite of scientific applications Aaron Kitzmiller,
Open Source Software Development Environment
SE goes software engineering; (practically) managing the Compose
Jie Liu, Ph.D. Professor and Chair Department of Computer Science
Version control, using Git
Chapter 7 –Implementation Issues
THE NORMAL DISTRIBUTION AND THE 68–95–99.7% RULE
Object Oriented Progamming Laboratory
DevOps - Visual Studio Release Management Jump Start
SE goes software engineering; (practically) managing the Compose
Microsoft Connect /14/ :11 AM
Presentation transcript:

MAY 18, 2016 BARRY SMITH MATHEMATICS AND COMPUTER SCIENCE DIVISION ARGONNE NATIONAL LABORATORY WEBINAR SERIES: COLLABORATION AMONG THE IDEAS SCIENTIFIC SOFTWARE PRODUCTIVITY PROJECT, ALCF, OLCF, NERSC DEVELOPING, CONFIGURING, BUILDING, AND DEPLOYING HPC SOFTWARE

OBJECTIVES OF THE SERIES  To bring knowledge of useful software engineering practices to HPC scientific code developers  Not to prescribe any set of practices as must use  Be informative about practices that have worked for some projects  Emphasis on adoption of practices that help productivity rather than put unsustainable burden  Customization as needed – based on information made available  We will do it through examples and case studies  References for available resources  Suggestions for further reading 5/18/16 2

CODE DEVELOPMENT TOPICS Emacs/Vim (or IDE such as Eclipse, Visual Studio, Xcode) Make/gnumake Configure (GNU autotools) / CMake Tar Git/Mecurial/SVN source code repositories and control next presentation 35/18/16

4 See on-line demos.

TOPICS COVERED  Editing tools to search within source code  Emacs/Vim – etags and tags  Compiling from Emacs: finding compiler errors…  IDE – code completion, compiling, syntax checking  Very powerful  More difficult to use with diverse development team who are not using the same IDE 5 5/18/16

TOPICS COVERED  Make/gnumake  Rules for compiling code  Handling dependencies  Automatically computing dependencies  Providing help messages  Creating libraries  Make is slightly more portable (and much clearer) than gnumake. Use gnumake only when needed. 6 5/18/16

TOPICS COVERED  Autotools  Generating system dependent information for compiling software  Tar  Creating tarball for distribution  Providing rule in the makefile 7 5/18/16