DOC PREVIEW
Berkeley COMPSCI C267 - - ACTS - A Reliable Software Infrastructure for Scientific Computing

This preview shows page 1-2-3-22-23-24-44-45-46 out of 46 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 46 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 46 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 46 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 46 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 46 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 46 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 46 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 46 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 46 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 46 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

- ACTS - A Reliable Software Infrastructure for Scientific ComputingOutlineSlide 3Challenges in the Development of Scientific CodesAutomatic TuningWhat About Software Selection?Components: simple exampleThe DOE ACTS CollectionCurrent ACTS Tools and their FunctionalitiesUse of ACTS ToolsSlide 11Slide 12ScaLAPACK: software structurePBLASBLACSBLACS: basicsScaLAPACK: data layoutsScaLAPACK: 2D Block-Cyclic Distribution2D Block-Cyclic DistributionScaLAPACK: array descriptorsArray Descriptor for Dense MatricesScaLAPACK: FunctionalitySlide 23Global Arrays (GA) WrappersTAU: Tuning and Performance AnalysisDefinitions – ProfilingDefinitions – TracingTAU: Example 1 (1/4)TAU: Example 1 (2/4)TAU: Example 1 (3/4)TAU: Example 2 (1/2)TAU: Example 2 (2/2)Who Benefits from these tools?Slide 34Journals Featuring ACTS ToolsACTS Numerical Tools: FunctionalitySlide 37Slide 38Slide 39Slide 40Slide 41Slide 42Slide 43Slide 44ACTS Tools: FunctionalitySlide 46- ACTS -A Reliable Software Infrastructure for Scientific ComputingOsni MarquesLawrence Berkeley National Laboratory (LBNL)[email protected] Berkeley - CS26704/20/2006UC Berkeley - CS267 2Outline•Keeping the pace with the software and hardware•Hardware evolution•Performance tuning•Software selection•What is missing?•The DOE ACTS Collection Project•Goals•Current features•Lessons learned04/20/2006UC Berkeley - CS267 3IBM BlueGene/LA computation that took 1 full year to complete in 1980 could be done in ~ 10 hours in 1992, in ~ 16 minutes in 1997, in ~ 27 seconds in 2001 and in ~ 1.7 seconds today!04/20/2006UC Berkeley - CS267 4Challenges in the Development of Scientific Codes•Research in computational sciences is fundamentally interdisciplinary•The development of complex simulation codes on high-end computers is not a trivial task•Productivity•Time to the first solution (prototype)•Time to solution (production)•Other requirements•Complexity•Increasingly sophisticated models•Model coupling•Interdisciplinarity•Performance•Increasingly complex algorithms•Increasingly complex architectures•Increasingly demanding applications•Research in computational sciences is fundamentally interdisciplinary•The development of complex simulation codes on high-end computers is not a trivial task•Productivity•Time to the first solution (prototype)•Time to solution (production)•Other requirements•Complexity•Increasingly sophisticated models•Model coupling•Interdisciplinarity•Performance•Increasingly complex algorithms•Increasingly complex architectures•Increasingly demanding applications•Libraries written in different languages•Discussions about standardizing interfaces are often sidetracked into implementation issues •Difficulties managing multiple libraries developed by third-parties•Need to use more than one language in one application•The code is long-lived and different pieces evolve at different rates•Swapping competing implementations of the same idea and testing without modifying the code•Need to compose an application with some other(s) that were not originally designed to be combined•Libraries written in different languages•Discussions about standardizing interfaces are often sidetracked into implementation issues •Difficulties managing multiple libraries developed by third-parties•Need to use more than one language in one application•The code is long-lived and different pieces evolve at different rates•Swapping competing implementations of the same idea and testing without modifying the code•Need to compose an application with some other(s) that were not originally designed to be combined04/20/2006UC Berkeley - CS267 5Automatic Tuning•For each kernel1. Identify and generate a space of algorithms2. Search for the fastest one, by running them•What is a space of algorithms?•Depending on kernel and input, may vary•instruction mix and order•memory access patterns•data structures •mathematical formulation •When do we search?•Once per kernel and architecture •At compile time•At run time•All of the above•PHiPAC: www.icsi.berkeley.edu/~bilmes/phipac•ATLAS: www.netlib.org/atlas•XBLAS: www.nersc.gov/~xiaoye/XBLAS•Sparsity: www.cs.berkeley.edu/~yelick/sparsity•FFTs and Signal Processing•FFTW: www.fftw.org•Won 1999 Wilkinson Prize for Numerical Software•SPIRAL: www.ece.cmu.edu/~spiral•Extensions to other transforms, DSPs•UHFFT •Extensions to higher dimension, parallelism04/20/2006UC Berkeley - CS267 6What About Software Selection? •Use a direct solver (A=LU) if•Time and storage space acceptable•Iterative methods don’t converge•Many b’s for same A•Criteria for choosing a direct solver•Symmetric positive definite (SPD)•Symmetric•Symmetric-pattern•Unsymmetric•Row/column ordering schemes available•MMD, AMD, ND, graph partitioning•HardwarebAx  :ExampleBuild a preconditioning matrix K such that Kx=b is much easier to solve than Ax=b and K is somehow “close” to A (incomplete LU decompositions, sparse approximate inverses, polynomial preconditioners, preconditioning by blocks or domains, element-by-element, etc). See Templates for the Solution of Linear Systems: Building Blocks for Iterative Methods.04/20/2006UC Berkeley - CS267 7Components: simple example)2()(11njjjbaxxfnabdxxfabx)(xfNumerical integration: midpointNinbaxfNabdxxf1)(11)(Numerical integration: Monte Carloab)(xfxxxf 2)(221)( xxf 2314)(xxf04/20/2006UC Berkeley - CS267 8The DOE ACTS CollectionGoalsCollection of tools for developing parallel applications Extended support for experimental software Make ACTS tools available on DOE computers Provide technical support ([email protected])Maintain ACTS information center (http://acts.nersc.gov)Coordinate efforts with other supercomputing centersEnable large scale scientific applicationsEducate and train •High Performance Tools•portable•library calls•robust algorithms•help code optimization•More code development in less time•More simulation in less computer time•High•Intermediate level•Tool expertise•Conduct tutorials•Intermediate•Basic level•Higher level of support to users of the tool•Basic•Help with installation •Basic knowledge of the tools•Compilation of user’s reportsLevels of Supporthttp://acts.nersc.govhttp://acts.nersc.gov04/20/2006UC Berkeley - CS267


View Full Document

Berkeley COMPSCI C267 - - ACTS - A Reliable Software Infrastructure for Scientific Computing

Documents in this Course
Lecture 4

Lecture 4

52 pages

Split-C

Split-C

5 pages

Lecture 5

Lecture 5

40 pages

Load more
Download - ACTS - A Reliable Software Infrastructure for Scientific Computing
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view - ACTS - A Reliable Software Infrastructure for Scientific Computing and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view - ACTS - A Reliable Software Infrastructure for Scientific Computing 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?