S.G. Parker

University of Utah, Salt Lake City, UT, USA

Are you S.G. Parker?

Claim your profile

Publications (13)1.47 Total impact

  • Source
    Conference Proceeding: RTSL: a Ray Tracing Shading Language
    S.G. Parker, S. Boulos, J. Bigler, A. Robison
    [show abstract] [hide abstract]
    ABSTRACT: We present a new domain-specific programming language suitable for extending both interactive and non-interactive ray tracing systems. This language, called ldquoray tracing shading languagerdquo (RTSL), builds on the GLSL language that is a part of the OpenGL specification and familiar to GPU programmers. This language allows a programmer to implement new cameras, primitives, textures, lights, and materials that can be used in multiple rendering systems. RTSL presents a single-ray interface that is easy to program for novice programmers. Through an advanced compiler, packet- based SIMD-optimized code can be generated that is performance competitive with hand-optimized code. This language and compiler combination allows sophisticated primitives, materials and textures to realize the performance gains possible by SIMD and ray packets without the low-level programming burden. In addition to the packet-based Manta system, the compiler targets two additional rendering systems to exercise this flexibility: the PBRT system and the batch Monte Carlo renderer Galileo.
    Interactive Ray Tracing, 2007. RT '07. IEEE Symposium on; 10/2007
  • Source
    Article: Design for parallel interactive ray tracing systems
    J. Bigler, A. Stephens, S. G. Parker
    Proceedings of the IEEE Symposium on Interactive Ray Tracing. 01/2006;
  • Source
    Conference Proceeding: SCIRun2: a CCA framework for high performance computing
    [show abstract] [hide abstract]
    ABSTRACT: We present an overview of the SCIRun2 parallel component framework. SCIRun2 is based on the common component architecture (CCA) as stated by R. Armstrong et al. (1999) and the SCI Institutes' SCIRun by C. Johnson and S. Parker (1999). SCIRun2 supports distributed computing through distributed objects. Parallel components are managed transparently over an M×N method invocation and data redistribution subsystem. A meta component model based on CCA is used to accommodate multiple component models such as CCA, CORBA and Dataflow. A group of monitoring components built on top of the TAU toolkit as stated in Advanced Computing Laboratory (1999) evaluate the performance of the other components.
    High-Level Parallel Programming Models and Supportive Environments, 2004. Proceedings. Ninth International Workshop on; 05/2004
  • Source
    Conference Proceeding: SCIRun/BioPSE: integrated problem solving environment for bioelectric field problems and visualization
    [show abstract] [hide abstract]
    ABSTRACT: SCIRun is a general purpose problem solving environment that seeks to integrate the steps of preparing, executing, and visualizing simulations of physical and biological systems. The implementation of SCIRun is by means of an interactive dataflow network consisting of modules and data pipes exposed as a visual programming language. SCIRun also contains specific modules for bioelectric field simulations and visualizations and the combination of SCIRun with this package is known as BioPSE (www.sci.utah.edu/software/biopse). This software has been in the public domain since 2000 and in that time we have developed strategies for software development, engineering, testing, documentation, and training. We have also continued to expand the scope of the SCIRun/BioPSE package not only through our own codes but by constructing bridges to other systems, both open source and proprietary. We have also created a repository for relevant sample networks and datasets with the aim of allowing diverse groups to test and evaluate algorithms using identical data and to share their results with the community for comparison of performance and accuracy. We present here a summary of the software system and describe specific experiences and conclusions with regard to creating and managing a large open source software project carried out within a university setting.
    Biomedical Imaging: Nano to Macro, 2004. IEEE International Symposium on; 05/2004
  • Source
    Conference Proceeding: Uintah: a massively parallel problem solving environment
    [show abstract] [hide abstract]
    ABSTRACT: Describes Uintah, a component-based visual problem-solving environment (PSE) that is designed to specifically address the unique problems of massively parallel computation on tera-scale computing platforms. Uintah supports the entire life-cycle of scientific applications by allowing scientific programmers to quickly and easily develop new techniques, debug new implementations and apply known algorithms to solve novel problems. Uintah is built on three principles: (1) as much as possible, the complexities of parallel execution should be handled for the scientist, (2) the software should be reusable at the component level, and (3) scientists should be able to dynamically steer and visualize their simulation results as the simulation executes. To provide this functionality, Uintah builds upon the best features of the SCIRun (Scientific Computing and Imaging Run-time) PSE and the DoE (Department of Energy) Common Component Architecture (CCA)
    High-Performance Distributed Computing, 2000. Proceedings. The Ninth International Symposium on; 02/2000
  • Article: Interactive simulation and visualization
    [show abstract] [hide abstract]
    ABSTRACT: Most researchers who perform data analysis and visualization do so only after everything else is finished, which often means that they don't discover errors invalidating the results of their simulation until post-processing. A better approach would be to improve the integration of simulation and visualization into the entire process so that they can make adjustments along the way. This approach, called computational steering, is the capacity to control all aspects of the computational science pipeline. Recently, several tools and environments for computational steering have begun to emerge. These tools range from those that modify an application's performance characteristics (either by automated means or by user interaction) to those that modify the underlying computational application. A refined problem-solving environment should facilitate everything from algorithm development to application steering. The authors discuss some tools that provide a mechanism to integrate modeling, simulation, data analysis and visualization
    Computer 01/2000; · 1.47 Impact Factor
  • Conference Proceeding: Simulation steering with SCIRun in a distributed environment
    [show abstract] [hide abstract]
    ABSTRACT: Building systems that alter program behavior during execution based on user-specified criteria (computational steering systems) has been a recent research topic, particularly among the high performance computing community. To enable a computational steering system with powerful visualization capabilities to run on distributed memory architectures, a distributed infrastructure (or runtime system) must first be built. This infrastructure would permit harnessing a variety of machines to collaborate on an interactive simulation. Building such an infrastructure requires strategies for coordinating execution across machines (concurrency control mechanisms), mechanisms for fast data transfer between machines, and mechanisms for user manipulation of remote execution. We are creating a distributed infrastructure for the SCIRun computational steering system. SCIRun, a scientific problem solving environment (PSE), provides the ability to interactively guide or steer a running computation. Initially designed for a shared memory multiprocessor, SCIRun is a tightly integrated, multi-threaded framework for composing scientific applications from existing or new components. High performance computing is needed to maintain interactivity for scientists and engineers running simulations. Extending such a performance-sensitive application toolkit to enable pieces of the computation to run on different machine architectures all within the same computation would prove very useful. Not only could many different machines execute this framework, but also several machines could be configured to work synergistically on computations
    High Performance Distributed Computing, 1998. Proceedings. The Seventh International Symposium on; 08/1998
  • Conference Proceeding: An integrated problem solving environment: the SCIRun computational steering system
    [show abstract] [hide abstract]
    ABSTRACT: SCIRun is a scientific programming environment that allows the interactive construction, debugging, and steering of large-scale scientific computations. We review related systems and introduce a taxonomy that explores different computational steering solutions. Considering these approaches, we discuss why a tightly integrated problem solving environment, such as SCIRun, simplifies the design and debugging phases of computational science applications and how such an environment aids in the scientific discovery process
    System Sciences, 1998., Proceedings of the Thirty-First Hawaii International Conference on; 02/1998
  • Article: Computational steering. Software systems and strategies
    S.G. Parker, C.R. Johnson, D. Beazley
    [show abstract] [hide abstract]
    ABSTRACT: With today's large and complex applications, scientists have increasing difficulty analyzing and visualizing vast amounts of data. Computational steering is an emerging technology that addresses this problem, providing a mechanism for integrating simulation, data analysis, visualization, and postprocessing
    IEEE Computational Science and Engineering 11/1997;
  • Conference Proceeding: Computational Steering and the SCIRun Integrated Problem Solving Environment
    [show abstract] [hide abstract]
    ABSTRACT: SCIRun is a problem solving environment that allows the interactive construction, debugging, and steering of large-scale scientific computations. We review related systems and introduce a taxonomy that explores different computational steering solutions. Considering these approaches, we discuss why a tightly integrated problem solving environment, such as SCIRun, simplifies the design and debugging phases of computational science applications and how such an environment aids in the scientific discovery process.
    Scientific Visualization Conference, 1997; 02/1997
  • Conference Proceeding: SCIRun: A Scientific Programming Environment for Computational Steering
    S.G. Parker, C.R. Johnson
    [show abstract] [hide abstract]
    ABSTRACT: We present the design, implementation and application of SCIRun, a scientific programming environment that allows the interactive construction, debugging and steering of large scale scientific computations. Using this "computational workbench," a scientist can design and modify simulations interactively via a dataflow programming model. SCIRun enables scientists to design and modify models and automatically change parameters and boundary conditions as well as the mesh discretization level needed for an accurate numerical solution. As opposed to the typical "off-line" simulation mode - in which the scientist manually sets input parameters, computes results, visualizes the results via a separate visualization package, then starts again at the beginning - SCIRun "closes the loop" and allows interactive steering of the design and computation phases of the simulation. To make the dataflow programming paradigm applicable to large scientific problems, we have identified ways to avoid the excessive memory use inherent in standard dataflow implementations, and have implemented fine-grained dataflow in order to further promote computational efficiency. In this paper, we describe applications of the SCIRun system to several problems in computational medicine. In addition, an we have included an interactive demo program in the form of an application of SCIRun system to a small electrostatic field problem.
    Supercomputing, 1995. Proceedings of the IEEE/ACM SC95 Conference; 02/1995
  • Conference Proceeding: A computational steering model applied to problems in medicine
    C.R. Johnson, S.G. Parker
    [show abstract] [hide abstract]
    ABSTRACT: We describe a computational steering model which allows users to interactively change boundary conditions, model geometry, and computational parameters via a graphical user interface. To replace the typical simulation mode-in which the researcher manually sets input parameters, computes results, stores data off to disk, visualizes the results via a separate visualization package, then starts again at the beginning-we have designed software to “close the loop” and allow the visualization to help guide (steer) the design and computation phases of the simulation. We have applied the computational steering model to problems in medicine, specifically to applications in bioelectric field phenomena and biomedical device design
    Supercomputing '94. Proceedings; 12/1994
  • Source
    Conference Proceeding: A physically based mesh generation algorithm: applications in computational medicine
    [show abstract] [hide abstract]
    ABSTRACT: The process of generating a finite element mesh is accelerated by integrating physical and geometrical constraints into the initial mesh. By beginning with a near-optimal initial mesh, fewer iterations of refinement are needed to obtain mesh convergence. We apply this algorithm to large-scale bioelectric field problems involving the complex geometries of the human body. As an initial testbed, we have constructed an algorithm to generate meshes from segmented MR images
    Engineering in Medicine and Biology Society, 1994. Engineering Advances: New Opportunities for Biomedical Engineers. Proceedings of the 16th Annual International Conference of the IEEE; 12/1994