David E. Hudak

Learn More
This paper uses bottom-up, static program partitioning to minimize the execution time of parallel programs by reducing interprocessor communication. Program partitioning is applied to a parallel programming construct known as a sequentially iterated parallel loop. This paper develops and evaluates compiler techniques to automatically generate data(More)
Large manufacturers increasingly leverage modeling and simulation to improve quality and reduce cost. Small manufacturers have not adopted these techniques due to sizable upfront costs for expertise, software and hardware. The Software as a Service (SaaS) model provides access to applications hosted in a cloud environment, allowing users to try services at(More)
The Open OnDemand Project is an open-source software project, based on the Ohio Supercomputer Center's proven "OSC OnDemand" platform, that enables HPC centers to install and deploy advanced web and graphical interfaces for their users. Open OnDemand also includes features such as allowing users to build their own web apps that can then be shared with other(More)
Computer-controlled scientific instruments such as electron microscopes, spectrometers, and telescopes are expensive to purchase and maintain. Also, they generate large amounts of raw and processed data that has to be annotated and archived. Cyber-enabling these instruments and their data sets using remote instrumentation cyberinfrastructures can improve(More)
Software engineering studies have shown that programmer productivity is improved through the use of computational science integrated development environments (or CSIDE, pronounced “sea side”) such as MATLAB. Scientists often desire to use high-performance computing (HPC) systems to run their existing CSIDE scripts with large data sets. ParaM is a CSIDE(More)
MATLAB has become the dominant high-level language for technical computing. However, MATLAB has significant shortcomings when used for large-scale computationally intensive applications that require very high performance and/or significant amounts of memory. In such contexts, it is common for MATLAB to be first used for prototyping the application, followed(More)
The challenges of data-intensive computing have been summarized (Gorton et al., 2008) as ‘‘managing and processing exponentially growing data volumes, often arriving in time-sensitive streams from arrays of sensors and instruments’’ and ‘‘significantly reducing data analysis cycles so that researchers can make timely decisions.’’ The management of such data(More)
Supercomputing centers, typically non-profit, government or university-based organizations with scarce resources, are increasingly being requested to provide customized web portals for user-centered access to their services in order to support a demanding customer base. These portals often have very similar architectures and meet similar requirements, with(More)