Tool support for inspecting the code quality of HPC apps
|
|
- Emery Booth
- 5 years ago
- Views:
Transcription
1 Tool support for inspecting the code quality of HPC apps Thomas Panas, Dan Quinlan Center for Applied Scientific Computing (CASC) Lawrence Livermore National Laboratory Richard Vuduc LLNL / Georgia Tech 3 rd Workshop on Software Engineering for HPC Apps
2 Research motivation and goals Context: HPC development is often ad hoc, not formal Unknown requirements at project start No training in (or time for) formal processes Developer or team may be sole customer initially Correctness and performance first, maintenance later Whether maintenance considered or not, codes have long lifetimes Goal: Communicate code quality unobtrusively Provide on-demand feedback to dev. team Integrate naturally into dev. process Use interactive visualization when appropriate Incorporate team-specific coding guidelines/requirements Panas, et al. - UCRL-PRES
3 ROSE-VA: A code quality inspection tool prototype Reports code quality metrics Maintainability Component reusability Software metrics Visualizes judiciously File or module coherence as static images Software architecture in interactive views Implemented using extensible tools ROSE: Source-to-source compiler for C, C++ (Fortran in progress) VizzAnalyzer / Vizz3D: Interactive software viz framework This talk: Overview, status, and example (SMG2000) Panas, et al. - UCRL-PRES
4 Architecture-level viz of call graph (SMG2k) Panas, et al. - UCRL-PRES
5 Architecture-level viz of call graph (SMG2k) Panas, et al. - UCRL-PRES
6 Categories of code quality information Simple statistics E.g., lines of code, global variable count, no. of security violations Context-insensitive, so displayed as text Coherence reports E.g., global variables and files in which they appear Shows simple contextual relationships Shown as text or 2-D static images Architecture-level information overviews E.g., module dependencies Visualized interactively, using physical metaphors Panas, et al. - UCRL-PRES
7 Sample application : SMG2k SMG2000: A semicoarsening multigrid benchmark C program from ASC Purple Benchmark suite ~46 KLOC in 5 modules and ~70 files Small but interesting example of one-shot app Intended for single-use Contains subset of hypre library, so should be well-structured Panas, et al. - UCRL-PRES
8 Simple statistics Global statistics Lines of code; abstract syntax tree (AST) statistics No. of files, types of files (e.g., source vs. header) No. and type of classes No. of function calls (static) Simple analysis summaries Security or API violations (e.g., sprintf, new-delete) Cyclomatic complexity per function or file Global variable analysis Cyclic dependencies Naming convention violations Degree of documentation Arithmetic complexity Panas, et al. - UCRL-PRES
9 Simple analysis results for SMG2k Analysis Security / API misuse Cyclomatic complexity per function Global variables LOC per function Cyclic file dependencies Naming convention violations Threshold 0 < 20 0 < # of violations Panas, et al. - UCRL-PRES
10 Coherence reporting Relationships between a few pieces of information, rendered in 2-D static images Example: Where are the global variables? And can we eliminate them? Relate files, global variable references, variable types (static vs. true global) Panas, et al. - UCRL-PRES
11 Panas, et al. - UCRL-PRES
12 Files Panas, et al. - UCRL-PRES
13 File-scoped global Panas, et al. - UCRL-PRES
14 True globals Panas, et al. - UCRL-PRES
15 Example: Source and header dependencies (File-include graph) Panas, et al. - UCRL-PRES
16 Architecture-level information overviews For viewing lots of information in context of software architecture Our approach: Interactive viz with natural metaphors Interactive 3-D view of graphs Islands (modules), cities (files), bulidings (functions) Example: Where is the code becoming complex? Large functions and modules? Cyclic module dependencies, based on call graph? Panas, et al. - UCRL-PRES
17 Classical call graph viz (SMG2K) Panas, et al. - UCRL-PRES
18 Architecture-level viz of call graph (SMG2K) Panas, et al. - UCRL-PRES
19 Architecture-level viz of call graph (SMG2K) Panas, et al. - UCRL-PRES
20 void P DE::Compute_Residuals () // The decision to implement the residual computation seperately is a design preference. if (DEBUG > 0) p rintf ("Compute Residuals! \n"); Residual = 0.0; double Scaling_Factor = 1.0 / (M esh_size * Mesh_Size) ; if (Problem_Dimension == 1) Residual (I) = R ight_hand_side (I) + Scaling_Factor * ( Solution (I+1) + Solution (I-1) * Solution (I) ); if (Problem_Dimension == 2) if (F ully_variational) Solution (I,J+1) + Solution (I-1,J-1) - Residual (I,J) = Right_Hand_Side (I,J) + Scaling_Factor * ( #ifdef GRAPHICS #endif Solution (I+1,J) + Solution (I-1,J) + Solution (I,J-1) + Solution (I+1,J+1) + Solution (I-1,J+1) + Solution (I+1,J-1) * Solution (I,J) ); Residual (I,J) = Right_Hand_Side (I,J) + Scaling_Factor * ( Solution (I+1,J) + Solution (I-1,J) + Solution (I,J-1) + Solution (I,J+1) * Solution (I,J) ); Graphics_Object.setProperty(TOPLABEL,"Residual" ); Graphics_Object.setProperty(CONTSTYLE,2); Graphics_Object.setProperty(NSTEPS,10); Graphics_Object.contour(Residual); if (P roblem_dimension == 3) if (F ully_variational) Residual (I,J,K) = Right_Hand_Side (I,J,K) + S caling_factor * ( // Center face Solution (I+1,J,K) + Solution (I-1,J,K) + Solution (I,J-1,K) + Solution (I,J+1,K) + Solution (I+1,J+1,K) + Solution (I-1,J+1,K) + Solution (I+1,J-1,K) + Solution (I-1,J-1,K) + // Inner face Solution (I+1,J,K-1) + Solution (I-1,J,K-1) + Solution (I,J-1,K-1) + Solution (I,J+1,K-1) + Solution (I+1,J+1,K-1) + Solution (I-1,J+1,K-1) + Solution (I+1,J-1,K-1) + Solution (I-1,J-1,K-1) + // Outer face Solution (I+1,J,K+1) + Solution (I-1,J,K+1) + Solution (I,J-1,K+1) + Solution (I,J+1,K+1) + Solution (I+1,J+1,K+1) + Solution (I-1,J+1,K+1) + Solution (I+1,J-1,K+1) + Solution (I-1,J-1,K+1) + // Center point of Inner and Outer faces Solution (I,J,K-1) + Solution (I,J,K+1) - // Center point 26.0 * Solution (I,J,K) ); Residual (I,J,K) = Right_Hand_Side (I,J,K) + S caling_factor * ( if (DEBUG > 0) p rintf ("Leaving Compute Residuals! \n"); // Swap sign for test! // Residual = -Residual; Solution (I+1,J,K) + Solution (I-1,J,K) + Solution (I,J-1,K) + Solution (I,J+1,K) + Solution (I,J,K-1) + Solution (I,J,K+1) * Solution (I,J,K) ); void P DE::Compute_Residuals () // The decision to implement the residual computation seperately is a design preference. if (DEBUG > 0) p rintf ("Compute Residuals! \n"); Residual = 0.0; double Scaling_Factor = 1.0 / (M esh_size * Mesh_Size) ; if (Problem_Dimension == 1) Residual (I) = R ight_hand_side (I) + Scaling_Factor * ( (I,J+1) + Solution (I+1) + Solution (I-1) * Solution (I) ); if (Problem_Dimension == 2) if (F ully_variational) Solution (I-1,J-1) - Residual (I,J) = Right_Hand_Side (I,J) + Scaling_Factor * ( #ifdef GRAPHICS #endif Solution (I+1,J) + Solution (I-1,J) + Solution (I,J-1) + Solution Solution (I+1,J+1) + Solution (I-1,J+1) + Solution (I+1,J-1) * Solution (I,J) ); Residual (I,J) = Right_Hand_Side (I,J) + Scaling_Factor * ( Solution (I+1,J) + Solution (I-1,J) + Solution (I,J-1) + Solution (I,J+1) * Solution (I,J) ); Graphics_Object.setProperty(TOPLABEL,"Residual" ); Graphics_Object.setProperty(CONTSTYLE,2); Graphics_Object.setProperty(NSTEPS,10); Graphics_Object.contour(Residual); if (P roblem_dimension == 3) if (F ully_variational) Residual (I,J,K) = Right_Hand_Side (I,J,K) + S caling_factor * ( // Center face Solution (I+1,J,K) + Solution (I-1,J,K) + Solution (I,J-1,K) + Solution (I,J+1,K) + Solution (I+1,J+1,K) + Solution (I-1,J+1,K) + Solution (I+1,J-1,K) + Solution (I-1,J-1,K) + // Inner face Solution (I+1,J,K-1) + Solution (I-1,J,K-1) + Solution (I,J-1,K-1) + Solution (I,J+1,K-1) + Solution (I+1,J+1,K-1) + Solution (I-1,J+1,K-1) + Solution (I+1,J-1,K-1) + Solution (I-1,J-1,K-1) + // Outer face Solution (I+1,J,K+1) + Solution (I-1,J,K+1) + Solution (I,J-1,K+1) + Solution (I,J+1,K+1) + Solution (I+1,J+1,K+1) + Solution (I-1,J+1,K+1) + Solution (I+1,J-1,K+1) + Solution (I-1,J-1,K+1) + // Center point of Inner and Outer faces Solution (I,J,K-1) + Solution (I,J,K+1) - // Center point 26.0 * Solution (I,J,K) ); Residual (I,J,K) = Right_Hand_Side (I,J,K) + S caling_factor * ( if (DEBUG > 0) p rintf ("Leaving Compute Residuals! \n"); // Swap sign for test! // Residual = -Residual; Solution (I+1,J,K) + Solution (I-1,J,K) + Solution (I,J-1,K) + Solution (I,J+1,K) + Solution (I,J,K-1) + Solution (I,J,K+1) * Solution (I,J,K) ); Implementation: ROSE-VA combines compiler & viz tools parse: ROSE analyze: ROSE visualize: Vizz3D Source Code Source Code Main() asdf sdfs; sdfs Asdfs Main() asdf sdfs; sdfs Asdfs Panas, et al. - UCRL-PRES
21 ROSE-VA combines compiler & viz tools parse: ROSE Source Code void P DE::Compute_Residuals () // The decision to implement the residual computation seperately is a design preference. if (DEBUG > 0) p rintf ("Compute Residuals! \n"); analyze: ROSE visualize: Vizz3D Source Code void P DE::Compute_Residuals () // The decision to implement the residual computation seperately is a design preference. if (DEBUG > 0) p rintf ("Compute Residuals! \n"); Residual = 0.0; Residual = 0.0; double S caling_factor = 1.0 / ( M esh_size * Mesh_Size) ; if (P roblem_dimension == 1) Residual (I) = R ight_hand_side (I) + Scaling_Factor * ( Solution (I+1) + Solution (I-1) * Solution (I) ); if (Problem_Dimension == 2) if (F ully_variational) Residual (I,J) = R ight_hand_side (I,J) + Scaling_Factor * ( Solution (I+1,J) + Solution (I-1,J) + Solution (I,J-1) + Solution (I,J+1) + Solution (I+1,J+1) + Solution (I-1,J+1) + Solution (I+1,J-1) + Solution (I-1,J-1) 8.0 * Solution (I,J) ); Residual (I,J) = R ight_hand_side (I,J) + Scaling_Factor * ( Solution (I+1,J) + Solution (I-1,J) + Solution (I,J-1) + Solution (I,J+1) * Solution (I,J) ); #ifdef GRAPHICS G raphics_object.setproperty(toplabel,"residual " ); Graphics_Object.setProperty(CONTSTYLE,2); Graphics_Object.setProperty(NSTEPS,10); G raphics_object.contour(residual); #e ndif if (P roblem_dimension == 3) if (F ully_variational ) Residual (I,J,K) = Right_Hand_Side (I,J,K) + S caling_factor * ( // Center face Solution (I+1,J,K) + Solution (I-1,J,K) + Solution (I,J-1,K) + Solution (I,J+1,K) + Solution (I+1,J+1,K) + Solution (I-1,J+1,K) + Solution (I+1,J-1,K) + Solution (I-1,J-1,K) + // Inner face Solution (I+1,J,K-1) + Solution (I-1,J,K-1) + Solution (I,J-1,K-1) + Solution (I,J+1,K-1) + Solution (I+1,J+1,K-1) + Solution (I-1,J+1,K-1) + Solution (I+1,J-1,K-1) + Solution (I-1,J-1,K-1) + // Outer face Solution (I+1,J,K+1) + Solution (I-1,J,K+1) + Solution (I,J-1,K+1) + Solution (I,J+1,K+1) + Solution (I+1,J+1,K+1) + Solution (I-1,J+1,K+1) + Solution (I+1,J-1,K+1) + Solution (I-1,J-1,K+1) + // Center point of Inner and Outer faces Solution (I,J,K-1) + Solution (I,J,K+1) // Center point 26.0 * Solution (I,J,K) ); Residual (I,J,K) = Right_Hand_Side (I,J,K) + S caling_factor * ( Solution (I+1,J,K) + Solution (I-1,J,K) + Solution (I,J-1,K) + Solution (I,J+1,K) + Solution (I,J,K-1) + Solution (I,J,K+1) * Solution (I,J,K) ); double S caling_factor = 1.0 / ( M esh_size * Mesh_Size) ; if (P roblem_dimension == 1) Residual (I) = R ight_hand_side (I) + Scaling_Factor * ( Solution (I+1) + Solution (I-1) * Solution (I) ); if (Problem_Dimension == 2) if (F ully_variational) Residual (I,J) = R ight_hand_side (I,J) + Scaling_Factor * ( Solution (I+1,J) + Solution (I-1,J) + Solution (I,J-1) + Solution (I,J+1) + Solution (I+1,J+1) + Solution (I-1,J+1) + Solution (I+1,J-1) + Solution (I-1,J-1) 8.0 * Solution (I,J) ); Residual (I,J) = R ight_hand_side (I,J) + Scaling_Factor * ( Solution (I+1,J) + Solution (I-1,J) + Solution (I,J-1) + Solution (I,J+1) * Solution (I,J) ); #ifdef GRAPHICS G raphics_object.setproperty(toplabel,"residual " ); Graphics_Object.setProperty(CONTSTYLE,2); Graphics_Object.setProperty(NSTEPS,10); G raphics_object.contour(residual); #e ndif if (P roblem_dimension == 3) if (F ully_variational ) Residual (I,J,K) = Right_Hand_Side (I,J,K) + S caling_factor * ( // Center face Solution (I+1,J,K) + Solution (I-1,J,K) + Solution (I,J-1,K) + Solution (I,J+1,K) + Solution (I+1,J+1,K) + Solution (I-1,J+1,K) + Solution (I+1,J-1,K) + Solution (I-1,J-1,K) + // Inner face Solution (I+1,J,K-1) + Solution (I-1,J,K-1) + Solution (I,J-1,K-1) + Solution (I,J+1,K-1) + Solution (I+1,J+1,K-1) + Solution (I-1,J+1,K-1) + Solution (I+1,J-1,K-1) + Solution (I-1,J-1,K-1) + // Outer face Solution (I+1,J,K+1) + Solution (I-1,J,K+1) + Solution (I,J-1,K+1) + Solution (I,J+1,K+1) + Solution (I+1,J+1,K+1) + Solution (I-1,J+1,K+1) + Solution (I+1,J-1,K+1) + Solution (I-1,J-1,K+1) + // Center point of Inner and Outer faces Solution (I,J,K-1) + Solution (I,J,K+1) // Center point 26.0 * Solution (I,J,K) ); Residual (I,J,K) = Right_Hand_Side (I,J,K) + S caling_factor * ( Solution (I+1,J,K) + Solution (I-1,J,K) + Solution (I,J-1,K) + Solution (I,J+1,K) + Solution (I,J,K-1) + Solution (I,J,K+1) * Solution (I,J,K) ); if (DEBUG > 0) p rintf ("Leaving Compute Residuals! \n"); if (DEBUG > 0) p rintf ("Leaving Compute Residuals! \n"); // Swap sign for test! // Residual = -Residual; // Swap sign for test! // Residual = -Residual; Main() asdf sdfs; sdfs Asdfs Main() asdf sdfs; sdfs Asdfs Panas, et al. - UCRL-PRES
22 ROSE-VA combines compiler & viz tools parse: ROSE Source Code void P DE::Compute_Residuals () // The decision to implement the residual computation seperately is a design preference. if (DEBUG > 0) p rintf ("Compute Residuals! \n"); visualize: Vizz3D analyze: ROSE Source Code void P DE::Compute_Residuals () // The decision to implement the residual computation seperately is a design preference. if (DEBUG > 0) p rintf ("Compute Residuals! \n"); Residual = 0.0; Residual = 0.0; double S caling_factor = 1.0 / ( M esh_size * Mesh_Size) ; if (P roblem_dimension == 1) Residual (I) = R ight_hand_side (I) + Scaling_Factor * ( Solution (I+1) + Solution (I-1) * Solution (I) ); if (Problem_Dimension == 2) if (F ully_variational) Residual (I,J) = R ight_hand_side (I,J) + Scaling_Factor * ( Solution (I+1,J) + Solution (I-1,J) + Solution (I,J-1) + Solution (I,J+1) + Solution (I+1,J+1) + Solution (I-1,J+1) + Solution (I+1,J-1) + Solution (I-1,J-1) 8.0 * Solution (I,J) ); Residual (I,J) = R ight_hand_side (I,J) + Scaling_Factor * ( Solution (I+1,J) + Solution (I-1,J) + Solution (I,J-1) + Solution (I,J+1) * Solution (I,J) ); #ifdef GRAPHICS G raphics_object.setproperty(toplabel,"residual " ); Graphics_Object.setProperty(CONTSTYLE,2); Graphics_Object.setProperty(NSTEPS,10); G raphics_object.contour(residual); #e ndif if (P roblem_dimension == 3) if (F ully_variational ) Residual (I,J,K) = Right_Hand_Side (I,J,K) + S caling_factor * ( // Center face Solution (I+1,J,K) + Solution (I-1,J,K) + Solution (I,J-1,K) + Solution (I,J+1,K) + Solution (I+1,J+1,K) + Solution (I-1,J+1,K) + Solution (I+1,J-1,K) + Solution (I-1,J-1,K) + // Inner face Solution (I+1,J,K-1) + Solution (I-1,J,K-1) + Solution (I,J-1,K-1) + Solution (I,J+1,K-1) + Solution (I+1,J+1,K-1) + Solution (I-1,J+1,K-1) + Solution (I+1,J-1,K-1) + Solution (I-1,J-1,K-1) + // Outer face Solution (I+1,J,K+1) + Solution (I-1,J,K+1) + Solution (I,J-1,K+1) + Solution (I,J+1,K+1) + Solution (I+1,J+1,K+1) + Solution (I-1,J+1,K+1) + Solution (I+1,J-1,K+1) + Solution (I-1,J-1,K+1) + // Center point of Inner and Outer faces Solution (I,J,K-1) + Solution (I,J,K+1) // Center point 26.0 * Solution (I,J,K) ); Residual (I,J,K) = Right_Hand_Side (I,J,K) + S caling_factor * ( Solution (I+1,J,K) + Solution (I-1,J,K) + Solution (I,J-1,K) + Solution (I,J+1,K) + Solution (I,J,K-1) + Solution (I,J,K+1) * Solution (I,J,K) ); double S caling_factor = 1.0 / ( M esh_size * Mesh_Size) ; if (P roblem_dimension == 1) Residual (I) = R ight_hand_side (I) + Scaling_Factor * ( Solution (I+1) + Solution (I-1) * Solution (I) ); if (Problem_Dimension == 2) if (F ully_variational) Residual (I,J) = R ight_hand_side (I,J) + Scaling_Factor * ( Solution (I+1,J) + Solution (I-1,J) + Solution (I,J-1) + Solution (I,J+1) + Solution (I+1,J+1) + Solution (I-1,J+1) + Solution (I+1,J-1) + Solution (I-1,J-1) 8.0 * Solution (I,J) ); Residual (I,J) = R ight_hand_side (I,J) + Scaling_Factor * ( Solution (I+1,J) + Solution (I-1,J) + Solution (I,J-1) + Solution (I,J+1) * Solution (I,J) ); #ifdef GRAPHICS G raphics_object.setproperty(toplabel,"residual " ); Graphics_Object.setProperty(CONTSTYLE,2); Graphics_Object.setProperty(NSTEPS,10); G raphics_object.contour(residual); #e ndif if (P roblem_dimension == 3) if (F ully_variational ) Residual (I,J,K) = Right_Hand_Side (I,J,K) + S caling_factor * ( // Center face Solution (I+1,J,K) + Solution (I-1,J,K) + Solution (I,J-1,K) + Solution (I,J+1,K) + Solution (I+1,J+1,K) + Solution (I-1,J+1,K) + Solution (I+1,J-1,K) + Solution (I-1,J-1,K) + // Inner face Solution (I+1,J,K-1) + Solution (I-1,J,K-1) + Solution (I,J-1,K-1) + Solution (I,J+1,K-1) + Solution (I+1,J+1,K-1) + Solution (I-1,J+1,K-1) + Solution (I+1,J-1,K-1) + Solution (I-1,J-1,K-1) + // Outer face Solution (I+1,J,K+1) + Solution (I-1,J,K+1) + Solution (I,J-1,K+1) + Solution (I,J+1,K+1) + Solution (I+1,J+1,K+1) + Solution (I-1,J+1,K+1) + Solution (I+1,J-1,K+1) + Solution (I-1,J-1,K+1) + // Center point of Inner and Outer faces Solution (I,J,K-1) + Solution (I,J,K+1) // Center point 26.0 * Solution (I,J,K) ); Residual (I,J,K) = Right_Hand_Side (I,J,K) + S caling_factor * ( Solution (I+1,J,K) + Solution (I-1,J,K) + Solution (I,J-1,K) + Solution (I,J+1,K) + Solution (I,J,K-1) + Solution (I,J,K+1) * Solution (I,J,K) ); if (DEBUG > 0) p rintf ("Leaving Compute Residuals! \n"); if (DEBUG > 0) p rintf ("Leaving Compute Residuals! \n"); // Swap sign for test! // Residual = -Residual; // Swap sign for test! // Residual = -Residual; Main() asdf sdfs; sdfs Asdfs Main() asdf sdfs; sdfs Asdfs Panas, et al. - UCRL-PRES
23 ROSE-VA combines compiler & viz tools ROSE: An infrastructure for building customized sourceto-source tools Full open-source compiler with basic analysis Support for C, C++ (Fortran 90 in progress) Targets non-compiler audience VizzAnalyzer / Vizz3D: Graph visualization framework Software analysis + information visualization Plug-in architecture Babel connects ROSE (C++) and VA (Java) Panas, et al. - UCRL-PRES
24 Re-engineering example: Refactoring ROSE Panas, et al. - UCRL-PRES
25 Re-engineering example: Refactoring ROSE Panas, et al. - UCRL-PRES
26 Summary and future work Prototype analysis and viz tool Targets understanding, maintenance, and re-engineering tasks Flexible, unobtrusive, developer-driven usage HPC-specific metrics and analyses? Utility? Next steps: External evaluation + custom analyses Applying to larger applications + specific coding guidelines Specifying and finding patterns Including dynamic information (HPCToolkit, Open SpeedShop) Mining and incorporating source-repository Adding more metrics, e.g., productivity (size, time), defect density Panas, et al. - UCRL-PRES
27 End Demo?
28 Collaborators DOE Laboratories: LLNL ( A-Div (Kull), B-Div (ALE3D, Ares), Overture, Babel) ANL (Paul Hovland) ORNL DOE Research Programs: PERC (SLAC, TSTT, C/C++ Optimization, UT, ANL, Dyninst Binary Rewriting) Collaborations: Texas A&M (Lawrence Rauchwerger, Bjarne Stroustrup) Rice University (Ken Kennedy, John Mellnor-Crummey) IBM Haifa (Shmuel Ur) Vienna University of Technology (Markus Schordan) University of Tennessee (Jack Dongarra s group) Cornell University (Sally McKee, Brian White) Indiana University (Andrew Lumsdaine, Jeremiah Willcock) University of California at Berkeley (UPC, Kathy Yelick) University of Oslo (Hans, Andreas, Are) University of Maryland (Jeff Hollingsworth, Chadd Williams) Friedrich-Alexander-University Erlangen-Nuremberg (Markus Kowarschik, Nils Thurey) University of Texas at Austin (Calvin Lin) USCD (Scott Baden) London Imperial College (Olav Beckman, Paul Kelly) UC Davis (Su, Bishop) Panas, et al. - UCRL-PRES
ROSE User Manual: A Tool for Building Source-to-Source Translators Draft User Manual (version )
ROSE User Manual: A Tool for Building Source-to-Source Translators Draft User Manual (version.9.9.68) Daniel Quinlan, Chunhua Liao, Thomas Panas, Robb Matzke, Markus Schordan, Rich Vuduc, and Qing Yi Lawrence
More informationCIRM - Dynamic Error Detection
CIRM - Dynamic Error Detection Peter Pirkelbauer Center for Applied Scientific Computing (CASC) Lawrence Livermore National Laboratory This work was funded by the Department of Defense and used elements
More informationD-TEC DSL Technology for Exascale Computing
D-TEC DSL Technology for Exascale Computing Progress Report: March 2013 DOE Office of Science Program: Office of Advanced Scientific Computing Research ASCR Program Manager: Dr. Sonia Sachs 1 Introduction
More informationReusable, Generic Compiler Analyses and Transformations
Reusable, Generic Compiler Analyses and Transformations Jeremiah Willcock, Andrew Lumsdaine, and Daniel Quinlan Indiana University and Lawrence Livermore National Laboratory This work performed under the
More informationA Strategy for Addressing the Needs of Advanced Scientific Computing Using Eclipse as a Parallel Tools Platform 1
A Strategy for Addressing the Needs of Advanced Scientific Computing Using Eclipse as a Parallel Tools Platform Gregory R. Watson Craig E. Rasmussen Los Alamos National Laboratory P.O. Box 1663, MS B287
More informationROSE-CIRM Detecting C-Style Errors in UPC Code
ROSE-CIRM Detecting C-Style Errors in UPC Code Peter Pirkelbauer 1 Chunhuah Liao 1 Thomas Panas 2 Daniel Quinlan 1 1 2 Microsoft Parallel Data Warehouse This work was funded by the Department of Defense
More informationIntroduction to Programming
Introduction to Programming session 3 Instructor: Reza Entezari-Maleki Email: entezari@ce.sharif.edu 1 Fall 2010 These slides are created using Deitel s slides Sahrif University of Technology Outlines
More informationUnderstanding Executables Working Group
Center for Scalable Application Development Software Understanding Executables Working Group CScADS Petascale Performance Tools Workshop, July 2007 1 Working Group Members Drew Bernat Robert Cohn Mike
More informationScientific Computing Without the Command Line: Enabling Any HPC Code to Run Anywhere through a Web Interface with the Agave API
Scientific Computing Without the Command Line: Enabling Any HPC Code to Run Anywhere through a Web Interface with the Agave API Kathy Traxler, Steven R. Brandt Department of Computer Science Center for
More informationCS 553: Algorithmic Language Compilers (PLDI) Graduate Students and Super Undergraduates... Logistics. Plan for Today
Graduate Students and Super Undergraduates... CS 553: Algorithmic Language Compilers (PLDI) look for other sources of information make decisions, because all research problems are under-specified evaluate
More informationMetadata for Component Optimisation
Metadata for Component Optimisation Olav Beckmann, Paul H J Kelly and John Darlington ob3@doc.ic.ac.uk Department of Computing, Imperial College London 80 Queen s Gate, London SW7 2BZ United Kingdom Metadata
More informationAutotuning (2.5/2): TCE & Empirical compilers
Autotuning (2.5/2): TCE & Empirical compilers Prof. Richard Vuduc Georgia Institute of Technology CSE/CS 8803 PNA: Parallel Numerical Algorithms [L.19] Tuesday, March 11, 2008 1 Today s sources CS 267
More informationPresentations: Jack Dongarra, University of Tennessee & ORNL. The HPL Benchmark: Past, Present & Future. Mike Heroux, Sandia National Laboratories
HPC Benchmarking Presentations: Jack Dongarra, University of Tennessee & ORNL The HPL Benchmark: Past, Present & Future Mike Heroux, Sandia National Laboratories The HPCG Benchmark: Challenges It Presents
More informationThe Eclipse Parallel Tools Platform
May 1, 2012 Toward an Integrated Development Environment for Improved Software Engineering on Crays Agenda 1. What is the Eclipse Parallel Tools Platform (PTP) 2. Tour of features available in Eclipse/PTP
More informationEvolution of the ATLAS PanDA Workload Management System for Exascale Computational Science
Evolution of the ATLAS PanDA Workload Management System for Exascale Computational Science T. Maeno, K. De, A. Klimentov, P. Nilsson, D. Oleynik, S. Panitkin, A. Petrosyan, J. Schovancova, A. Vaniachine,
More informationDynamic Selection of Auto-tuned Kernels to the Numerical Libraries in the DOE ACTS Collection
Numerical Libraries in the DOE ACTS Collection The DOE ACTS Collection SIAM Parallel Processing for Scientific Computing, Savannah, Georgia Feb 15, 2012 Tony Drummond Computational Research Division Lawrence
More informationAn Evaluation of Domain-Specific Language Technologies for Code Generation
An Evaluation of Domain-Specific Language Technologies for Code Generation Christian Schmitt, Sebastian Kuckuk, Harald Köstler, Frank Hannig, Jürgen Teich Hardware/Software Co-Design, System Simulation,
More informationMaking a Case for a Green500 List
Making a Case for a Green500 List S. Sharma, C. Hsu, and W. Feng Los Alamos National Laboratory Virginia Tech Outline Introduction What Is Performance? Motivation: The Need for a Green500 List Challenges
More informationComponent Architectures
Component Architectures Rapid Prototyping in a Networked Environment Ken Kennedy Rice University http://www.cs.rice.edu/~ken/presentations/lacsicomponentssv01.pdf Participants Ruth Aydt Bradley Broom Zoran
More informationIlya Lashuk, Merico Argentati, Evgenii Ovtchinnikov, Andrew Knyazev (speaker)
Ilya Lashuk, Merico Argentati, Evgenii Ovtchinnikov, Andrew Knyazev (speaker) Department of Mathematics and Center for Computational Mathematics University of Colorado at Denver SIAM Conference on Parallel
More informationJava Based Open Architecture Controller
Preprint UCRL-JC- 137092 Java Based Open Architecture Controller G. Weinet? This article was submitted to World Automation Conference, Maui, HI, June 1 I- 16,200O U.S. Department of Energy January 13,200O
More informationThe Common Component Architecture: Building Frameworks for Computational Science
The : Building Frameworks for Computational Science David E. Bernholdt Oak Ridge National Laboratory bernholdtde@ornl.gov http://www.cca-forum.org Work supported in part by the Scientific Discovery through
More informationAndrew V. Knyazev and Merico E. Argentati (speaker)
1 Andrew V. Knyazev and Merico E. Argentati (speaker) Department of Mathematics and Center for Computational Mathematics University of Colorado at Denver 2 Acknowledgement Supported by Lawrence Livermore
More informationTitle: ====== Open Research Compiler (ORC): Proliferation of Technologies and Tools
Tutorial Proposal to Micro-36 Title: ====== Open Research Compiler (ORC): Proliferation of Technologies and Tools Abstract: ========= Open Research Compiler (ORC) has been well adopted by the research
More informationEclipse-PTP: An Integrated Environment for the Development of Parallel Applications
Eclipse-PTP: An Integrated Environment for the Development of Parallel Applications Greg Watson (grw@us.ibm.com) Craig Rasmussen (rasmusen@lanl.gov) Beth Tibbitts (tibbitts@us.ibm.com) Parallel Tools Workshop,
More informationApplication of KGen and KGen-kernel
Application of KGen and KGen-kernel Youngsung Kim and John Dennis Sep. 14, 2016 NCAR Contents Introduction KGen kernel in practice Optimization and Porting Validation, Test collection, Profiling, etc.
More informationVisIt: Visualization and Analysis using Python. VisIt developers from Brad Whitlock NNSA/ASC, Office of Science/SciDAC, Cyrus Harrison
VisIt: Visualization and Analysis using Python Hank Childs VisIt developers from Brad Whitlock NNSA/ASC, Office of Science/SciDAC, Cyrus Harrison Office of Nuclear Energy/AFCI Presented at: SIAM CSE09
More informationExperience with Mixed MPVThreaded Programming Models
UCRL-JC-133213 PREPRINT Experience with Mixed MPVThreaded Programming Models J. May B.R. de Supinski This paper was prepared for submittal to the High Performance Scientific Computation with Applications
More informationUPC Performance Analysis Tool: Status and Plans
UPC Performance Analysis Tool: Status and Plans Professor Alan D. George, Principal Investigator Mr. Hung-Hsun Su, Sr. Research Assistant Mr. Adam Leko, Sr. Research Assistant Mr. Bryan Golden, Research
More informationWhat s new in CDT 4.0 and beyond. Doug Schaefer QNX Software Systems CDT Project Lead
What s new in CDT 4.0 and beyond Doug Schaefer QNX Software Systems CDT Project Lead 2007 by QNX Software Systems; made available under the EPL v1.0 October 10, 2007 Where it all began From: "John Duimovich"
More informationPerformance Tuning of Scientific Applications
Performance Tuning of Scientific Applications David H Bailey, Lawrence Berkeley National Lab, USA (speaker) DHB s website: http://crd.lbl.gov/~dhbailey! 1 Why performance is important Highly-parallel scientific
More informationEclipse Packaging Project
Eclipse Packaging Project Document classification: Date: June 5, 2012 Abstract: This document contains the Release Review Documentation for the Eclipse Packaging Project (EPP). The 1.5.0 EPP release is
More informationEvolving HPCToolkit John Mellor-Crummey Department of Computer Science Rice University Scalable Tools Workshop 7 August 2017
Evolving HPCToolkit John Mellor-Crummey Department of Computer Science Rice University http://hpctoolkit.org Scalable Tools Workshop 7 August 2017 HPCToolkit 1 HPCToolkit Workflow source code compile &
More informationNUIT Tech Talk Topics in Research Computing: XSEDE and Northwestern University Campus Champions
NUIT Tech Talk Topics in Research Computing: XSEDE and Northwestern University Campus Champions Pradeep Sivakumar pradeep-sivakumar@northwestern.edu Contents What is XSEDE? Introduction Who uses XSEDE?
More information1. Describe History of C++? 2. What is Dev. C++? 3. Why Use Dev. C++ instead of C++ DOS IDE?
1. Describe History of C++? The C++ programming language has a history going back to 1979, when Bjarne Stroustrup was doing work for his Ph.D. thesis. One of the languages Stroustrup had the opportunity
More informationTowards Self-Verification in Finite Difference Code Generation
Towards Self-Verification in Finite Difference Code Generation Jan Hückelheim 1, Ziqing Luo 2, Fabio Luporini 1,Navjot Kukreja 1, Michael Lange 1, Gerard Gorman 1, Stephen Siegel 2, Matthew Dwyer 3, Paul
More informationCS691/SC791: Parallel & Distributed Computing
CS691/SC791: Parallel & Distributed Computing Introduction to OpenMP 1 Contents Introduction OpenMP Programming Model and Examples OpenMP programming examples Task parallelism. Explicit thread synchronization.
More informationPower Constrained HPC
http://scalability.llnl.gov/ Power Constrained HPC Martin Schulz Center or Applied Scientific Computing (CASC) Lawrence Livermore National Laboratory With many collaborators and Co-PIs, incl.: LLNL: Barry
More informationThe Eclipse Modeling Framework and MDA Status and Opportunities
The Eclipse Modeling Framework and MDA Status and Opportunities David Frankel Consulting df@davidfrankelconsulting.com www.davidfrankelconsulting.com Portions adapted from the book Model Driven Architecture:
More informationAdaptive Mesh Refinement in Titanium
Adaptive Mesh Refinement in Titanium http://seesar.lbl.gov/anag Lawrence Berkeley National Laboratory April 7, 2005 19 th IPDPS, April 7, 2005 1 Overview Motivations: Build the infrastructure in Titanium
More informationISPW Meta-data + RDz APIs = Accelerated Developer Productivity
RDz User/Customer Experience series ISPW Meta-data + RDz APIs = Accelerated Developer Productivity Jack Lema ISPW Benchmark Technologies August 3, 2010, 4:30 pm 5:30 pm Session 7608 Agenda Who I am / Who
More informationMind Q Systems Private Limited
Software Testing Tools Course Content for Online Training Manual Testing Introduction Introduction to software Testing Software Development Process Project Vs Product Objectives of Testing Testing Principals
More informationPerspectives form US Department of Energy work on parallel programming models for performance portability
Perspectives form US Department of Energy work on parallel programming models for performance portability Jeremiah J. Wilke Sandia National Labs Livermore, CA IMPACT workshop at HiPEAC Sandia National
More informationPart 5. Verification and Validation
Software Engineering Part 5. Verification and Validation - Verification and Validation - Software Testing Ver. 1.7 This lecture note is based on materials from Ian Sommerville 2006. Anyone can use this
More informationGrid Application Development Software
Grid Application Development Software Department of Computer Science University of Houston, Houston, Texas GrADS Vision Goals Approach Status http://www.hipersoft.cs.rice.edu/grads GrADS Team (PIs) Ken
More informationExtended abstract. The Pivot: A brief overview
Extended abstract The Pivot: A brief overview Bjarne Stroustrup and Gabriel Dos Reis bs@cs.tamu.edu, gdr@cs.tamu.edu Abstract This paper introduces the Pivot, a general framework for the analysis and transformation
More informationClearSpeed Visual Profiler
ClearSpeed Visual Profiler Copyright 2007 ClearSpeed Technology plc. All rights reserved. 12 November 2007 www.clearspeed.com 1 Profiling Application Code Why use a profiler? Program analysis tools are
More informationEclipse Packaging Project
Eclipse Packaging Project Document classification: Date: May 31, 2011 Abstract: This document contains the Release Review Documentation for the Eclipse Packaging Project (EPP). The 1.4.0 EPP release is
More informationToward Instant Gradeification
Toward Instant Gradeification Daniel M. Zimmerman, Joseph R. Kiniry and Fintan Fairmichael University of Washington Tacoma, USA dmz@acm.org IT University of Copenhagen, Denmark kiniry@acm.org University
More informationFunctions BCA-105. Few Facts About Functions:
Functions When programs become too large and complex and as a result the task of debugging, testing, and maintaining becomes difficult then C provides a most striking feature known as user defined function
More informationSeeCode A Code Review Plug-in for Eclipse
SeeCode A Code Review Plug-in for Eclipse Moran Shochat, Orna Raz, Eitan Farchi IBM Labs in Haifa Outline Introduction SeeCode main features: Code Review Perspective Distributed Review Review Comments
More informationFY97 ICCS Prototype Specification
FY97 ICCS Prototype Specification John Woodruff 02/20/97 DISCLAIMER This document was prepared as an account of work sponsored by an agency of the United States Government. Neither the United States Government
More informationRedGRID: Related Works
RedGRID: Related Works Lyon, october 2003. Aurélien Esnard EPSN project (ACI-GRID PPL02-03) INRIA Futurs (ScAlApplix project) & LaBRI (UMR CNRS 5800) 351, cours de la Libération, F-33405 Talence, France.
More informationProgramming in C. main. Level 2. Level 2 Level 2. Level 3 Level 3
Programming in C main Level 2 Level 2 Level 2 Level 3 Level 3 1 Programmer-Defined Functions Modularize with building blocks of programs Divide and Conquer Construct a program from smaller pieces or components
More informationCombining NVIDIA Docker and databases to enhance agile development and optimize resource allocation
Combining NVIDIA Docker and databases to enhance agile development and optimize resource allocation Chris Davis, Sophie Voisin, Devin White, Andrew Hardin Scalable and High Performance Geocomputation Team
More informationAgile Development
Agile Development 12-04-2013 Many flavors: Waterfall, Spiral Rapid Application Development (DSDM) Xtreme Programming (XP, an agile methodology) Usability Engineering Model, Star Iteration is done throughout
More informationCross-project defect prediction. Thomas Zimmermann Microsoft Research
Cross-project defect prediction Thomas Zimmermann Microsoft Research Upcoming Events ICSE 2010: http://www.sbs.co.za/icse2010/ New Ideas and Emerging Results ACM Student Research Competition (SRC) sponsored
More informationTableau Desktop: Part 2
Tableau Desktop: Part 2 095205 Target Student Professionals in a variety of job roles who are currently using Tableau to perform numerical or general data analysis, visualization, and reporting, who now
More informationScientific Computing
Scientific Computing Martin Lotz School of Mathematics The University of Manchester Lecture 1, September 22, 2014 Outline Course Overview Programming Basics The C++ Programming Language Outline Course
More informationInternational Journal for Management Science And Technology (IJMST)
Volume 4; Issue 03 Manuscript- 1 ISSN: 2320-8848 (Online) ISSN: 2321-0362 (Print) International Journal for Management Science And Technology (IJMST) GENERATION OF SOURCE CODE SUMMARY BY AUTOMATIC IDENTIFICATION
More informationCoupling of Simulation Tools - Building Controls Virtual Test Bed Michael Wetter. August, 2010
Acknowledgements Coupling of Simulation Tools - Building Controls Virtual Test Bed Michael Wetter Simulation Research Group Building Technologies Department Energy and Environmental Technologies Division
More informationGiridhar Ravipati University of Wisconsin, Madison. The Deconstruction of Dyninst: Part 1- the SymtabAPI
The Deconstruction of Dyninst Part 1: The SymtabAPI Giridhar Ravipati University of Wisconsin, Madison April 2007 Motivation Binary tools are increasingly common Two categories of operation Analysis :
More informationAnalysis of Highly Correlated Datasets to Establish Processing-Structure-Property Relationships for Additively Manufactured Metals
Analysis of Highly Correlated Datasets to Establish Processing-Structure-Property Relationships for Additively Manufactured Metals Workshop on Predictive Theoretical and Computational Approaches for Additive
More informationGeneration of High Performance Domain- Specific Languages from Component Libraries. Ken Kennedy Rice University
Generation of High Performance Domain- Specific Languages from Component Libraries Ken Kennedy Rice University Collaborators Raj Bandypadhyay Zoran Budimlic Arun Chauhan Daniel Chavarria-Miranda Keith
More informationHierarchical Pointer Analysis
for Distributed Programs Amir Kamil and Katherine Yelick U.C. Berkeley August 23, 2007 1 Amir Kamil Background 2 Amir Kamil Hierarchical Machines Parallel machines often have hierarchical structure 4 A
More informationCS415 Compilers. Procedure Abstractions. These slides are based on slides copyrighted by Keith Cooper, Ken Kennedy & Linda Torczon at Rice University
CS415 Compilers Procedure Abstractions These slides are based on slides copyrighted by Keith Cooper, Ken Kennedy & Linda Torczon at Rice University Where are we? Well understood Engineering Source Code
More informationUsing Cache Models and Empirical Search in Automatic Tuning of Applications. Apan Qasem Ken Kennedy John Mellor-Crummey Rice University Houston, TX
Using Cache Models and Empirical Search in Automatic Tuning of Applications Apan Qasem Ken Kennedy John Mellor-Crummey Rice University Houston, TX Outline Overview of Framework Fine grain control of transformations
More informationCS415 Compilers Overview of the Course. These slides are based on slides copyrighted by Keith Cooper, Ken Kennedy & Linda Torczon at Rice University
CS415 Compilers Overview of the Course These slides are based on slides copyrighted by Keith Cooper, Ken Kennedy & Linda Torczon at Rice University Critical Facts Welcome to CS415 Compilers Topics in the
More informationParser Development for Overture Tools
Parser Development for Overture Tools http://www.overturetool.org Marcel Verhoef, 25 May 2008, Fourth Overture Workshop Abo Akademi University Turku - Finland Iteration One (2004) Pieter van der Spek (MSc
More informationClick to edit Master text styles
Frederik Weidemann TITEL bearbeiten Dr. Markus Schumacher Five years of ABAP TM -Code-Reviews A retrospective 2011 2012 Virtual Forge GmbH www.virtualforge.com All rights reserved. TITEL About bearbeiten
More informationEvaluation of sparse LU factorization and triangular solution on multicore architectures. X. Sherry Li
Evaluation of sparse LU factorization and triangular solution on multicore architectures X. Sherry Li Lawrence Berkeley National Laboratory ParLab, April 29, 28 Acknowledgement: John Shalf, LBNL Rich Vuduc,
More informationFACETs. Technical Report 05/19/2010
F3 FACETs Technical Report 05/19/2010 PROJECT OVERVIEW... 4 BASIC REQUIREMENTS... 4 CONSTRAINTS... 5 DEVELOPMENT PROCESS... 5 PLANNED/ACTUAL SCHEDULE... 6 SYSTEM DESIGN... 6 PRODUCT AND PROCESS METRICS...
More informationObjectives. Chapter 19. Verification vs. validation. Topics covered. Static and dynamic verification. The V&V process
Objectives Chapter 19 Verification and Validation Assuring that a software system meets a user s need are to introduce software verification and validation (V&V) and to discuss the distinction between
More informationJ2EE Development Best Practices: Improving Code Quality
Session id: 40232 J2EE Development Best Practices: Improving Code Quality Stuart Malkin Senior Product Manager Oracle Corporation Agenda Why analyze and optimize code? Static Analysis Dynamic Analysis
More information<Insert Picture Here> Lustre Community
Lustre Community Dan Ferber Lustre Community Manager April 16, 2010 The following is intended to outline our general product direction. It is intended for information purposes only,
More informationLog System Based on Software Testing System Design And Implementation
4th International Conference on Mechatronics, Materials, Chemistry and Computer Engineering (ICMMCCE 2015) Log System Based on Software Testing System Design And Implementation Yan Liu1, a, Dahai Jin1,
More informationLLNL Tool Components: LaunchMON, P N MPI, GraphLib
LLNL-PRES-405584 Lawrence Livermore National Laboratory LLNL Tool Components: LaunchMON, P N MPI, GraphLib CScADS Workshop, July 2008 Martin Schulz Larger Team: Bronis de Supinski, Dong Ahn, Greg Lee Lawrence
More informationInternet2 NLR Cisco TelePresence Cooperation: What s it mean (to me)?
Internet2 NLR Cisco TelePresence Cooperation: What s it mean (to me)? Brent Sweeny, Indiana University, GRNOC, and NLR engineering Ben Fineman, Internet2 Main Points What is Cisco TelePresence anyway?
More informationCompositional Model Based Software Development
Compositional Model Based Software Development Prof. Dr. Bernhard Rumpe http://www.se-rwth.de/ Seite 2 Our Working Groups and Topics Automotive / Robotics Autonomous driving Functional architecture Variability
More informationMicroservices Smaller is Better? Eberhard Wolff Freelance consultant & trainer
Microservices Smaller is Better? Eberhard Wolff Freelance consultant & trainer http://ewolff.com Why Microservices? Why Microservices? Strong modularization Replaceability Small units Sustainable Development
More informationTruffle A language implementation framework
Truffle A language implementation framework Boris Spasojević Senior Researcher VM Research Group, Oracle Labs Slides based on previous talks given by Christian Wimmer, Christian Humer and Matthias Grimmer.
More informationAccelerating Double Precision FEM Simulations with GPUs
Accelerating Double Precision FEM Simulations with GPUs Dominik Göddeke 1 3 Robert Strzodka 2 Stefan Turek 1 dominik.goeddeke@math.uni-dortmund.de 1 Mathematics III: Applied Mathematics and Numerics, University
More informationAn Empirical Study of PHP Feature Usage: A Static Analysis Perspective
An Empirical Study of PHP Feature Usage: A Static Analysis Perspective Mark Hills, Paul Klint, and Jurgen J. Vinju CWI, Software Analysis and Transformation (SWAT) ISSTA 2013 Lugano, Switzerland July 16-18,
More informationAcceleration of HPC applications on hybrid CPU-GPU systems: When can Multi-Process Service (MPS) help?
Acceleration of HPC applications on hybrid CPU- systems: When can Multi-Process Service (MPS) help? GTC 2018 March 28, 2018 Olga Pearce (Lawrence Livermore National Laboratory) http://people.llnl.gov/olga
More informationWikipedia and the Web of Confusable Entities: Experience from Entity Linking Query Creation for TAC 2009 Knowledge Base Population
Wikipedia and the Web of Confusable Entities: Experience from Entity Linking Query Creation for TAC 2009 Knowledge Base Population Heather Simpson 1, Stephanie Strassel 1, Robert Parker 1, Paul McNamee
More informationSupporting SELL for High-Performance Computing
Supporting SELL for High-Performance Computing Bjarne Stroustrup and Gabriel Dos Reis Department of Computer Science Texas A&M University College Station, TX 77843-3112 Abstract. We briefly introduce the
More informationScalable Identification of Load Imbalance in Parallel Executions Using Call Path Profiles
Scalable Identification of Load Imbalance in Parallel Executions Using Call Path Profiles Nathan Tallent Laksono Adhianto, John Mellor-Crummey Mike Fagan, Mark Krentel Rice University CScADS Workshop August
More informationMarkus Völter
of Markus Völter voelter@acm.org www.voelter.de @markusvoelter Examples 1 Healthcare Context & Motivation Mobile Apps that help patients w/ treatments Monitor side-effects and recommend actions Manage
More informationGRID MODERNIZATION INITIATIVE PEER REVIEW
GRID MODERNIZATION INITIATIVE PEER REVIEW Planning and Design Tools Portfolio Overview John Grosh GMLC Planning and Design Tools Technical Area Lead Lawrence Livermore National Laboratory April 18, 2017
More informationAutomatic Tuning of Scientific Applications. Apan Qasem Ken Kennedy Rice University Houston, TX
Automatic Tuning of Scientific Applications Apan Qasem Ken Kennedy Rice University Houston, TX Recap from Last Year A framework for automatic tuning of applications Fine grain control of transformations
More informationNIF ICCS Test Controller for Automated & Manual Testing
UCRL-CONF-235325 NIF ICCS Test Controller for Automated & Manual Testing J. S. Zielinski October 5, 2007 International Conference on Accelerator and Large Experimental Physics Control Systems Knoxville,
More informationIBM Case Manager Mobile Version SDK for ios Developers' Guide IBM SC
IBM Case Manager Mobile Version 1.0.0.5 SDK for ios Developers' Guide IBM SC27-4582-04 This edition applies to version 1.0.0.5 of IBM Case Manager Mobile (product number 5725-W63) and to all subsequent
More informationThe Eclipse Parallel Tools Platform Project
The Eclipse Parallel Tools Platform Project EclipseCon 2005 LAUR-05-0574 Parallel Development Tools State of the Art Command-line compilers for Fortran and C/C++ Sometimes wrapped in a GUI Editors are
More informationCOMP 322: Fundamentals of Parallel Programming
COMP 322: Fundamentals of Parallel Programming! Lecture 1: The What and Why of Parallel Programming; Task Creation & Termination (async, finish) Vivek Sarkar Department of Computer Science, Rice University
More informationWHO WANTS TO BE A DESILLIONAIRE GAME RULES INTERNATIONAL TEAM OF EXPERTS MAIN IDEA INTERACTIVE SYSTEMS SOFTWARE ARCHITECTURAL STYLES
SOFTWARE ARCHITECTURAL STYLES WHO WANTS TO BE A DESILLIONAIRE What isn t it what is it what is it good for!2 GAME RULES One person at a time 15 seconds answer time help: ask a friend, poll the audience,
More informationTopic 01. Software Engineering, Web Engineering, agile methodologies.
Topic 01 Software Engineering, Web Engineering, agile methodologies. 1 What is Software Engineering? 2 1 Classic Software Engineering The IEEE definition: Software Engineering is the application of a disciplined,
More informationSoftware Quality Assurance Plan
Software Quality Assurance Plan For KDD-Research Entity Search Tool (KREST) Version 1.2 Submitted in partial fulfillment of the Masters of Software Engineering degree. Eric Davis CIS 895 MSE Project Department
More informationDynamic Languages for HPC at LLNL VEESC Workshop September 3-4, 2010
Dynamic Languages for HPC at LLNL VEESC Workshop September 3-4, 2010 T.J. Alumbaugh Thanks to: Doug Miller, Mike Owen, Tom Brunner, Patrick Brantley (LLNL) Forrest Iandola (UIUC) This work performed under
More information<Insert Picture Here> Oracle SQL Developer: PL/SQL Support and Unit Testing
3 Oracle SQL Developer: PL/SQL Support and Unit Testing The following is intended to outline our general product direction. It is intended for information purposes only, and may not
More informationSoftware Testing Tools
Software Testing Tools Manual Testing Introduction Introduction to software Testing Software Development Process Project Vs Product Objectives of Testing Testing Principals Software Development Life Cycle
More information