skip to main content
OSTI.GOV title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: Hybrid Parallel Contour Trees, Version 1.0

Abstract

A common operation in scientific visualization is to compute and render a contour of a data set. Given a function of the form f : R^d -> R, a level set is defined as an inverse image f^-1(h) for an isovalue h, and a contour is a single connected component of a level set. The Reeb graph can then be defined to be the result of contracting each contour to a single point, and is well defined for Euclidean spaces or for general manifolds. For simple domains, the graph is guaranteed to be a tree, and is called the contour tree. Analysis can then be performed on the contour tree in order to identify isovalues of particular interest, based on various metrics, and render the corresponding contours, without having to know such isovalues a priori. This code is intended to be the first data-parallel algorithm for computing contour trees. Our implementation will use the portable data-parallel primitives provided by Nvidia’s Thrust library, allowing us to compile our same code for both GPUs and multi-core CPUs. Native OpenMP and purely serial versions of the code will likely also be included. It will also be extended to provide a hybrid data-parallel /more » distributed algorithm, allowing scaling beyond a single GPU or CPU.« less

Authors:
 [1];  [1];  [2];  [3]
  1. LANL
  2. University of Leeds
  3. LBNL
Publication Date:
Research Org.:
Los Alamos National Lab. (LANL), Los Alamos, NM (United States)
Sponsoring Org.:
USDOE
Contributing Org.:
Los Alamos National Laboratory (LANL)
OSTI Identifier:
1337924
Report Number(s):
HPCT; 005092MLTPL00
C17012
DOE Contract Number:
AC52-06NA25396
Resource Type:
Software
Software Revision:
00
Software Package Number:
005092
Software CPU:
MLTPL
Open Source:
Yes
Open Source under the BSD license.
Source Code Available:
Yes
Related Software:
VTK-m
Country of Publication:
United States

Citation Formats

Sewell, Christopher, Fasel, Patricia, Carr, Hamish, and Weber, Gunther. Hybrid Parallel Contour Trees, Version 1.0. Computer software. https://www.osti.gov//servlets/purl/1337924. Vers. 00. USDOE. 3 Jan. 2017. Web.
Sewell, Christopher, Fasel, Patricia, Carr, Hamish, & Weber, Gunther. (2017, January 3). Hybrid Parallel Contour Trees, Version 1.0 (Version 00) [Computer software]. https://www.osti.gov//servlets/purl/1337924.
Sewell, Christopher, Fasel, Patricia, Carr, Hamish, and Weber, Gunther. Hybrid Parallel Contour Trees, Version 1.0. Computer software. Version 00. January 3, 2017. https://www.osti.gov//servlets/purl/1337924.
@misc{osti_1337924,
title = {Hybrid Parallel Contour Trees, Version 1.0, Version 00},
author = {Sewell, Christopher and Fasel, Patricia and Carr, Hamish and Weber, Gunther},
abstractNote = {A common operation in scientific visualization is to compute and render a contour of a data set. Given a function of the form f : R^d -> R, a level set is defined as an inverse image f^-1(h) for an isovalue h, and a contour is a single connected component of a level set. The Reeb graph can then be defined to be the result of contracting each contour to a single point, and is well defined for Euclidean spaces or for general manifolds. For simple domains, the graph is guaranteed to be a tree, and is called the contour tree. Analysis can then be performed on the contour tree in order to identify isovalues of particular interest, based on various metrics, and render the corresponding contours, without having to know such isovalues a priori. This code is intended to be the first data-parallel algorithm for computing contour trees. Our implementation will use the portable data-parallel primitives provided by Nvidia’s Thrust library, allowing us to compile our same code for both GPUs and multi-core CPUs. Native OpenMP and purely serial versions of the code will likely also be included. It will also be extended to provide a hybrid data-parallel / distributed algorithm, allowing scaling beyond a single GPU or CPU.},
url = {https://www.osti.gov//servlets/purl/1337924},
doi = {},
year = {Tue Jan 03 00:00:00 EST 2017},
month = {Tue Jan 03 00:00:00 EST 2017},
note =
}

Software:
To order this software, request consultation services, or receive further information, please fill out the following request.

Save / Share:
  • Not Specified
  • The purpose of the Sandia National Laboratories Advanced Simulation and Computing (ASC) Software Quality Plan is to clearly identify the practices that are the basis for continually improving the quality of ASC software products. The plan defines the ASC program software quality practices and provides mappings of these practices to Sandia Corporate Requirements CPR 1.3.2 and 1.3.6 and to a Department of Energy document, 'ASCI Software Quality Engineering: Goals, Principles, and Guidelines'. This document also identifies ASC management and software project teams responsibilities in implementing the software quality practices and in assessing progress towards achieving their software quality goals.
  • The purpose of the Sandia National Laboratories (SNL) Advanced Simulation and Computing (ASC) Software Quality Plan is to clearly identify the practices that are the basis for continually improving the quality of ASC software products. Quality is defined in DOE/AL Quality Criteria (QC-1) as conformance to customer requirements and expectations. This quality plan defines the ASC program software quality practices and provides mappings of these practices to the SNL Corporate Process Requirements (CPR 1.3.2 and CPR 1.3.6) and the Department of Energy (DOE) document, ASCI Software Quality Engineering: Goals, Principles, and Guidelines (GP&G). This quality plan identifies ASC management andmore » software project teams' responsibilities for cost-effective software engineering quality practices. The SNL ASC Software Quality Plan establishes the signatories commitment to improving software products by applying cost-effective software engineering quality practices. This document explains the project teams opportunities for tailoring and implementing the practices; enumerates the practices that compose the development of SNL ASC's software products; and includes a sample assessment checklist that was developed based upon the practices in this document.« less
  • Software lifecycles are becoming an increasingly important issue for computational science and engineering (CSE) software. The process by which a piece of CSE software begins life as a set of research requirements and then matures into a trusted high-quality capability is both commonplace and extremely challenging. Although an implicit lifecycle is obviously being used in any effort, the challenges of this process - respecting the competing needs of research vs. production - cannot be overstated. Here we describe a proposal for a well-defined software lifecycle process based on modern Lean/Agile software engineering principles. What we propose is appropriate for manymore » CSE software projects that are initially heavily focused on research but also are expected to eventually produce usable high-quality capabilities. The model is related to TriBITS, a build, integration and testing system, which serves as a strong foundation for this lifecycle model, and aspects of this lifecycle model are ingrained in the TriBITS system. Here, we advocate three to four phases or maturity levels that address the appropriate handling of many issues associated with the transition from research to production software. The goals of this lifecycle model are to better communicate maturity levels with customers and to help to identify and promote Software Engineering (SE) practices that will help to improve productivity and produce better software. An important collection of software in this domain is Trilinos, which is used as the motivation and the initial target for this lifecycle model. However, many other related and similar CSE (and non-CSE) software projects can also make good use of this lifecycle model, especially those that use the TriBITS system. Indeed this lifecycle process, if followed, will enable large-scale sustainable integration of many complex CSE software efforts across several institutions.« less
  • This document is a user`s guide for the PLoT Near-Surface WIND (PLTWIND) modeling system. PLTWIND is a personal-computer-based software product designed to produce graphical displays of Hanford wind observations and model-generated wind fields. The real-time wind data processed by PLTWIND are acquired from the mainframe computer system at the Hanford Meteorology Station and copied to PLTWIND systems by the Hanford Local Area Network (HLAN). PLTWIND is designed fbr operation on an IBM-compatible PC with a connection to the HLAN. An HP-compatible pen plotter or laser printer (with a minimum of 1.5 megabytes of memory and a Plotter-in-a-Cartridge hardware) is requiredmore » to generate hardcopies of PLTWTND`s graphical products. PLTWM`s products are intended for use by emergency response personnel in evaluating atmospheric dispersion characteristics in the near-surface environment. Model products provide important atmospheric information to hazard evaluators; however, these products are only tools for assessing near-surface atmospheric transport and should not be interrupted as providing definitive representation of atmospheric conditions.« less

To initiate an order for this software, request consultation services, or receive further information, fill out the request form below. You may also reach us by email at: .

OSTI staff will begin to process an order for scientific and technical software once the payment and signed site license agreement are received. If the forms are not in order, OSTI will contact you. No further action will be taken until all required information and/or payment is received. Orders are usually processed within three to five business days.

Software Request

(required)
(required)
(required)
(required)
(required)
(required)
(required)
(required)