Run-time Visualization of Program Data. Allan Tuchman, David Jablonowski, and George Cybenko. Center for Supercomputing Research and Development

Size: px
Start display at page:

Download "Run-time Visualization of Program Data. Allan Tuchman, David Jablonowski, and George Cybenko. Center for Supercomputing Research and Development"

Transcription

1 Run-time Visualization of Program Data Allan Tuchman, David Jablonowski, and George Cybenko Center for Supercomputing Research and Development University of Illinois at Urbana-Champaign Urbana, Illinois Abstract An important improvement to visualization systems will provide a graphics \window into an application" displaying program data at run-time through an easyto-use graphical interface. With little or no instrumentation of the application the user will be able to dynamically select data for graphical display as the program executes on a remote computer system. The data to be displayed and the type of display to be used are chosen interactively while the application is executing. Any data display can be enabled or disabled at any time; it is not necessary to specify the data or graphics technique before compilation as with conventional graphics tools. We propose an architecture for such a remote visualization system, and describe Vista, our implementation. Designed primarily for scientic visualization, Vista also oers an environment for more eective debugging and program development. 1 Introduction The graphical display of information is important to every aspect of computing. Even applications which are not necessarily centered around visual display benet greatly from computer generated graphics. Graphics are used in algorithm development, program development, and display of intermediate and nal computational results. For many years a typical application run on a host computer called graphics subroutines to show data or results. Those subroutines may have been internal to the application or from a graphics library. The subroutines may have controlled a graphics device directly or perhaps output a le for later viewing. This model does not promote the usability of graphics. The application developer must specify in the program before compilation which data values will be displayed, when these values will be displayed, and to some extent, how and where they will be displayed. This specication often requires major modication to the application program and gives the application user little control over what data can be displayed. The notion of any distributed graphics processing or the network environment must be explicit in the application or the graphics library in use. This all becomes a part of the application. For each run, internal or external parameters may control the path of execution, and therefore the specic graphics routines that are executed, but this is the extent of the control. In this paper we discuss the scope of dierent types of visualization from the standpoint of quality, interactivity, and usability. We describe functionality for a distributed display visualization system with dynamic data and display selection that lls a gap in existing systems and is immediately useful to a large class of users. We discuss the rationale for the design of a system that meets these needs, show how such a system is used, and describe the architecture of Vista, our implementation of this system. 2 The scope of visualization Computer graphics is often dened in terms of its intended use. A common characterization of computer graphics applied to scientic visualization is with respect to the intended viewer. The terms personal graphics, peer graphics, and publication graphics are frequently used to describe images that are, in general, of progressively higher quality and are more costly to generate. A publication graphic does not necessarily convey more information than a personal graphic but attempts a clear, polished, and more eye-catching display for a wider and perhaps non-expert audience. Another taxonomy breaks down the eld according to the amount of human analysis needed to extract information from the available data. We may dene the terms snapshot, structured interaction, and exploration in a hierarchy of increasing human involvement in extracting meaning from the data 1. For a snapshot, the application program developer knows ahead of time exactly what data to show and may even have a good idea of the type of information that will be conveyed by this data. Frequently a single image represents the nal result of a computation or portion thereof. For a structured interaction we propose that the application developer had some idea which data items would be useful, but allows the application user some interactive capability in chosing the data to see, how to display it, or control of attributes such as viewing parameters or color which may best show the data. In an exploration there are generally no preconceived 1 We regret the overloading of the term interaction in the context of computer graphics. We cannot nd a more appropriate word for this categorization.

2 notions of what features may be present in the data. Often, large data sets that are collected from experimental apparatus or generated from complex simulations contain so much information about the studied phenomena that days or weeks can be spent browsing a single set of data and exploring it with diverse visualization techniques. There are subtle dierences between a system which shows algorithms, one which shows data, and one which shows data structures. In a broad generalization, depiction of data structures is primarily for debugging, visualization of the data itself is for problem analysis, and algorithm visualization is for both insight and development. The dierence between these is sometimes, but not always, just the point of view of the user. Perhaps a visualization system should oer methods to show all three items. Over the past twenty years computer graphics techniques have been developed to produce the rendered images of our models. These techniques aid us in scientic visualization, but do not intrinsically contain the data ltering, manipulation, and modeling that allow users to grasp the essence of the data. Visualization toolkits now pave the way for complex data analysis and visualization techniques for data exploration. In this paper we describe a remaining piece of the visualization process, that of viewing program data as the application is executing. We term this simulationtime animation, and stress its importance in all aspects of the computation cycle: algorithm development, program development and implementation, debugging, and nally, display of intermediate and - nal computational results. The term reects both the immediate feedback (via personal graphics) with the potential for steering the course of the application as well as the dynamic display update (and structured interaction) and single-image snapshots. This diers considerably from a post-processed animation (of peer or publication graphics) produced some time after the application is complete. We also allow some data exploration during program execution. Our model for a simulation-time animation system is compatible with existing graphics programs, visualization systems, and toolkits allowing us to leverage o a large existing body of graphics software. 3 Previous work There are a few well-known systems promoted for visualization. Each shares some of the characteristics of our work, but most address a slightly dierent problem. The most well known systems for scientic visualization are AVS [UTK + 89], developed by Stardent Computer, and ape [Dye90] from Ohio State University. Both of these systems provide a visual programming interface which allows the user to specify a sequence or network of processes to manipulate data. The individual processes can execute on a local or a remote computer. The starting point for most users of these systems is one or more data les. It is possible though, with some small modication to the program, to have the application program write directly to the start of the visualization network. This provides an excellent tool to manipulate predetermined data from an application. However, neither system provides direct access to arbitrary program data. The Balsa-II [Bro88] system for algorithm animation provides the same simulation-time animation capabilities that we strive for, yet requires considerable instrumentation of the application source program. It is not easy to dynamically show new data and the system is not inherently distributed. Aladdin [HHR89] has similar use in algorithm animation, and uses a graphical interface to minimize the amount of graphics programming required to visualize the algorithm. Johnston and others at Lawrence Berkeley Laboratory have developed a system for distributed scientic movie making using a Sun workstation and a Cray supercomputer [JHH + 88]. By modifying the source program to include calls to their Scry library, an application can have data rendered on the supercomputer or the workstation, displayed on the workstation, then recorded on a low-cost animation system. Their work is most signicant in distributed image display and in the low-cost animation solution. Scry does not address dynamic data access. Our own work in this area began as we tried to abstract the necessary control and data access requirements for a distributed simulation-time animation system (STAS) [NT89]. This system was unwieldy and required considerable additions and modications to the program source. In later work we separated data access from data display in a remote visualization environment for looking at matrix data in linear algebra applications [TB90]. One way to provide distributed graphics is with a distributed window system such as the X Window System or NeWS. Both allow remote display of graphics, but graphics algorithms still execute in the application (client) process. Forthcoming work in PEX (Phigs Extensions to X) will shift more of the low-level graphics tasks to the remote workstation making this a more attractive solution. Using PEX, the graphics algorithms will still execute in the client process, but graphics transformations and rendering functions will move to the server and can potentially be processed by hardware. The window systems still do not address the application access to graphics or issues of dynamic data access. 4 Design Several features are useful in a simulation-time animation system, or even one which shows only run-time snapshots of data. The system should have easy-to-access graphics, Support Host Visualization Server Graphics Workstation Figure 1: Abstract Model of the Vista System

3 require minimal modication of the application program, Supercomputer Workstation transparently provide a distributed environment with remote visualization, allow dynamic association of the display method and data, encourage dynamic selection of what to show, and when, make use of existing graphics software, Sequence 1a. Insert breakpoints and compile application 2. execute application 1b. Start Vista visualization server 3. Select and Visualize data as desired Figure 2: Steps for using Vista use the simulation-time animation model, the only model which allows computational steering. The start-up time or learning eort is always a problem in getting people to use a system. The cost, generally poor graphics capabilities, and geographic constraints of supercomputers dictate a design which allows a graphics workstation to manage graphics functions and user interface. Simulation-time graphics are the best way to get insights into the method of solution for a problem. Watching a solution converge while the application is executing provides information on rate of convergence as well as anomalies that may show up only in a time sequence of images (animation). As new insights are realized, the ability to display new data dynamically or to display already visible data in a new form is very important. Individually these goals have been achieved by others, but not together. Vista's logical design, shown in Figure 1, has two parts, a visualization server which runs on the workstation and an application support module which runs on the application host. The two parts communicate through any inter-machine communications mechanism, for example TCP/IP over ethernet. Together, they will allow us to satisfy our requirements listed above. The visualization server must provide a user interface to access the system functionality, associate data with graphical display methods, and manage the display of graphics from these methods. The application support module must be able to access application data at execution time and provide a mechanism for visualization break points. We also refer to these as vispoints for short. Data access is eected by maintaining a symbol table with information obtained in any of several ways: a source preprocessor which builds the symbol table, with automatic or user-inserted procedure calls from the application to enter this information, or by reading a compiler-generated symbol table. The vis-points are used to identify those places in the program where data access is permitted. Although vista can interrupt the program at any arbitrary point during program execution to access and extract data, this is not encouraged. It is possible that the data structures of interest are being modied and that in their state of transition may even be temporarily corrupt. The vis-point mechanism then, is the user's way of giving the application support module permission to access data. 5 Use Before providing more details of the system architecture, we describe a typical use of Vista in order provide an overview of the distributed and accessible nature of the system. The use of Vista is outlined in Figure 2 and further described below. Figure 3 shows a workstation screen during a Vista session. We will refer to parts of this gure in our following description. A session normally starts with the user logged in to a workstation. There are one or more terminalemulator sessions (Xterm or shell windows) open on the workstation, which we call local windows, and an additional window open to another computer via a remote login (or remote shell). The remote host will execute the application. The shell windows are iconi- ed for clarity and not shown in Figure 3. In a local window, the user types the command vista to start the visualization server and display the visualization manager window, shown in the lower left of Figure 3 (step 1b of gure 2). The user now focuses on the remote window and edits the application to insert visualization break points if they have not been previously added. This is the only manual instrumentation (modication) required for most programs. The application is compiled with a compiler option to create a symbol table (the -g option of most Unix compilers) and linked to the Vista library (step 1a). When the user executes the application (step 2) it establishes a remote connection to the visualization server and a status message is displayed to this eect. With both processes now running, the user may add program variables to the local list (step 3), shown in the center column of the visualization manager window. To display any variable in this list, the user points at it with the mouse cursor, clicks the mouse button and does the same to one of the display icons shown in the rightmost column of the visualization manager window. The dial and X-Y plots shown in Figure 3 were created in this way. s of more complex data, such as the mesh in the gure, include multiple variables selected in a slightly dierent way. Each time the application encounters a vis-point, all displays on the screen are updated to reect current program values. At the user's option the application may automatically proceed after each update or await further instruction from the user. Any graphic display can be added or removed at any time. When the application completes, the visualization server is notied. If the visualization server is terminated ear-

4 Figure 3: Workstation screen during a Vista session lier, the application will continue uninterrupted until its completion. 6 The Vista architecture Certain aspects of the architecture were determined by the distributed nature of our design. The simple design of two modules shown in Figure 1 might be satisfactory, but would limit our exibility in distributing functions, hinder overlapped processing of the two machines, and possibly allow the visualization system to compete with the application for host system resources. (For example, a single process on the host would impose some intermachine communication overhead on the application process. This can have a serious impact on a multiprocessor machine.) Although the application support will normally process requests for data at well-dened vis-points, for some requests we may want to interrupt the application and access information immediately. This latter situation led us to insert an additional support module on the application host. There were less compelling reasons to provide a similar module on the visualization host, but long term plans for connecting many hosts running a distributed application showed that such a module would be useful as a multiplexor if for no other reason. In fact, the symmetric design shown in Figure 4 has worked out very well and includes important synchronization logic in the auxiliary processes labeled Data Manager. The underlying Vista model shown in Figure 4 identies each major component of the system. As each module is presented, its primary functions and interface to other processes is described. Implementation is explained in more detail in [TJC91]. Each of the four large boxes in Figure 4 represents an independent Vista module and is implemented as a separate process. 6.1 Visualization Manager The user interface is a part of the visualization server process that we call the Visualization Manager, or VM. To the user the VM appears to be the bulk of Vista. The VM is already running on one computer, usually a graphics workstation, when the application program begins execution on (the same or) another computer, generally a more powerful machine. Once the application starts, the VM maintains a list of available program symbols and a list of available graphics techniques (widgets or other tools, for example). At any time the user can choose one or more names, associate them with a graphical method, and have a picture show up. The image will be dynamically updated

5 Object Source Executive defaults Vista Visualization Manager Data Manager Host Workstation Interface to the rest of Vista and the application control data Data Manager Visualization Manager defaults resources Main Vista Graphical User Interface data selection Data filtering and transformation Multiplex data to display methods Tool Tool Tool remote session login interface via internal routine or IPC Network / Communication Interface Figure 4: Architecture of the Vista System Method Method Method as the program variables change (subject to vis-points discussed below). The three primary responsibilities of the VM are shown as emboldened boxes in Figure 5. The interface includes the communication routines and data transmission. The graphical user interface allows the user to perform data selection, display selection, and provides control of the Vista system. This is the display shown as the lower left window in Figure 3. Finally, the VM serves to direct incoming data from the application to the graphics display method or process. Optional transformations on the data may be performed; for example, for type coercion or range adjustment. A Method is a module that takes transformed data and displays it graphically on the user's screen. A display method may be an internal module of the VM, for example, a widget in a window system toolkit. More generally, a display method may be a separate process (the display method hanging below the dotted box in Figure 5). An interprocess communication (IPC) mechanism is used to exchange data and control information between the display method and the VM. The use of external display methods is a most important capability as it allows almost any graphics function to be added to Vista without recompilation or changes to the Vista source program. In fact, this external method may be placing data into the beginning of a visualization pipeline for an existing visualization system such as AVS or ape. Figure 5: Components of the Visualization Manager Vista Executive data Data Access Routines request/ response C Interpreter symbols Symbol Table Scanner AE Symbol table Data Interface to the rest of Vista request/ response symbols Figure 6: Components of the Executive

6 6.2 Executive The other part of Vista that the user may be aware of is the application support module associated with the application program. The program is loaded with and linked to an Executive, or AE. The AE is mostly independent of the application program, but by sharing the task address space has access to all program data. The main components of the application process when linked with the AE are shown as emboldened boxes in Figure 6. The interface is not unlike that of the VM. The AE maintains a symbol table in a data structure comprised of a variable name, its address, and its type. This information may be supplied by the application via procedure calls or automatically determined by reading the symbol table from the object le. When presented with a request from the VM, the AE searches its tables, possibly accesses data, and returns an answer. For examples, the is name message asks the AE if a name is a valid program identier. The return message is either type and size information for the variable or a negative response. At predetermined vis-points, the program transfers control to the AE, which services any outstanding requests and returns to the application. The C interpreter in the AE is not necessary for routine access of simple data types, including arrays with non-unity stride. The interpreter will allow us to access and traverse more complex data types in the future. This interpreter is partially implemented and has aided us in debugging Vista. 6.3 Data Managers Neither the AE nor the VM communicate directly with another computer. Each has an associated task, a Data Manager, or DM, running on the same multiprogramming system. The DM connected to the VM is called the VDM, the DM adjoining the AE is the ADM. The primary function of the Data Managers is to pass data between computers. This includes maintenance of communication channels and overall synchronization of the system. The ADM and VDM are symmetric in several layered tasks, discussed below. They dier in other functions, though. For example, the VDM may accept connections from several dierent hosts in one session; the ADM may need to send an interrupt to the application if it needs information immediately, before the next program vis-point. One of the ADM's most important tasks is to maintain two lists, one of work items (such as data access) that must be performed at all vis-points, and another prioritized list of new messages that have arrived since the previous vis-point. 6.4 Communication An early decision was to make the entire system asynchronous. This allows the user to formulate several requests without waiting for each to be satised. In fact, a user may make several requests before the application sees any of them at the next vis-point, providing a good processing overlap. Similarly, it allows a simple request to be satised before a more timeconsuming one. The interactivity can remain as high as possible. At times we must synchronize or wait for a specic event before proceeding, but this is handled in our software. We also decided to use a message passing scheme for all inter-module communications. The use of messages provides more error checking in data transfer. An important use of this method is to order messages, associate responses with specic queries, and keep track of outstanding messages in need of a response. At rst it may appear that the problem of transparent data transfer between heterogeneous machines has been solved by the Remote Procedure Call (RPC) protocol. This is certainly the case for transferring relatively small amounts of data between machines as procedure parameters. Subroutine parameters and types are known in advance; however, the Executive can access any data item in the program at any time. Due to this requirement and the large amount of data we need to access, we were not willing to pay the penalty of adhering to RPC. We have found (so far) that converting even binary oating point data is not too dicult. We may have to reassess our decision if we later need to exchange more complicated user-dened data structures across machines. The lowest level of all Vista modules is the networking or communication interface. This handles the inter-process and inter-machine communication. Above this is the transport layer which packages messages and data. The Data Managers provide the data layer which provide transparent exchange of data across heterogeneous computers. 7 Future work Vista development is a continuing eort. In order to develop a system which is truly practical, we have released Vista to our own department. We have a list of immediate requirements that will aect additional acceptance and porting of the system to other sites. We are trying to isolate the non-portable components of Vista. The application executive is our most machine-dependent module. It could take quite a bit of eort to port this program to a host which does not support the Unix system. The symbol table scanner is quite sensitive to the host environment. We still have some parts of our original design specication left to implement. For example, we must interface Vista with some robust visualization system. A playback le will be implemented to see how well it will work as a session recorder. This le will also allow a user to use the same Vista interface for data browsing (exploration) as for his or her simulationtime animation. Our design allows Vista to be used in a parallel processing or distributed process environment. Multiple AE/ADM's can connect to a single VM/VDM. The AE's may be from dierent machines or from many clusters of the same machine (for example, the Cedar system developed at the Center for Supercomputing Research and Development). For such a conguration, each process, whether on the same or dierent computers, will link with an AE and have its own ADM. Only a single VM/VDM pair is still used. (In Figure 4, the upper portion is cloned for each process.) After completing this development we will turn our attention back toward the application program. We have a dicult problem with the scope of identiers.

7 Currently we assume that data is accessible in the current scope or static. We must also consider dynamically (heap) allocated storage and data access in parallel applications. Some of these problems and others can be solved with an automatic source preprocessor; one which can automatically insert calls to mark the entry or exit of a scope for example. We must consider data represented by data structures more complex than scalars and arrays. In scientic computing, large data sets are common. There are ways to minimize the amount of data we need to access or transmit between processes. This naturally leads to a study of load balancing in visualization software, splitting work between the host and workstation (and considering network bandwidth). 8 Conclusion We have presented Vista, an architecture for remote data visualization, along with its initial implementation. We have met our goals by providing a mostly point-and-click (object-action) graphical user interface, along with minimal program instrumentation to access any program data items on demand and displaying them using dynamically-chosen graphics methods during execution of the application. Vista works with applications written in either Fortran or C. Finally, the system is modular to facilitate development and provides some tailored modules for dierent environments, machines, or applications. We have a few components of our initial design left to implement and several challenging problems left to solve. One of the weakest areas of our current implementation is the graphics display methods themselves. Since we assume that good rendering software is available, commercially or otherwise, we put little eort into this large development eort. Our small selection of graphics display methods has been assembled in an ad hoc fashion from many sources. As such, they vary greatly in levels of robustness. This implementation of Vista is relatively complete in itself. From this point we can work in several divergent directions including parallel remote graphical debugging, access to and selection of more complex data structures, and visualization of distributed applications. Our intent was to create a portable remote visualization environment without ties to any particular operating system, language, or graphics support library. The current implementation of Vista is built on existing standards, requiring sockets as implemented in Berkeley Unix version 4.2 or later. With an appropriate message passing mechanism, much of Vista could be ported to any operating system and network environment. The visualization component of our implementation uses the X Windowing System for the graphical user interface and the graphics displays. Acknowledgements The Vista implementation included the work of several people besides the authors. Sanjay Sharma implemented the network layer using sockets as described and supported by Berkeley Unix 4.2. Brian Bliss developed most of the Executive including the ambitious C language interpreter. His interpreter also scans the object le symbol tables. Allen Malony participated in many of the earlier discussions on the system design, and the authors thank him for his comments. This work was partially supported by the Air Force Oce of Scientic Research Grant under Grant No. AFOSR and U.S. Department of Energy under Grant No. DOE DE-FG02-85ER References [Bro88] Marc H. Brown. Exploring algorithm using Balsa-II. Computer, 21(5):14{36, May [Dye90] D. Scott Dyer. A dataow toolkit for visualization. IEEE Computer Graphics and s, 10(4):60{69, July [HHR89] Esa Helttula, Aulikki Hyrskykari, and Kari-Jouko Raiha. Graphical specication of algorithm animations with Aladdin. In Proceedings of the Twenty-Second Annual Hawaii International Conference on System Science, pages 892{901, Kailua-Kona, Hawaii, January IEEE. [JHH + 88] W. E. Johnston, D. E. Hall, J. Huang, M. Rible, and D. Robertson. Distributed scientic video movie making. In Proceedings of Supercomputing '88, pages 156{ 161, Orlando, Florida, November [NT89] [TB90] [TJC91] Henry Neeman and Allan Tuchman. Simulation time animation system. Technical Report 859, Center for Supercomputing Research and Development, University of Illinois at Urbana-Champaign, February Allan M. Tuchman and Michael W. Berry. Matrix visualization in the design of numerical algorithms. ORSA Journal on Computing, 2(1):84{92, Allan Tuchman, David Jablonowski, and George Cybenko. Vista: A system for remote data visualization. Technical Report 1067, Center for Supercomputing Research and Development, University of Illinois at Urbana-Champaign, June [UTK + 89] Craig Upson, T Faulhaber, Jr., David Kamins, David Laidlaw, David Schlegel, Jerey Vroom, Robert Gurwitz, and Andries van Dam. The application visualization system: A computational environment for scientic visualization. IEEE Computer Graphics and s, 9(4):30{42, July 1989.

director executor user program user program signal, breakpoint function call communication channel client library directing server

director executor user program user program signal, breakpoint function call communication channel client library directing server (appeared in Computing Systems, Vol. 8, 2, pp.107-134, MIT Press, Spring 1995.) The Dynascope Directing Server: Design and Implementation 1 Rok Sosic School of Computing and Information Technology Grith

More information

The members of the Committee approve the thesis of Baosheng Cai defended on March David B. Whalley Professor Directing Thesis Xin Yuan Commit

The members of the Committee approve the thesis of Baosheng Cai defended on March David B. Whalley Professor Directing Thesis Xin Yuan Commit THE FLORIDA STATE UNIVERSITY COLLEGE OF ARTS AND SCIENCES COMPILER MODIFICATIONS TO SUPPORT INTERACTIVE COMPILATION By BAOSHENG CAI A Thesis submitted to the Department of Computer Science in partial fulllment

More information

Technische Universitat Munchen. Institut fur Informatik. D Munchen.

Technische Universitat Munchen. Institut fur Informatik. D Munchen. Developing Applications for Multicomputer Systems on Workstation Clusters Georg Stellner, Arndt Bode, Stefan Lamberts and Thomas Ludwig? Technische Universitat Munchen Institut fur Informatik Lehrstuhl

More information

Network. Department of Statistics. University of California, Berkeley. January, Abstract

Network. Department of Statistics. University of California, Berkeley. January, Abstract Parallelizing CART Using a Workstation Network Phil Spector Leo Breiman Department of Statistics University of California, Berkeley January, 1995 Abstract The CART (Classication and Regression Trees) program,

More information

University of Maryland. fzzj, basili, Empirical studies (Desurvire, 1994) (Jeries, Miller, USABILITY INSPECTION

University of Maryland. fzzj, basili, Empirical studies (Desurvire, 1994) (Jeries, Miller, USABILITY INSPECTION AN EMPIRICAL STUDY OF PERSPECTIVE-BASED USABILITY INSPECTION Zhijun Zhang, Victor Basili, and Ben Shneiderman Department of Computer Science University of Maryland College Park, MD 20742, USA fzzj, basili,

More information

Stackable Layers: An Object-Oriented Approach to. Distributed File System Architecture. Department of Computer Science

Stackable Layers: An Object-Oriented Approach to. Distributed File System Architecture. Department of Computer Science Stackable Layers: An Object-Oriented Approach to Distributed File System Architecture Thomas W. Page Jr., Gerald J. Popek y, Richard G. Guy Department of Computer Science University of California Los Angeles

More information

Abstract Studying network protocols and distributed applications in real networks can be dicult due to the need for complex topologies, hard to nd phy

Abstract Studying network protocols and distributed applications in real networks can be dicult due to the need for complex topologies, hard to nd phy ONE: The Ohio Network Emulator Mark Allman, Adam Caldwell, Shawn Ostermann mallman@lerc.nasa.gov, adam@eni.net ostermann@cs.ohiou.edu School of Electrical Engineering and Computer Science Ohio University

More information

Interme diate DNS. Local browse r. Authorit ative ... DNS

Interme diate DNS. Local browse r. Authorit ative ... DNS WPI-CS-TR-00-12 July 2000 The Contribution of DNS Lookup Costs to Web Object Retrieval by Craig E. Wills Hao Shang Computer Science Technical Report Series WORCESTER POLYTECHNIC INSTITUTE Computer Science

More information

Language-Based Parallel Program Interaction: The Breezy Approach. Darryl I. Brown Allen D. Malony. Bernd Mohr. University of Oregon

Language-Based Parallel Program Interaction: The Breezy Approach. Darryl I. Brown Allen D. Malony. Bernd Mohr. University of Oregon Language-Based Parallel Program Interaction: The Breezy Approach Darryl I. Brown Allen D. Malony Bernd Mohr Department of Computer And Information Science University of Oregon Eugene, Oregon 97403 fdarrylb,

More information

and easily tailor it for use within the multicast system. [9] J. Purtilo, C. Hofmeister. Dynamic Reconguration of Distributed Programs.

and easily tailor it for use within the multicast system. [9] J. Purtilo, C. Hofmeister. Dynamic Reconguration of Distributed Programs. and easily tailor it for use within the multicast system. After expressing an initial application design in terms of MIL specications, the application code and speci- cations may be compiled and executed.

More information

Process Concepts. CSC400 - Operating Systems. 3. Process Concepts. J. Sumey

Process Concepts. CSC400 - Operating Systems. 3. Process Concepts. J. Sumey CSC400 - Operating Systems 3. Process Concepts J. Sumey Overview Concurrency Processes & Process States Process Accounting Interrupts & Interrupt Processing Interprocess Communication CSC400 - Process

More information

A Java-based Course in Human-Computer Interaction. Eileen Kraemer. The University of Georgia. Athens, GA interface.

A Java-based Course in Human-Computer Interaction. Eileen Kraemer. The University of Georgia. Athens, GA interface. A Java-based Course in Human-Computer Interaction Eileen Kraemer Computer Science Department The University of Georgia Athens, GA 30602 Abstract The ACM/SIGCHI proposed curriculum for Human-Computer Interaction

More information

Kevin Skadron. 18 April Abstract. higher rate of failure requires eective fault-tolerance. Asynchronous consistent checkpointing oers a

Kevin Skadron. 18 April Abstract. higher rate of failure requires eective fault-tolerance. Asynchronous consistent checkpointing oers a Asynchronous Checkpointing for PVM Requires Message-Logging Kevin Skadron 18 April 1994 Abstract Distributed computing using networked workstations oers cost-ecient parallel computing, but the higher rate

More information

Compiler and Runtime Support for Programming in Adaptive. Parallel Environments 1. Guy Edjlali, Gagan Agrawal, and Joel Saltz

Compiler and Runtime Support for Programming in Adaptive. Parallel Environments 1. Guy Edjlali, Gagan Agrawal, and Joel Saltz Compiler and Runtime Support for Programming in Adaptive Parallel Environments 1 Guy Edjlali, Gagan Agrawal, Alan Sussman, Jim Humphries, and Joel Saltz UMIACS and Dept. of Computer Science University

More information

Adaptive Methods for Distributed Video Presentation. Oregon Graduate Institute of Science and Technology. fcrispin, scen, walpole,

Adaptive Methods for Distributed Video Presentation. Oregon Graduate Institute of Science and Technology. fcrispin, scen, walpole, Adaptive Methods for Distributed Video Presentation Crispin Cowan, Shanwei Cen, Jonathan Walpole, and Calton Pu Department of Computer Science and Engineering Oregon Graduate Institute of Science and Technology

More information

Egemen Tanin, Tahsin M. Kurc, Cevdet Aykanat, Bulent Ozguc. Abstract. Direct Volume Rendering (DVR) is a powerful technique for

Egemen Tanin, Tahsin M. Kurc, Cevdet Aykanat, Bulent Ozguc. Abstract. Direct Volume Rendering (DVR) is a powerful technique for Comparison of Two Image-Space Subdivision Algorithms for Direct Volume Rendering on Distributed-Memory Multicomputers Egemen Tanin, Tahsin M. Kurc, Cevdet Aykanat, Bulent Ozguc Dept. of Computer Eng. and

More information

Khoral Research, Inc. Khoros is a powerful, integrated system which allows users to perform a variety

Khoral Research, Inc. Khoros is a powerful, integrated system which allows users to perform a variety Data Parallel Programming with the Khoros Data Services Library Steve Kubica, Thomas Robey, Chris Moorman Khoral Research, Inc. 6200 Indian School Rd. NE Suite 200 Albuquerque, NM 87110 USA E-mail: info@khoral.com

More information

2 Data Reduction Techniques The granularity of reducible information is one of the main criteria for classifying the reduction techniques. While the t

2 Data Reduction Techniques The granularity of reducible information is one of the main criteria for classifying the reduction techniques. While the t Data Reduction - an Adaptation Technique for Mobile Environments A. Heuer, A. Lubinski Computer Science Dept., University of Rostock, Germany Keywords. Reduction. Mobile Database Systems, Data Abstract.

More information

A Control Architecture for Flexible Internet. Auction Servers. University of Michigan. f pwurman, wellman, wew,

A Control Architecture for Flexible Internet. Auction Servers. University of Michigan. f pwurman, wellman, wew, A Control Architecture for Flexible Internet Auction Servers Peter R. Wurman William E. Walsh Michael P. Wellman Kevin A. O'Malley University of Michigan Articial Intelligence Laboratory f pwurman, wellman,

More information

Steering. Stream. User Interface. Stream. Manager. Interaction Managers. Snapshot. Stream

Steering. Stream. User Interface. Stream. Manager. Interaction Managers. Snapshot. Stream Agent Roles in Snapshot Assembly Delbert Hart Dept. of Computer Science Washington University in St. Louis St. Louis, MO 63130 hart@cs.wustl.edu Eileen Kraemer Dept. of Computer Science University of Georgia

More information

Storage System. Distributor. Network. Drive. Drive. Storage System. Controller. Controller. Disk. Disk

Storage System. Distributor. Network. Drive. Drive. Storage System. Controller. Controller. Disk. Disk HRaid: a Flexible Storage-system Simulator Toni Cortes Jesus Labarta Universitat Politecnica de Catalunya - Barcelona ftoni, jesusg@ac.upc.es - http://www.ac.upc.es/hpc Abstract Clusters of workstations

More information

Reverse Engineering with a CASE Tool. Bret Johnson. Research advisors: Spencer Rugaber and Rich LeBlanc. October 6, Abstract

Reverse Engineering with a CASE Tool. Bret Johnson. Research advisors: Spencer Rugaber and Rich LeBlanc. October 6, Abstract Reverse Engineering with a CASE Tool Bret Johnson Research advisors: Spencer Rugaber and Rich LeBlanc October 6, 994 Abstract We examine using a CASE tool, Interactive Development Environment's Software

More information

Automatic Code Generation for Non-Functional Aspects in the CORBALC Component Model

Automatic Code Generation for Non-Functional Aspects in the CORBALC Component Model Automatic Code Generation for Non-Functional Aspects in the CORBALC Component Model Diego Sevilla 1, José M. García 1, Antonio Gómez 2 1 Department of Computer Engineering 2 Department of Information and

More information

CUMULVS: Collaborative Infrastructure for Developing. Abstract. by allowing them to dynamically attach to, view, and \steer" a running simulation.

CUMULVS: Collaborative Infrastructure for Developing. Abstract. by allowing them to dynamically attach to, view, and \steer a running simulation. CUMULVS: Collaborative Infrastructure for Developing Distributed Simulations James Arthur Kohl Philip M. Papadopoulos G. A. Geist, II y Abstract The CUMULVS software environment provides remote collaboration

More information

Rowena Cole and Luigi Barone. Department of Computer Science, The University of Western Australia, Western Australia, 6907

Rowena Cole and Luigi Barone. Department of Computer Science, The University of Western Australia, Western Australia, 6907 The Game of Clustering Rowena Cole and Luigi Barone Department of Computer Science, The University of Western Australia, Western Australia, 697 frowena, luigig@cs.uwa.edu.au Abstract Clustering is a technique

More information

The Application of a Distributed Computing Architecture to a Large Telemetry Ground Station

The Application of a Distributed Computing Architecture to a Large Telemetry Ground Station The Application of a Distributed Computing Architecture to a Large Telemetry Ground Station Item Type text; Proceedings Authors Buell, Robert K. Publisher International Foundation for Telemetering Journal

More information

Center for Supercomputing Research and Development. were identied as time-consuming: The process of creating

Center for Supercomputing Research and Development. were identied as time-consuming: The process of creating Practical Tools for Optimizing Parallel Programs Rudolf Eigenmann Patrick McClaughry Center for Supercomputing Research and Development University of Illinois at Urbana-Champaign Abstract This paper describes

More information

THE IMPLEMENTATION OF A DISTRIBUTED FILE SYSTEM SUPPORTING THE PARALLEL WORLD MODEL. Jun Sun, Yasushi Shinjo and Kozo Itano

THE IMPLEMENTATION OF A DISTRIBUTED FILE SYSTEM SUPPORTING THE PARALLEL WORLD MODEL. Jun Sun, Yasushi Shinjo and Kozo Itano THE IMPLEMENTATION OF A DISTRIBUTED FILE SYSTEM SUPPORTING THE PARALLEL WORLD MODEL Jun Sun, Yasushi Shinjo and Kozo Itano Institute of Information Sciences and Electronics University of Tsukuba Tsukuba,

More information

A taxonomy of race. D. P. Helmbold, C. E. McDowell. September 28, University of California, Santa Cruz. Santa Cruz, CA

A taxonomy of race. D. P. Helmbold, C. E. McDowell. September 28, University of California, Santa Cruz. Santa Cruz, CA A taxonomy of race conditions. D. P. Helmbold, C. E. McDowell UCSC-CRL-94-34 September 28, 1994 Board of Studies in Computer and Information Sciences University of California, Santa Cruz Santa Cruz, CA

More information

Ecient Implementation of Sorting Algorithms on Asynchronous Distributed-Memory Machines

Ecient Implementation of Sorting Algorithms on Asynchronous Distributed-Memory Machines Ecient Implementation of Sorting Algorithms on Asynchronous Distributed-Memory Machines Zhou B. B., Brent R. P. and Tridgell A. y Computer Sciences Laboratory The Australian National University Canberra,

More information

Frank Miller, George Apostolopoulos, and Satish Tripathi. University of Maryland. College Park, MD ffwmiller, georgeap,

Frank Miller, George Apostolopoulos, and Satish Tripathi. University of Maryland. College Park, MD ffwmiller, georgeap, Simple Input/Output Streaming in the Operating System Frank Miller, George Apostolopoulos, and Satish Tripathi Mobile Computing and Multimedia Laboratory Department of Computer Science University of Maryland

More information

OS DESIGN PATTERNS II. CS124 Operating Systems Fall , Lecture 4

OS DESIGN PATTERNS II. CS124 Operating Systems Fall , Lecture 4 OS DESIGN PATTERNS II CS124 Operating Systems Fall 2017-2018, Lecture 4 2 Last Time Began discussing general OS design patterns Simple structure (MS-DOS) Layered structure (The THE OS) Monolithic kernels

More information

On the Use of Multicast Delivery to Provide. a Scalable and Interactive Video-on-Demand Service. Kevin C. Almeroth. Mostafa H.

On the Use of Multicast Delivery to Provide. a Scalable and Interactive Video-on-Demand Service. Kevin C. Almeroth. Mostafa H. On the Use of Multicast Delivery to Provide a Scalable and Interactive Video-on-Demand Service Kevin C. Almeroth Mostafa H. Ammar Networking and Telecommunications Group College of Computing Georgia Institute

More information

SCHEDULING REAL-TIME MESSAGES IN PACKET-SWITCHED NETWORKS IAN RAMSAY PHILP. B.S., University of North Carolina at Chapel Hill, 1988

SCHEDULING REAL-TIME MESSAGES IN PACKET-SWITCHED NETWORKS IAN RAMSAY PHILP. B.S., University of North Carolina at Chapel Hill, 1988 SCHEDULING REAL-TIME MESSAGES IN PACKET-SWITCHED NETWORKS BY IAN RAMSAY PHILP B.S., University of North Carolina at Chapel Hill, 1988 M.S., University of Florida, 1990 THESIS Submitted in partial fulllment

More information

Visualisation of ATM network connectivity and. topology.

Visualisation of ATM network connectivity and. topology. Visualisation of ATM network connectivity and topology O. Saal, J. Feng, A.E. Krzesinski y and E.H. Blake fosaal,jfeng,edwing@cs.uct.ac.za, aek1@cs.sun.ac.za Collaborative Visual Computing Laboratory Department

More information

100 Mbps DEC FDDI Gigaswitch

100 Mbps DEC FDDI Gigaswitch PVM Communication Performance in a Switched FDDI Heterogeneous Distributed Computing Environment Michael J. Lewis Raymond E. Cline, Jr. Distributed Computing Department Distributed Computing Department

More information

Parametric and provisioning approaches are again obviously useful for various

Parametric and provisioning approaches are again obviously useful for various Parametric and provisioning approaches are again obviously useful for various kinds of generic descriptions and provide the most direct means of deriving their product architecture from the product line

More information

T H. Runable. Request. Priority Inversion. Exit. Runable. Request. Reply. For T L. For T. Reply. Exit. Request. Runable. Exit. Runable. Reply.

T H. Runable. Request. Priority Inversion. Exit. Runable. Request. Reply. For T L. For T. Reply. Exit. Request. Runable. Exit. Runable. Reply. Experience with Real-Time Mach for Writing Continuous Media Applications and Servers Tatsuo Nakajima Hiroshi Tezuka Japan Advanced Institute of Science and Technology Abstract This paper describes the

More information

of a telecommunication network management

of a telecommunication network management On Telecommunication Management Dilmar M. Meira Jose M. S. Nogueira University of Minas Gerais, Belo Horizonte, Brazil Son T. Vuong University of British Columbia, Vancouver, Canada Abstract - This paper

More information

An Evaluation of Information Retrieval Accuracy. with Simulated OCR Output. K. Taghva z, and J. Borsack z. University of Massachusetts, Amherst

An Evaluation of Information Retrieval Accuracy. with Simulated OCR Output. K. Taghva z, and J. Borsack z. University of Massachusetts, Amherst An Evaluation of Information Retrieval Accuracy with Simulated OCR Output W.B. Croft y, S.M. Harding y, K. Taghva z, and J. Borsack z y Computer Science Department University of Massachusetts, Amherst

More information

Preliminary results from an agent-based adaptation of friendship games

Preliminary results from an agent-based adaptation of friendship games Preliminary results from an agent-based adaptation of friendship games David S. Dixon June 29, 2011 This paper presents agent-based model (ABM) equivalents of friendshipbased games and compares the results

More information

Skill. Robot/ Controller

Skill. Robot/ Controller Skill Acquisition from Human Demonstration Using a Hidden Markov Model G. E. Hovland, P. Sikka and B. J. McCarragher Department of Engineering Faculty of Engineering and Information Technology The Australian

More information

Extra-High Speed Matrix Multiplication on the Cray-2. David H. Bailey. September 2, 1987

Extra-High Speed Matrix Multiplication on the Cray-2. David H. Bailey. September 2, 1987 Extra-High Speed Matrix Multiplication on the Cray-2 David H. Bailey September 2, 1987 Ref: SIAM J. on Scientic and Statistical Computing, vol. 9, no. 3, (May 1988), pg. 603{607 Abstract The Cray-2 is

More information

Monitoring the Usage of the ZEUS Analysis Grid

Monitoring the Usage of the ZEUS Analysis Grid Monitoring the Usage of the ZEUS Analysis Grid Stefanos Leontsinis September 9, 2006 Summer Student Programme 2006 DESY Hamburg Supervisor Dr. Hartmut Stadie National Technical

More information

Frank Mueller. Dept. of Computer Science. Florida State University. Tallahassee, FL phone: (904)

Frank Mueller. Dept. of Computer Science. Florida State University. Tallahassee, FL phone: (904) Static Cache Simulation and its Applications by Frank Mueller Dept. of Computer Science Florida State University Tallahassee, FL 32306-4019 e-mail: mueller@cs.fsu.edu phone: (904) 644-3441 July 12, 1994

More information

Ecient Implementation of Sorting Algorithms on Asynchronous Distributed-Memory Machines

Ecient Implementation of Sorting Algorithms on Asynchronous Distributed-Memory Machines Ecient Implementation of Sorting Algorithms on Asynchronous Distributed-Memory Machines B. B. Zhou, R. P. Brent and A. Tridgell Computer Sciences Laboratory The Australian National University Canberra,

More information

Submitted for TAU97 Abstract Many attempts have been made to combine some form of retiming with combinational

Submitted for TAU97 Abstract Many attempts have been made to combine some form of retiming with combinational Experiments in the Iterative Application of Resynthesis and Retiming Soha Hassoun and Carl Ebeling Department of Computer Science and Engineering University ofwashington, Seattle, WA fsoha,ebelingg@cs.washington.edu

More information

Server 1 Server 2 CPU. mem I/O. allocate rec n read elem. n*47.0. n*20.0. select. n*1.0. write elem. n*26.5 send. n*

Server 1 Server 2 CPU. mem I/O. allocate rec n read elem. n*47.0. n*20.0. select. n*1.0. write elem. n*26.5 send. n* Information Needs in Performance Analysis of Telecommunication Software a Case Study Vesa Hirvisalo Esko Nuutila Helsinki University of Technology Laboratory of Information Processing Science Otakaari

More information

C++ Metaclass Language

C++ Metaclass Language A Component-Based Dataow Framework for Simulation and Visualization Alexandru Telea 1, Cristian Sminchisescu 2 1 Department of Mathematics and Computer Science Eindhoven University of Technology, The Netherlands

More information

Eect of fan-out on the Performance of a. Single-message cancellation scheme. Atul Prakash (Contact Author) Gwo-baw Wu. Seema Jetli

Eect of fan-out on the Performance of a. Single-message cancellation scheme. Atul Prakash (Contact Author) Gwo-baw Wu. Seema Jetli Eect of fan-out on the Performance of a Single-message cancellation scheme Atul Prakash (Contact Author) Gwo-baw Wu Seema Jetli Department of Electrical Engineering and Computer Science University of Michigan,

More information

6.1 Multiprocessor Computing Environment

6.1 Multiprocessor Computing Environment 6 Parallel Computing 6.1 Multiprocessor Computing Environment The high-performance computing environment used in this book for optimization of very large building structures is the Origin 2000 multiprocessor,

More information

Dynamics of an Explicit Rate Allocation. Algorithm for Available Bit-Rate (ABR) Service in ATM Networks. Lampros Kalampoukas, Anujan Varma.

Dynamics of an Explicit Rate Allocation. Algorithm for Available Bit-Rate (ABR) Service in ATM Networks. Lampros Kalampoukas, Anujan Varma. Dynamics of an Explicit Rate Allocation Algorithm for Available Bit-Rate (ABR) Service in ATM Networks Lampros Kalampoukas, Anujan Varma and K. K. Ramakrishnan y UCSC-CRL-95-54 December 5, 1995 Board of

More information

Department of. Computer Science. Remapping Subpartitions of. Hyperspace Using Iterative. Genetic Search. Keith Mathias and Darrell Whitley

Department of. Computer Science. Remapping Subpartitions of. Hyperspace Using Iterative. Genetic Search. Keith Mathias and Darrell Whitley Department of Computer Science Remapping Subpartitions of Hyperspace Using Iterative Genetic Search Keith Mathias and Darrell Whitley Technical Report CS-4-11 January 7, 14 Colorado State University Remapping

More information

To appear in: IEEE Transactions on Knowledge and Data Engineering. The Starburst Active Database Rule System. Jennifer Widom. Stanford University

To appear in: IEEE Transactions on Knowledge and Data Engineering. The Starburst Active Database Rule System. Jennifer Widom. Stanford University To appear in: IEEE Transactions on Knowledge and Data Engineering The Starburst Active Database Rule System Jennifer Widom Department of Computer Science Stanford University Stanford, CA 94305-2140 widom@cs.stanford.edu

More information

Rance Cleaveland The Concurrency Factory is an integrated toolset for specication, simulation,

Rance Cleaveland The Concurrency Factory is an integrated toolset for specication, simulation, The Concurrency Factory Software Development Environment Rance Cleaveland (rance@csc.ncsu.edu) Philip M. Lewis (pml@cs.sunysb.edu) y Scott A. Smolka (sas@cs.sunysb.edu) y Oleg Sokolsky (oleg@ccc.com) y

More information

task object task queue

task object task queue Optimizations for Parallel Computing Using Data Access Information Martin C. Rinard Department of Computer Science University of California, Santa Barbara Santa Barbara, California 9316 martin@cs.ucsb.edu

More information

Originating Port. Switch Fabric. Destination Port

Originating Port. Switch Fabric. Destination Port A Product Line Architecture for a Network Product Dewayne E. Perry Electrical and Computer Engineering The University of Texas at Austin Austin TX 78712 USA +1.512.471.2050 perry@ece.utexas.edu www.ece.utexas.edu/~perry/

More information

Small Matrices fit into cache. Large Matrices do not fit into cache. Performance (MFLOPS) Performance (MFLOPS) bcsstk20 blckhole e05r0000 watson5

Small Matrices fit into cache. Large Matrices do not fit into cache. Performance (MFLOPS) Performance (MFLOPS) bcsstk20 blckhole e05r0000 watson5 On Improving the Performance of Sparse Matrix-Vector Multiplication James B. White, III P. Sadayappan Ohio Supercomputer Center Ohio State University Columbus, OH 43221 Columbus, OH 4321 Abstract We analyze

More information

CHAPTER 4 AN INTEGRATED APPROACH OF PERFORMANCE PREDICTION ON NETWORKS OF WORKSTATIONS. Xiaodong Zhang and Yongsheng Song

CHAPTER 4 AN INTEGRATED APPROACH OF PERFORMANCE PREDICTION ON NETWORKS OF WORKSTATIONS. Xiaodong Zhang and Yongsheng Song CHAPTER 4 AN INTEGRATED APPROACH OF PERFORMANCE PREDICTION ON NETWORKS OF WORKSTATIONS Xiaodong Zhang and Yongsheng Song 1. INTRODUCTION Networks of Workstations (NOW) have become important distributed

More information

UTOPIA: A Load Sharing Facility for Large, Heterogeneous Distributed Computer Systems. Technical Report CSRI-257. April 1992

UTOPIA: A Load Sharing Facility for Large, Heterogeneous Distributed Computer Systems. Technical Report CSRI-257. April 1992 UTOPIA: A Load Sharing Facility for Large, Heterogeneous Distributed Computer Systems Songnian Zhou, Jingwen Wang, Xiaohu Zheng, and Pierre Delisle Technical Report CSRI-257 April 1992. (To appear in Software

More information

(Preliminary Version 2 ) Jai-Hoon Kim Nitin H. Vaidya. Department of Computer Science. Texas A&M University. College Station, TX

(Preliminary Version 2 ) Jai-Hoon Kim Nitin H. Vaidya. Department of Computer Science. Texas A&M University. College Station, TX Towards an Adaptive Distributed Shared Memory (Preliminary Version ) Jai-Hoon Kim Nitin H. Vaidya Department of Computer Science Texas A&M University College Station, TX 77843-3 E-mail: fjhkim,vaidyag@cs.tamu.edu

More information

Windows 7 Overview. Windows 7. Objectives. The History of Windows. CS140M Fall Lake 1

Windows 7 Overview. Windows 7. Objectives. The History of Windows. CS140M Fall Lake 1 Windows 7 Overview Windows 7 Overview By Al Lake History Design Principles System Components Environmental Subsystems File system Networking Programmer Interface Lake 2 Objectives To explore the principles

More information

A Freely Congurable Audio-Mixing Engine. M. Rosenthal, M. Klebl, A. Gunzinger, G. Troster

A Freely Congurable Audio-Mixing Engine. M. Rosenthal, M. Klebl, A. Gunzinger, G. Troster A Freely Congurable Audio-Mixing Engine with Automatic Loadbalancing M. Rosenthal, M. Klebl, A. Gunzinger, G. Troster Electronics Laboratory, Swiss Federal Institute of Technology CH-8092 Zurich, Switzerland

More information

2 Nieuwsbrief 1.2 Computing Mathematical Objects As stated previously, one can use IZIC from Macsyma, Maple, Mathematica, or Reduce. One can also conn

2 Nieuwsbrief 1.2 Computing Mathematical Objects As stated previously, one can use IZIC from Macsyma, Maple, Mathematica, or Reduce. One can also conn 1 IZIC 1.0 : An Overview for the User Norbert Kajler 1 RIACA Kruislaan 419, 1098 VA Amsterdam E-mail: kajler@can.nl Published in: Computer Algebra Nederland, ISSN 1380-1260, issue 13, pages 17{25, Dec.

More information

Cedar Fortran Programmer's Manual 1. Jay Hoeinger. Center for Supercomputing Research and Development. Urbana, Illinois

Cedar Fortran Programmer's Manual 1. Jay Hoeinger. Center for Supercomputing Research and Development. Urbana, Illinois Cedar Fortran Programmer's Manual 1 Jay Hoeinger Center for Supercomputing Research and Development University of Illinois at Urbana-Champaign Urbana, Illinois 61801 June 14, 1993 1 This work was supported

More information

Web site Image database. Web site Video database. Web server. Meta-server Meta-search Agent. Meta-DB. Video query. Text query. Web client.

Web site Image database. Web site Video database. Web server. Meta-server Meta-search Agent. Meta-DB. Video query. Text query. Web client. (Published in WebNet 97: World Conference of the WWW, Internet and Intranet, Toronto, Canada, Octobor, 1997) WebView: A Multimedia Database Resource Integration and Search System over Web Deepak Murthy

More information

Assignment1 - CSG1102: Virtual Memory. Christoer V. Hallstensen snr: March 28, 2011

Assignment1 - CSG1102: Virtual Memory. Christoer V. Hallstensen snr: March 28, 2011 Assignment1 - CSG1102: Virtual Memory Christoer V. Hallstensen snr:10220862 March 28, 2011 1 Contents 1 Abstract 3 2 Virtual Memory with Pages 4 2.1 Virtual memory management.................... 4 2.2

More information

The modularity requirement

The modularity requirement The modularity requirement The obvious complexity of an OS and the inherent difficulty of its design lead to quite a few problems: an OS is often not completed on time; It often comes with quite a few

More information

International Journal of Foundations of Computer Science c World Scientic Publishing Company DFT TECHNIQUES FOR SIZE ESTIMATION OF DATABASE JOIN OPERA

International Journal of Foundations of Computer Science c World Scientic Publishing Company DFT TECHNIQUES FOR SIZE ESTIMATION OF DATABASE JOIN OPERA International Journal of Foundations of Computer Science c World Scientic Publishing Company DFT TECHNIQUES FOR SIZE ESTIMATION OF DATABASE JOIN OPERATIONS KAM_IL SARAC, OMER E GEC_IO GLU, AMR EL ABBADI

More information

Virtual Multi-homing: On the Feasibility of Combining Overlay Routing with BGP Routing

Virtual Multi-homing: On the Feasibility of Combining Overlay Routing with BGP Routing Virtual Multi-homing: On the Feasibility of Combining Overlay Routing with BGP Routing Zhi Li, Prasant Mohapatra, and Chen-Nee Chuah University of California, Davis, CA 95616, USA {lizhi, prasant}@cs.ucdavis.edu,

More information

Dynamic Multi-Path Communication for Video Trac. Hao-hua Chu, Klara Nahrstedt. Department of Computer Science. University of Illinois

Dynamic Multi-Path Communication for Video Trac. Hao-hua Chu, Klara Nahrstedt. Department of Computer Science. University of Illinois Dynamic Multi-Path Communication for Video Trac Hao-hua Chu, Klara Nahrstedt Department of Computer Science University of Illinois h-chu3@cs.uiuc.edu, klara@cs.uiuc.edu Abstract Video-on-Demand applications

More information

Khoros: A Problem Solving Environment for. Danielle Argiro Steve Kubica Mark Young. Jeremy Worley Steve Jorgensen. Khoral Research, Inc.

Khoros: A Problem Solving Environment for. Danielle Argiro Steve Kubica Mark Young. Jeremy Worley Steve Jorgensen. Khoral Research, Inc. Khoros: A Problem Solving Environment for Scientic Computing and Visualization Danielle Argiro Steve Kubica Mark Young Jeremy Worley Steve Jorgensen Khoral Research, Inc. Version 2 March 17, 1998 The meaning

More information

Planning the Installation and Installing SQL Server

Planning the Installation and Installing SQL Server Chapter 2 Planning the Installation and Installing SQL Server In This Chapter c SQL Server Editions c Planning Phase c Installing SQL Server 22 Microsoft SQL Server 2012: A Beginner s Guide This chapter

More information

15-122: Principles of Imperative Computation, Spring 2016

15-122: Principles of Imperative Computation, Spring 2016 15-122 Programming 3 Page 1 of 8 15-122: Principles of Imperative Computation, Spring 2016 Programming 3: Images Due: Thursday 4 th February, 2016 by 22:00 This programming assignment will have you using

More information

ECE519 Advanced Operating Systems

ECE519 Advanced Operating Systems IT 540 Operating Systems ECE519 Advanced Operating Systems Prof. Dr. Hasan Hüseyin BALIK (10 th Week) (Advanced) Operating Systems 10. Multiprocessor, Multicore and Real-Time Scheduling 10. Outline Multiprocessor

More information

ABCDE. HP Part No Printed in U.S.A U0989

ABCDE. HP Part No Printed in U.S.A U0989 Switch Programing Guide HP 3000 Computer Systems ABCDE HP Part No. 32650-90014 Printed in U.S.A. 19890901 U0989 The information contained in this document is subject to change without notice. HEWLETT-PACKARD

More information

Draft. Debugging of Optimized Code through. Comparison Checking. Clara Jaramillo, Rajiv Gupta and Mary Lou Soa. Abstract

Draft. Debugging of Optimized Code through. Comparison Checking. Clara Jaramillo, Rajiv Gupta and Mary Lou Soa. Abstract Draft Debugging of Optimized Code through Comparison Checking Clara Jaramillo, Rajiv Gupta and Mary Lou Soa Abstract We present a new approach to the debugging of optimized code through comparison checking.

More information

TWM Icon Manager Desktop graph. xterm emacs TWM Icon Manager. Desktop. Tree Browser. xterm. graph ABC. Hyperlink. Tree Browser. xterm.

TWM Icon Manager Desktop graph. xterm emacs TWM Icon Manager. Desktop. Tree Browser. xterm. graph ABC. Hyperlink. Tree Browser. xterm. Tcl and Tk Use in the Artifact Based Collaboration System John Menges Mark Parris 1 February 1, 1996 Abstract At the University of North Carolina Department of Computer Science we are developing the Artifact

More information

2 3. Syllabus Time Event 9:00{10:00 morning lecture 10:00{10:30 morning break 10:30{12:30 morning practical session 12:30{1:30 lunch break 1:30{2:00 a

2 3. Syllabus Time Event 9:00{10:00 morning lecture 10:00{10:30 morning break 10:30{12:30 morning practical session 12:30{1:30 lunch break 1:30{2:00 a 1 Syllabus for the Advanced 3 Day Fortran 90 Course AC Marshall cuniversity of Liverpool, 1997 Abstract The course is scheduled for 3 days. The timetable allows for two sessions a day each with a one hour

More information

ICC++ Language Denition. Andrew A. Chien and Uday S. Reddy 1. May 25, 1995

ICC++ Language Denition. Andrew A. Chien and Uday S. Reddy 1. May 25, 1995 ICC++ Language Denition Andrew A. Chien and Uday S. Reddy 1 May 25, 1995 Preface ICC++ is a new dialect of C++ designed to support the writing of both sequential and parallel programs. Because of the signicant

More information

Outline. Computer Science 331. Information Hiding. What This Lecture is About. Data Structures, Abstract Data Types, and Their Implementations

Outline. Computer Science 331. Information Hiding. What This Lecture is About. Data Structures, Abstract Data Types, and Their Implementations Outline Computer Science 331 Data Structures, Abstract Data Types, and Their Implementations Mike Jacobson 1 Overview 2 ADTs as Interfaces Department of Computer Science University of Calgary Lecture #8

More information

Seungjae Han, Harold A. Rosenberg, and Kang G. Shin. Department of Electrical Engineering and Computer Science. The University of Michigan

Seungjae Han, Harold A. Rosenberg, and Kang G. Shin. Department of Electrical Engineering and Computer Science. The University of Michigan DOCTOR: An IntegrateD SO ftware Fault InjeC T io n EnviR onment Seungjae Han, Harold A. Rosenberg, and Kang G. Shin Real-Time Computing Laboratory Department of Electrical Engineering and Computer Science

More information

Operating- System Structures

Operating- System Structures Operating- System Structures 2 CHAPTER Practice Exercises 2.1 What is the purpose of system calls? Answer: System calls allow user-level processes to request services of the operating system. 2.2 What

More information

John T. Stasko. Graphics, Visualization, and Usability Center. College of Computing. Georgia Institute of Technology. E{mail:

John T. Stasko. Graphics, Visualization, and Usability Center. College of Computing. Georgia Institute of Technology. E{mail: Three-Dimensional Computation Visualization Technical Report GIT-GVU-92-20 John T. Stasko Graphics, Visualization, and Usability Center College of Computing Georgia Institute of Technology Atlanta, GA

More information

ORACLE MESSAGEQ ORACLE DATA SHEET KEY FEATURES AND BENEFITS

ORACLE MESSAGEQ ORACLE DATA SHEET KEY FEATURES AND BENEFITS ORACLE MESSAGEQ KEY FEATURES AND BENEFITS With Oracle MessageQ, you can translate your inventory of diverse applications into a strategic advantage. FEATURES Interoperability with IBM platforms via TCP/IP

More information

of Perceptron. Perceptron CPU Seconds CPU Seconds Per Trial

of Perceptron. Perceptron CPU Seconds CPU Seconds Per Trial Accelerated Learning on the Connection Machine Diane J. Cook Lawrence B. Holder University of Illinois Beckman Institute 405 North Mathews, Urbana, IL 61801 Abstract The complexity of most machine learning

More information

FORMATION OF SCATTERNETS WITH HETEROGENEOUS BLUETOOTH DEVICES

FORMATION OF SCATTERNETS WITH HETEROGENEOUS BLUETOOTH DEVICES FORMATION OF SCATTERNETS WITH HETEROGENEOUS BLUETOOTH DEVICES Paal Engelstad, Do Van Thanh, Tore E. Jonvik University of Oslo (UniK) / Telenor R&D, 1331 Fornebu, Norway {Paal.Engelstad, Thanh-van.Do, Tore-erling.Jonvik

More information

PPS : A Pipeline Path-based Scheduler. 46, Avenue Felix Viallet, Grenoble Cedex, France.

PPS : A Pipeline Path-based Scheduler. 46, Avenue Felix Viallet, Grenoble Cedex, France. : A Pipeline Path-based Scheduler Maher Rahmouni Ahmed A. Jerraya Laboratoire TIMA/lNPG,, Avenue Felix Viallet, 80 Grenoble Cedex, France Email:rahmouni@verdon.imag.fr Abstract This paper presents a scheduling

More information

residual residual program final result

residual residual program final result C-Mix: Making Easily Maintainable C-Programs run FAST The C-Mix Group, DIKU, University of Copenhagen Abstract C-Mix is a tool based on state-of-the-art technology that solves the dilemma of whether to

More information

Implementing XNS Protocols for 4.2bsd Introduction We have implemented the Internet Datagram Protocol (IDP) and the Sequenced Packet Protocol (SPP) of

Implementing XNS Protocols for 4.2bsd Introduction We have implemented the Internet Datagram Protocol (IDP) and the Sequenced Packet Protocol (SPP) of Implementing XNS Protocols for 4.2bsd James O'Toole Chris Torek Mark Weiser Department of Computer Science University of Maryland College Park, Maryland

More information

AGDB: A Debugger for Agent Tcl. Melissa Hirschl and David Kotz. Hanover, NH fhershey, February 4, 1997.

AGDB: A Debugger for Agent Tcl. Melissa Hirschl and David Kotz. Hanover, NH fhershey, February 4, 1997. AGDB: A Debugger for Agent Tcl Melissa Hirschl and David Kotz Department of Computer Science Dartmouth College Hanover, NH 03755 E-mail: fhershey, dfkg@dartmouth.edu Technical Report PCS-TR97-306 February

More information

PRINCIPLES OF COMPILER DESIGN UNIT I INTRODUCTION TO COMPILERS

PRINCIPLES OF COMPILER DESIGN UNIT I INTRODUCTION TO COMPILERS Objective PRINCIPLES OF COMPILER DESIGN UNIT I INTRODUCTION TO COMPILERS Explain what is meant by compiler. Explain how the compiler works. Describe various analysis of the source program. Describe the

More information

A Linear-C Implementation of Dijkstra's Algorithm. Chung-Hsing Hsu and Donald Smith and Saul Levy. Department of Computer Science. Rutgers University

A Linear-C Implementation of Dijkstra's Algorithm. Chung-Hsing Hsu and Donald Smith and Saul Levy. Department of Computer Science. Rutgers University A Linear-C Implementation of Dijkstra's Algorithm Chung-Hsing Hsu and Donald Smith and Saul Levy Department of Computer Science Rutgers University LCSR-TR-274 October 9, 1996 Abstract Linear-C is a data-parallel

More information

user with a QBE-like interface. The QBE-like interface creates a single virtual environment displaying database information about all current connecti

user with a QBE-like interface. The QBE-like interface creates a single virtual environment displaying database information about all current connecti Applications of JAVA programming language to database management Bradley F. Burton and Victor W. Marek Department of Computer Science University of Kentucky Lexington, KY 40506-0046 e-mail: fbfburton marekg@cs.uky.edu

More information

Access pattern Time (in millions of references)

Access pattern Time (in millions of references) Visualizing Working Sets Evangelos P. Markatos Institute of Computer Science (ICS) Foundation for Research & Technology { Hellas (FORTH) P.O.Box 1385, Heraklio, Crete, GR-711-10 GREECE markatos@csi.forth.gr,

More information

John T. Stasko. Graphics, Visualization, and Usability Center. Georgia Institute of Technology. E{mail:

John T. Stasko. Graphics, Visualization, and Usability Center. Georgia Institute of Technology. E{mail: Three-Dimensional Computation Visualization Technical Report GIT-GVU-92-20 John T. Stasko Graphics, Visualization, and Usability Center College of Computing Georgia Institute of Technology Atlanta, GA

More information

Intelligent Data Mining. Metadata. Agent. Information Extraction. Information Extraction. Facilitator. Query Result. SQL Query.

Intelligent Data Mining. Metadata. Agent. Information Extraction. Information Extraction. Facilitator. Query Result. SQL Query. Web Based Parallel/Distributed Medical Data Mining Using Software Agents Hillol Kargupta, Brian Staord, and Ilker Hamzaoglu Computational Science Methods Group X Division, Los Alamos National Laboratory

More information

Consistent Logical Checkpointing. Nitin H. Vaidya. Texas A&M University. Phone: Fax:

Consistent Logical Checkpointing. Nitin H. Vaidya. Texas A&M University. Phone: Fax: Consistent Logical Checkpointing Nitin H. Vaidya Department of Computer Science Texas A&M University College Station, TX 77843-3112 hone: 409-845-0512 Fax: 409-847-8578 E-mail: vaidya@cs.tamu.edu Technical

More information

HETEROGENEOUS COMPUTING

HETEROGENEOUS COMPUTING HETEROGENEOUS COMPUTING Shoukat Ali, Tracy D. Braun, Howard Jay Siegel, and Anthony A. Maciejewski School of Electrical and Computer Engineering, Purdue University Heterogeneous computing is a set of techniques

More information

Routing and Ad-hoc Retrieval with the. Nikolaus Walczuch, Norbert Fuhr, Michael Pollmann, Birgit Sievers. University of Dortmund, Germany.

Routing and Ad-hoc Retrieval with the. Nikolaus Walczuch, Norbert Fuhr, Michael Pollmann, Birgit Sievers. University of Dortmund, Germany. Routing and Ad-hoc Retrieval with the TREC-3 Collection in a Distributed Loosely Federated Environment Nikolaus Walczuch, Norbert Fuhr, Michael Pollmann, Birgit Sievers University of Dortmund, Germany

More information