bluuebunny/crossref_metadata_2025 huggingface dataset:
Global Virtual Time and distributed synchronization
Authors: Steinman Jeffrey S. , Lee Craig A. , Wilson Linda F. , Nicol David M.
Published: January 2007

Global Virtual Time (GVT) is the fundamental synchronization concept in optimistic simulations. It is defined as the earliest time tag within the set of unprocessed pending events in distributed simulation. A number of techniques for determining GVT have been proposed in recent years, each having their own intrinsic properties. However, most of these techniques either focus on specific types of simulation problems or assume specific hardware support. This paper specifically addresses the GVT problem in the context of the following area

A new GVT algorithm, called SPEEDES GVT, has been developed in the Synchronous Parallel Environment for Emulation and Discrete-Event Simulation (SPEEDES) framework. The new algorithm runs periodically but does not disrupt event processing. It provides flow control by processing events risk-free while flushing out messages during the GVT computation. SPEEDES GVT is built from a set of global reduction operations that are easily implementable on any hardware system.
Dynamic load balancing of a multi-cluster simulator on a network of workstations
Authors: Schlagenhaft Rolf , Ruhwandl Martin , Sporrer Christian , Bauer Herbert
Published: January 2007

Performance of Time Warp simulation systems are often measured on exclusively available parallel computing resources. In distributed systems exclusive use is normally not feasible. Instead, due to the multi-tasking operating systems, many users share the workstations and their availability for parallel simulation purposes varies extensively. Time Warp has been found to be very sensitive to variations in available processing power. This paper presents two methods for a Time Warp VLSI simulation system to reduce the negative effect of a non-ideal environment on the execution of parallel simulations. A dynamic load balancing algorithm which adapts to the change of available processing power is presented. This mechanism, together with a multi-cluster partitioning technique significantly improve the performance of Time Warp based simulation systems on heterogeneous computing resource.
XTracker, a graphical tool for parallel simulations
Authors: Bellenot Steven , Duty Li
Published: January 2007

A Motif based graphical tool XTracker is described. XTracker can show Gannt-like charts of the activities on each node or it can show the event messages as traffic between simulation objects. XTracker can take its data from sequential simulation runs and simulate a parallel execution under a number of simulation methods. XTracker can act as a performance modeling tool.
Generating a new recurrence relations system for elliptic Hansen coefficients by means of computer algebra
Authors: Sokolsky Andrej G. , Vakhidov Akmal A. , Vasiliev Nickolay N.
Published: January 2007

Problem to obtain a new system of recurrence relations for elliptic Hansen coefficients is solved by means of computer algebra system MAPLE. Possibilities for generation of new recurrence relations by means of the MAPLE-package LINALG are shown for the case of linear relations. As an example, advantages to use the obtained recurrence relations in an artificial satellite motion theory within elliptic functions are described.
Perceptions of control during systems development
Authors: Santana Martin , Robey Daniel
Published: January 2007

While a great deal of organizational research has been devoted to the study of individual differences and task characteristics as the major determinants of job satisfaction, the role of organizational variables in explaining employee satisfaction has received little empirical attention. The present study argues that the extent to which employees perceive that their activities are controlled by managers, peers, or themselves may have significant effects upon their corresponding levels of job satisfaction. Based upon this rationale, this study investigated perceptions of different control approaches in relation to job satisfaction of 62 systems professionals of a local government organization. Bivariate analyses indicated that managerial control, team-member control, and self-control were highly correlated with general satisfaction. Additional analyses indicated that self-control had strong positive effects on both intrinsic and extrinsic satisfaction, while, managerial control had a strong positive effect on extrinsic satisfaction. Implications of the findings for the management of information systems personnel and future research are discussed.
Solving the load flow problem using Gröbner basis
Authors: Montes Antonio , Castro Jordi
Published: January 2007

In Electrical Engineering one of the most important problems to be solved for electrical networks is the load flow problem [6] [3]. Currently numerical solutions are provided by Newton's method, which involves recomputing the solution whenever the input data change. Given that this problem must be solved very often with different input data, the Gröbner basis can be an interesting approach since it can, in principle, provide a more algebraic solution of the input parameters and has to be solved completely only once, supplying formulas to compute single simulations. In this paper the basic ideas and a practical example are reported. Nevertheless, the required computations for practical network sizes are very complex and cannot yet be solved with the present algorithms.
Development of a portable software product for library automation
Authors: Barnaud A. M. , Le Borgne Y. , Mailhol B.
Published: January 2007

This paper will demonstrate APL at work in the development of a major industrial software product designed for public library management.

LIBRA was designed and developed to run on various computers under both VM/CMS and UNIX.

Advanced software engineering methods were employed to facilitate short development time of a quality product. As a result, tight control over the future development and maintenance of the package was assured.
From tensor and suffix notation to APL
Authors: Dorrer Egon
Published: January 2007

It is well known that multi-dimensional algebraic variables and expressions as well as multivariate equations and functions can be favorably described by means of tensor and/or general suffix notation. In this notation otherwise complicated and obscure formulas can reveal their inherently mostly simple structure making it transparent to the reader. Unfortunately, this structure is hidden behind the compact notation of ordinary matrix algebra and AFL. The paper provides a valuable way for the formal transfer of simple yet characteristic tensor or suffix expressions into equivalent APL statements. By highlighting the essential primitive and basic user-defined APL functions pertinent to this topic, both the advantages and limitations of APL are shown.
Modelling the arithmetic of statistical distributions
Authors: Groner Leo H. , Cook Janice H.
Published: January 2007

Examples of extended arithmetics include range, polynomial, dimensional, extended precision and fault tolerant arithmetic, and arithmetic on distributions of random variables. APL2's defined operators and general arrays enable the programmer to easily define such extensions. In this paper we will discuss some extended arithmetics and a prototype of arithmetic on statistical distributions that we have implemented in APL2 [1]. In this prototype, distributions take the place of numbers and the ordinary arithmetic scalar functions are replaced by derived functions that take distributions as arguments and return distributions as results. For ordinary addition, the natural derived function is convolution. Design issues and application examples are discussed.
Bringing graphic dialogues to APL
Authors: Soop Karl
Published: January 2007

Most attempts to introduce graphic support into APL are limited to handling the composition and presentation of pictures. This paper proposes a model and a formalism encompassing also the other phases of a graphic dialog. The proposal involves a logical extension to structured programming, and is based largely upon already existing or hidden elements of the language. Even though its linguistic consequences are quite limited, the model opens up a new view on the implementation of an APL execution system.
IOTA3: the integration of Lotus spreadsheets and APL
Authors: Searle John R.
Published: January 2007

A software system named IOTA3 is described which represents an integration of the popular Lotus Corporation spreadsheets (1-2-3 and Symphony) and the language APL. IOTA3 allows the spreadsheet user to extend the worksheet environment to include many of the features of the APL environment. Conversely, it allows the APL user to think of the spreadsheet as an extension of the workspace.

The paper describes the various levels at which integration may be achieved, the costs and benefits of doing so, and the problems that were encountered and/or solved along the way. The system is based on the IBM Personal Computer and has been written for a number of APL implementations.
Extending worksheet modelling software with expert system technology
Authors: Sullivan Gerald A. , Fordyce Kenneth J.
Published: January 2007

As a result of the rapid changes in the “information processing technology”, existing programming languages like APL are facing a number of challenges to maintain or increase “market share”. Such technologies as networks, worksheets, expert or knowledge based systems, host / workstation shared processing, software quality, and end user computing are of concern to the consumer of programming languages. It is the contention of these authors and others that APL already contains many features to meet new needs (for example, tracing the execution of a function or networking users on a single mainframe), or can easily and elegantly be extended to meet new needs (for example, invoking assembler from APL or a host - workstation link). This paper describes a tool called Automated Ledger Book (ALB). ALB uses expert system technology to extend worksheet modeling software function and therefore enhance end user computing. The purpose of this description is to help demonstrate the applicability of APL to such new areas as expert systems, and help the APL community better understand the links between expert systems and decision support systems.

ALB is a worksheet model generator with some enhancement based on an equation manipulating expert system and a natural language interface built by the authors in APL/APL2. ALB enables the user to build and run worksheet type models in high school algebraic notation and English without regard to equation order or specification of calculated and input variables. Solving sets of algebraic and conditional equations, ALB adjusts itself to input, responding to unlimited 'what ifs'. When challenged, ALB provides the rationale for its conclusions.
Topics for a second course in APL
Authors: Jaffe Stephen B.
Published: January 2007

After students complete the introductory APL course, after they become comfortable with the concepts and after they use it regularly in their work, then the problem of enhancing skills must be addressed. This paper presents a syllabus of three lectures which comprise part of a second course in APL.

The purpose of Lecture I, MULTIDIMENSIONAL ARRAYS MADE EASY, is to help students deal with data stored in higher rank arrays. The idea of formulating such arrays frequently occurs naturally to users but they are reluctant to proceed because of the difficulty visualizing the arrangement. Six rules are presented to ease the way.

Lecture II, SPECIAL USES OF THE GRADE AND SCAN, alerts students to approaches and techniques which would not typically occur to them. Interesting applications of the scan operator yield utilities which produce expansion vectors and indexing vectors based on field lengths. The grade and double grade form the core of other utilities to merge data and to affect table lookup.

BUILDING BETTER USER/COMPUTER INTERFACES, Lecture III, is designed to facilitate delivering “closed” versions of “open” systems. Topics include a standard PROMPT utility, techniques in error trapping and a MENUDRIVEN MENUDRIVER.
Machine-oriented languages in the APL environment
Authors: Weigang Jim
Published: January 2007

Many APL systems, especially mainframe systems, have made it inconvenient or impossible for users to write subroutines in machine-oriented languages (e.g., FORTRAN, C, or assembler). This deficiency has had a serious impact on APL, preventing it from competing with conventional compiled languages for speed and access to hardware capabilities. The trend in modern APL systems, particularly microcomputer systems, is to provide more convenient and flexible access to machine-oriented programs. This paper describes the machine-level interfaces provided by several APL systems, lists desirable features of such interfaces, gives examples of what machine-oriented programs can be used for, and takes a speculative look at the future.
Medium term forecasts of half-hourly power demand
Authors: McGowan J. E. , Parker D. J.
Published: January 2007

This paper describes a case study where an important new forecasting methodology was developed and subsequently computerized. The use of APL to handle large amounts of data in a simple manner and the structure of the program's internal filing system will be of particular interest to the APL community.
An APL/370 compiler and some performance comparisons with APL interpreter and FORTRAN
Authors: Ching Wai-Mee
Published: January 2007

The experimental APL/370 E-compiler compiles a subset of APL which is large enough for most scientific and engineering uses, directly into 370 assembly code. The compiler does not require variable declarations. The front-end employs extensive type-shape analysis based on global dataflow analysis. The back-end takes the parse trees, graphs and tables produced by the front-end and generates 370-code which runs independently of the interpreter. The compiled-code executes at 2-10 times the speed of the interpreter on several one-line functions, and this ratio increases significantly with iterative programs. The code quality is comparable to that produced by an optimizing FORTRAN compiler on FORTRAN programs corresponding to our test cases. This removes the performance penalty of APL in computation intensive applications.
APL procedures (user defined operators, functions and token strings)
Authors: Hodgkinson Robert
Published: January 2007

This paper describes some central aspects of an APL implementation on a Hewlett Packard Minicomputer. The development of these ideas led to an elegant, consistent underlying structure for all procedures, where a procedure is defined as a structured sequence of APL expressions, instances of which are niladic functions, ambivalent functions, monadic operators and dyadic operators. Further to this idea, the introduction of two new functions (tokenize and detokenize) and a single hyperoperator (∇) gave rise to the following features;

Ability to manipulate functions and operators as APL objects

Extended Assignment applied to all APL objects

Ability to store preset (or initialized) values into the header of any procedure

Make direct use of the (usually restricted) facet of tokenizing and detokenizing in APL to generate token strings, which may be applied by the programmer to form individual variants of □
FX,
□
CR
and/or ∇ editing.

These extensions have been superimposed upon a basic imprint of SHARP APL.
Open fullscreen systems
Authors: Gfeller Martin , Stengl Monika
Published: January 2007

A general scheme is given for designing APL systems which are both open and fullscreen oriented. Such systems guide the user by presenting her visually the data she is working with, but do not restrict her from using APL to accomplish a task. The system is extensible and modeless in the sense that any commands can be entered at any time during the work with the system. Syntactic abbreviations yield a command language which is easy to learn for users not familiar with APL, but is just APL for those who know it.

Finally, some design considerations and requirements are given for screen driver tools which can be used to implement such systems.
Analysis of function applications in deep arrays
Authors: Benkard J. Philip
Published: January 2007

Function arrays are easy to understand in APL when the leaves are primitive scalar functions. Herein other kinds of functions, called generically subscalars, are studied as items in functions arrays. Some example primitive shave an internal analog of structure. They are explicated using an experimental DEPTH operator and some defined subprimitive functions. Subscalar leaves of function arrays interrupt the promulgation of scalar conformance in a resumable fashion reminiscent of the data types of Kajiya [6].
APL: A prototyping language
Authors: Bernecky Robert
Published: January 2007

The use of APL as a language for system design and prototyping is discussed. Benefits of APL over traditional design techniques are shown to include higher productivity, improved code reliability, superior maintainability and performance, and executable documentation.

Hierarchical and hybrid approaches to modelling systems of various degrees of complexity are presented, with examples chosen from the author's experience.
Assertive comments in APL programming
Authors: Weintraub David M.
Published: January 2007

Current practice in APL programming (and in most other languages) is to use comments to describe what is intended by subsequent lines within a function. An alternative approach to commenting is described, wherein assertions (a concept borrowed from program proof techniques) are inserted into APL code, specifying the present state of relevant variables, etc. It is shown that this approach is especially appropriate for APL, as most APL design is accomplished by working from a desired end result, backwards.
APL as a prototyping language: case study of a compiler development project
Authors: Yoshino Matsuki
Published: January 2007

We are applying prototyping method using APL to a commercial compiler's development Project.

This paper will discuss the following matters based on our one year experience of the project:

Merits of APL as a prototyping language.

An environment of the prototype.

A representation of tables and the intermediate language of compilers in an APL environment.

A strategy of transforming the APL prototype into final product written in Pascal.

Evaluation of this method.
Generalised arrays and shortest path problems
Authors: Sandi Claudio
Published: January 2007

Real world problems are often formulated as flow optimization problems on large networks, with thousands of nodes but with a restricted number of arcs. The average number of arcs having a given node as origin or terminal node (node degree) may be limited even to a few units. Standard optimization methods, mainly matrix methods for complete or strongly connected graphs, may become unpractical; recent results have shown the superiority of advanced methods based on suitable data structures.

In this study the classical shortest path problem, one of the basic techniques in network flow optimization, is approached, in APL environment, using: i) standard matrix methods, ii) methods that handle irregular structures element by element, and iii) advanced methods using generalized arrays. Preliminary results indicate which approach should be preferred, according to problem characteristics and size.
TEXT: Publication-quality characters come to APL graphics
Authors: Feldberg Ian
Published: January 2007

An APL workspace named TEXT has been developed to generate publication-quality characters for use with several APL plotting packages, both on the mainframe and on the PC. TEXT is written in APL and is very simple to use. The fonts supplied are based on the Hershey fonts - a well known public-domain digitization of over 20 character fonts.

The user is provided with several functions that construct the vectors for plotting a character string (vectors signifying move and draw locations) — including lower-level functions that are more flexible for certain applications. Some of these functions are: rotating, scaling, justifying, underlining and changing style of text strings. Greek, Italic, Russian, Gothic, Math, Weather, and Music symbols are just a few of the character sets available. A modified version is described for APL2
1
, which uses mixed arrays as input.
LOGOS: An APL programming environment
Authors: Allen David B. , Goldsmith Leslie H. , Dempsey Mark R. , Harrell Kevin L.
Published: January 2007

Programming environments support the creation, maintenance, execution, and deployment of programs. The development of complex application systems written in APL has always been hampered by the lack of a comprehensive programming environment for the language. This paper presents a new approach to software creation and management through the use of LOGOS, an integrated software development environment for APL. LOGOS provides support to the user, developer, and manager of application systems. Its centralized, uniform structure removes much of the drudgery of dealing with software, encourages sharing of ideas and programs among users, and leads to increased programmer productivity and improved software reliability.
Japanese APL language system on IBM Multistation 5550
Authors: Udo M. , Akimoto Y. , Kaneko S. , Sanuki T. , Alfonseca M.
Published: January 2007

This paper exemplifies the national language support of a programming language by describing the implementation of APL with a language facility for processing Japanese characters: that is, a character set that has “wide” characters that occupy space of more than one byte. By national language support, in this paper, we mean that users are enabled to use their own national language in the data, as legal character strings of the programming language. We describe the implementation of APL that provides Japanese language support in the above sense on a personal computer called the IBM Multistation 5550. We also discuss the design principle adopted to include a new two-byte character set in APL data objects coexisting with a conventional one-byte APL character set.
Advising roles of a computer consultant
Authors: McKendree J. , Carroll J. M.
Published: January 2007

Several hours of advisory protocols from a consultant for Personal Computing were taped and analysed in terms of the role which the advisor played in the interaction. The advisor's role was determined by the user's initial approach and the advisor's perception of the needs of the user:
informing
the user about available information,
defining
terms or procedures,
indexing
into appropriate solution sources or methods for more complex problems or
structuring
a nebulous or poorly understood problem. A taxonomy of stages of information exchange is outlined and the patterns of alternation within each advisor role is described. We suggest implications of this study for the design of advisory systems.
The enhancement of understanding through visual representations
Authors: Bocker H. D. , Fischer G. , Nieper H.
Published: January 2007

It has been argued for a long time that the representation of a problem is of crucial importance to understanding and solving it. Equally accepted is the fact that the human visual system is a powerful system to be used in information processing tasks. However, there, exist few systems which try to take advantage of these insights. We have constructed a variety of system components which automatically generate graphical representations of complex structures. We are pursuing the long-range goal of constructing a
software oscilloscope
which makes the invisible visible. Our tools are used in a variety of contexts: in programming environments, in intelligent tutoring systems, and in human-computer interaction in general by offering aesthetically pleasing interfaces.
Design principles for the enhanced presentation of computer program source text
Authors: Baecker R. , Marcus A.
Published: January 2007

In order to make computer programs more readable, understandable, appealing, memorable, and maintainable, the presentation of program source text needs to be enhanced over its conventional treatment. Towards this end, we present five basic design principles for enhanced program visualization and a framework for applying these principles to particular programming languages. The framework deals comprehensively with ten fundamental areas that are central to the structure of programming languages. We then use the principles and the framework to develop a novel design for the effective presentation of source text in the C programming language.
Transfer between word processing systems
Authors: Karat J. , Boyes L. , Weisgerber S. , Schafer C.
Published: January 2007

A study was conducted to examine knowledge transfer between word processing systems. The study examined the performance of naive subjects learning to use a word processing system, as well as performance of individuals with word processing experience as they learned to use a new system. Subjects initially familiar with one system carried out a series of tasks on this system and then were asked to carry out a similar series of tasks on a second system with which they were initially unfamiliar. The second systems varied in similarity to the first system along several dimensions. Subject performance was significantly slower on the second set of tasks for all groups compared to a control group using a single system. The reduced performance is attributed primarily to 'syntactic' differences in the user interfaces of the systems.
Learning and transfer for text and graphics editing with a direct manipulation interface
Authors: Ziegler J. E. , Hoppe H. U. , Fahnrich K. P.
Published: January 2007

For a Direct Manipulation interface, transfer of skill between text and graphics editing tasks has been investigated. A learning experiment has been carried out with two groups of novice users starting with a series of sessions in one task domain and then switching over to the other domain. The empirical results are discussed in the framework of the “cognitive complexity” theory of Polson and Kieras.
DOMAIN/DELPHI: retrieving documents online
Authors: Orwick P. , Jaynes J. T. , Barstow T. R. , Bohn L. S.
Published: January 2007

DOMAIN/DELPHI is the retrieval component of Apollo's in-house, integrated publishing system. It retrieves and displays documentation in a networked workstation environment in which each workstation has access to a common database of user and systems documents. Users can find information by “browsing” through a table of contents or by an indexed search for all documents on a subject. DELPHI incorporates a graphical, menu-driven user interface and displays output with multiple fonts and line art.
Socio-tech: what is it (and why should we care)?
Authors: Pew R. , Assunto K. , Baker W. , Dray S. , Taylor J.
Published: January 2007

At a time when more and different people are using more and different computer systems, there is growing awareness that if technology is to give companies the “competitive edge” they are seeking, it must be used to support business goals. This means that systems must work within the existing organization to improve and extend its functioning. This also means that the design of these systems must enhance the organization, not disrupt it. Yet technology is, by its very nature, a stimulus for change. The question then becomes: How can this intrinsically de-stabilizing technology be designed and implemented in a way which supports the organization, without destroying it? It is the purpose of this panel to explore this basic question.

Sociotechnical systems theory is a method to deal with this dilemma. At its core is the assumption that to be successful, technology must be designed in tandem with the receiving organization. So-called socio-tech focuses on how the organization can use technology, in an attempt to establish a “best fit” between the technical and the social aspects of the workplace. This is in contrast both to “old style” systems design, which concentrates on technical aspects only and to the “traditional” Human Factors approach, which considers how to design for “typical” users and how they think and perceive. (Some people have dubbed this new approach “Macroergonomics” as a way of distinguishing it from this more traditional Human Factors approach.)
Voice messaging enhancing the user interface design based on field performance
Authors: Aucella A. F. , Ehrlich S. F.
Published: January 2007

Computer-based voice messaging systems are used to send and receive confidential messages via touch-tone telephones. Auditory prompts guide users through a series of menus, listing options as users proceed through their sessions. This report describes how a voice messaging system was enhanced and redesigned based on thinking aloud protocols, customer site interviews, and usage statistics that described summary patterns of behavior. The goal of the human factors effort was to optimize system use. The evaluation of the length, wording and phrasing of auditory prompts as well as ease-of-accessibility provided by the menu structure led to specific enhancements and redesign. Feedback also helped define an audio HELP/OTHER OPTIONS system that (1) provided context sensitive assistance and (2) documented infrequently used options that enabled streamlining of routine transactions.
Alternatives to construct-based programming misconceptions
Authors: Spohrer J. C. , Soloway E.
Published: January 2007

In this paper, we investigate whether or not most novice programming bugs arise because students have misconceptions about the semantics of particular language constructs. Three high frequency bugs are examined in detail — one that clearly arises from a construct-based misconception, one that does not, and one that is less cut and dry. Based on our empirical study of 101 bug types from three programming problems, we will argue that most bugs are not due to misconceptions about the semantics of language constructs.
Speech recognition enhancement by lip information
Authors: Nishida S.
Published: January 2007

Though technology in speech recognition has progressed recently, Automatic Speech Recognition (ASR) is vulnerable to noise. Lip-information is thought to be useful for speech recognition in noisy situations, such as in a factory or in a car.

This paper describes speech recognition enhancement by lip-information. Two types of usage are dealt with. One is the detection of start and stop of speech from lip-information. This is the simplest usage of lip-information. The other is lip-pattern recognition, and it is used for speech recognition together with sound information. The algorithms for both usages are proposed, and the experimental system shows they work well. The algorithms proposed here are composed of simple image-processing. Future progress in image-processing will make it possible to realize them in real-time.
An interactive environment for dialogue development: its design, use and evaluation; or, is aide useful?
Authors: Hix D. H. , Hartson H. R.
Published: January 2007

The
Author's Interactive Dialogue Environment (AIDE)
of the Dialogue Management System is an integrated set of direct manipulation tools used by a dialogue author to design and implement human-computer interfaces without writing source code. This paper presents the conceptual dialogue transaction model upon which AIDE is based, describes AIDE, and illustrates how a dialogue author develops an interface using AIDE. A preliminary empirical evaluation of the use of AIDE versus the use of a programming language to implement an interface shows very encouraging results.
The elicitation of system knowledge by picture probes
Authors: Barnard P. , Wilson M. , MacLean A.
Published: January 2007

A technique is described in which a user's knowledge of a software package is elicited by means of a series of photographs depicting the system in a variety of states. The resultant verbal protocols were codified and scored in relation to the way in which the system actually worked. In the illustrative study described, the probes were administered twice after 5 and 10 hrs of system experience with an office product (VisiOn*). The number of true claims elicited increased with experience but the number of false claims remained stable. The potential value of the technique and its output are discussed.
The formal specification of adaptive user interfaces using command language grammar
Authors: Browne D. P. , Sharratt B. , Norman M.
Published: January 2007

The design and implementation of adaptive systems as opposed to non-adaptive systems creates new demands on user interface designers. This paper discusses a few of these demands as encountered by the authors while utilising a formal notation for the design of an adaptive user interface to an electronic mail system. Recommendations for the extension of this formal notation are proposed and discussed.
An input-output model of interactive systems
Authors: Shaw M.
Published: January 2007

Interactive user interfaces depend critically on underlying computing system facilities for input and output. However, most computing systems still have input-output facilities designed for batch processing. These facilities are not adequate for interfaces that rely on graphical output, interactive input, or software constructed with modern methodologies. This paper details the deficiencies of batch-style input-output for modern interactive systems, presents a new model for input-output that overcomes these deficiencies, and suggests software organizations to take advantage of the new model.
Of moles and men: the design of foot controls for workstations
Authors: Pearson G. , Weiser M.
Published: January 2007

Workstations require use of the hands both for text entry and for cursor-positioning or menu-selection. The physical arrangement does not allow these two tasks to be done concurrently. To remove this restriction, various alternative input devices have been investigated. This work focuses on the class of foot-operated computer input devices, called moles here. Appropriate topologies for foot movement are identified, and several designs for realising them are discussed.
Seven plus or minus two central issues in human-computer interaction
Authors: Shneiderman B.
Published: January 2007

This paper offers seven issues and specific challenges for researchers and developers of human-computer interaction. These issues are: interaction styles, input techniques, output organization, response time, error handling, individual differences, explanatory and predictive theories.
Talisman
Authors: Bedichek Robert C.
Published: January 2007

Talisman is a simulator that models the execution semantics and timing of a multicomputer. Talisman is unique in combining high semantic accuracy, high timing accuracy, portability,
and
good performance. This good performance allows users to run significant programs on large simulated multicomputers. The combination of high accuracy and good performance yields an ideal tool for evaluating architectural trade-offs. Talisman models the semantics of virtual memory, a circuit-switched internode interconnect, I/O devices, and instruction execution in both user and supervisor modes. It also models the timing of processor pipelines, caches, local memory buses, and a circuit-switched interconnect. Talisman executes the same program binary images as a hardware prototype at a cost of about 100 host instructions per simulated instruction. On a suite of accuracy benchmarks run on the hardware and the simulator, Talisman and the prototype differ in reported running times by only a few percent.
An analysis of decay-usage scheduling in multiprocessors
Authors: Epema D. H. J.
Published: January 2007

Priority-ageing or decay-usage scheduling is a time-sharing scheduling policy capable of dealing with a workload of both interactive and batch jobs by decreasing the priority of a job when it acquires CPU time, and by increasing its priority when it does not use the (a) CPU. In this paper we deal with a decay-usage scheduling policy in multiprocessor systems modeled after widely used systems. The priority of a job consists of a base priority and a time-dependent part based on processor usage. Because the priorities in our model are time dependent, a queueing-theoretic analysis, for instance for the mean response time, seems impossible. Still, it turns out that as a consequence of the scheduling policy, the shares of available CPU time obtained by jobs converge, and a deterministic analysis for these shares is feasible: for a fixed set of jobs with very large (infinite) processing demands, we derive the relation between their base priorities and their steady-state shares. In addition, we analyze the relation between the values of the parameters of the scheduler and the level of control it can exercise over the steady-state shares. We validate the model by simulations and by measurements of actual systems.
Exponential bounds for the waiting time distribution in Markovian queues, with applications to
TES
/
GI
/1 systems
Authors: Fang Youjian , Devetsikiotis Michael , Lambadaris Ioannis , Kaye A. Roger
Published: January 2007

Several services to be supported by emerging high-speed networks are expected to result in highly
bursty
(autocorrelated) traffic streams. A typical example is variable bit-rate (VBR) compressed video. Therefore, traffic modeling and performance evaluation techniques geared towards autocorrelated streams are extremely important for the design of practical networks.The
TES
(Transform - Expand - Sample) technique has emerged as a general methodology for modeling autocorrelated random processes with arbitrary marginal distributions. Because of their generality and practical applicability, TES models can be readily used to accurately characterize bursty traffic streams in ATM networks.Although TES models can be easily implemented for simulation studies, the need still exists for
analytical
results on the performance of queueing systems driven by autocorrelated traffic. Of particular interest are the tails of the waiting time distribution in queues driven by TES-modeled bursty traffic. Such tail probabilities, when they become exceedingly small, may be difficult to obtain via conventional simulation.In order to extend existing results, based on Large Deviations theory, to TES processes, the main difficulty is posed by the continuous state-space of the TES time-series. In this paper, we develop a general result concerning exponential bounds for the waiting time under
continuous state-space
Markov arrivals. We apply this result to
TES/GI
/1 queues, show numerical examples, and compare our bound with simulation results. Accurate estimates of extremely low probabilities are obtained by employing fast simulation techniques based on
importance sampling.
Optimal probabilistic allocation of customer types to servers
Authors: Borst S. C.
Published: January 2007

The model under consideration consists of
n
customer types attended by
m
parallel non-identical servers. Customers are allocated to the servers in a probabilistic manner; upon arrival customers are sent to one of the servers according to an
m × n
matrix of routing probabilities. We consider the problem of finding an allocation that minimizes a weighted sum of the mean waiting times. We expose the structure of an optimal allocation and describe for some special cases in detail how the structure may be exploited in actually determining an optimal allocation.
Striping in a RAID level 5 disk array
Authors: Chen Peter M. , Lee Edward K.
Published: January 2007

Redundant disk arrays are an increasingly popular way to improve I/O system performance. Past research has studied how to stripe data in non-redundant (RAID Level 0) disk arrays, but none has yet been done on how to stripe data in redundant disk arrays such as RAID Level 5, or on how the choice of striping unit varies with the number of disks. Using synthetic workloads, we derive simple design rules for striping data in RAID Level 5 disk arrays given varying amounts of workload information. We then validate the synthetically derived design rules using real workload traces to show that the design rules apply well to real systems.We find no difference in the optimal striping units for RAID Level 0 and 5 for read-intensive workloads. For write-intensive workloads, in contrast, the overhead of maintaining parity causes full-stripe writes (writes that span the entire error-correction group) to be more efficient than read-modify writes or reconstruct writes. This additional factor causes the optimal striping unit for RAID Level 5 to be four times smaller for write-intensive workloads than for read-intensive workloads.We next investigate how the optimal striping unit varies with the number of disks in an array. We find that the optimal striping unit for reads in a RAID Level 5 varies
inversely
to the number of disks, but that the optimal striping unit for writes varies
with
the number of disks. Overall, we find that the optimal striping unit for workloads with an unspecified mix of reads and writes is
independent
of the number of disks.Together, these trends lead us to recommend (in the absence of specific workload information) that the striping unit over a wide range of RAID Level 5 disk array sizes be equal to 1/2 * average positioning time * disk transfer rate.
On-line extraction of SCSI disk drive parameters
Authors: Worthington Bruce L. , Ganger Gregory R. , Patt Yale N. , Wilkes John
Published: January 2007

Sophisticated disk scheduling algorithms require accurate, detailed disk drive specifications, including data about mechanical delays, on-board caching and prefetching algorithms, command and protocol overheads, and logical-to-physical block mappings. Comprehensive disk models used in storage subsystem design require similar levels of detail. We describe a suite of general-purpose algorithms and techniques for acquiring the necessary information from a SCSI disk drive. Using only the ANSI-standard interface, we demonstrate how the important parameter values of a modern SCSI drive can be determined accurately and efficiently.
DASD dancing
Authors: Wolf Joel L. , Yu Philip S. , Shachnai Hadas
Published: January 2007

For a video-on-demand computer system we propose a scheme which balances the load on the disks, thereby helping to solve a performance problem crucial to achieving maximal video throughput. Our load balancing scheme consists of two stages. The static stage determines good assignments of videos to groups of striped disks. The dynamic phase uses these assignments, and features a DASD dancing algorithm which performs real-time disk scheduling in an effective manner. Our scheme works synergistically with disk striping. We examine the performance of the DASD dancing algorithm via simulation experiments.
A study of integrated prefetching and caching strategies
Authors: Cao Pei , Felten Edward W. , Karlin Anna R. , Li Kai
Published: January 2007

Prefetching and caching are effective techniques for improving the performance of file systems, but they have not been studied in an integrated fashion. This paper proposes four properties that optimal integrated strategies for prefetching and caching must satisfy, and then presents and studies two such integrated strategies, called
aggressive
and
conservative.
We prove that the performance of the
conservative
approach is within a factor of two of optimal and that the performance of the
aggressive
strategy is a factor significantly less than twice that of the optimal case. We have evaluated these two approaches by trace-driven simulation with a collection of file access traces. Our results show that the two integrated prefetching and caching strategies are indeed close to optimal and that these strategies can reduce the running time of applications by up to 50%.
Computational techniques for accurate performance evaluation of multirate, multihop communication networks
Authors: Greenberg Albert G. , Srikant R.
Published: January 2007

Computational techniques are presented for connection-level performance evaluation of communication networks, with stochastic multirate traffic, state dependent admission control, alternate routing, and general topology --- all characteristics of emerging integrated service networks. The techniques involve solutions of systems of fixed point equations, which estimate equilibrium network behavior. Though similar techniques have been applied with success to single-rate fully connected networks, the curse of dimensionality arises when the techniques are extended to multirate, multihop networks, and the cost of solving the fixed point equations exactly is exponential. This exponential barrier is skirted by exploiting, in particular, a close relationship with the network reliability problem, and by borrowing effective heuristics from the reliability domain. A series of experiments are reported on, comparing the estimates from the new techniques to the results of discrete event simulations.
Disk-tape joins
Authors: Myllymaki Jussi , Livny Miron
Published: January 2007

Today large amounts of data are stored on tertiary storage media such as magnetic tapes and optical disks. DBMSs typically operate only on magnetic disks since they know how to maneuver disks and how to optimize accesses on them. Tertiary devices present a problem for DBMSs since these devices have dismountable media and have very different operational characteristics compared to magnetic disks. For instance, most tape drives offer very high capacity at low cost but are accessed sequentially, involve lengthy latencies, and deliver lower bandwidth. Typically, the scope of a DBMS's query optimizer does not include tertiary devices, and the DBMS might not even know how to control and operate upon tertiary-resident data. In a three-level hierarchy of storage devices (main memory, disk, tape), the typical solution is to elevate tape-resident data to disk devices, thus bringing such data into the DBMS' control, and then to perform the required operations on disk. This requires additional space on disk and may not give the lowest response time possible. With this challenge in mind, we studied the trade-offs between memory and disk requirements and the execution time of a join with the help of two well-known join methods. The conventional, disk-based Nested Block Join and Hybrid Hash Join were modified to operate directly on tapes. An experimental implementation of the modified algorithms gave us more insight into how the algorithms perform in practice. Our performance analysis shows that a DBMS desiring to operate on tertiary storage will benefit from special algorithms that operate directly on tape-resident data and take into account and exploit the mismatch in disk and tape characteristics.
Scheduling for cache affinity in parallelized communication protocols
Authors: Salehi James D. , Kurose James F. , Towsley Don
Published: January 2007

We explore processor-cache affinity scheduling of parallel network protocol processing in a setting in which protocol processing executes on a shared-memory multiprocessor concurrently with a general workload of non-protocol activity. We find that affinity scheduling can significantly reduce the communication delay associated with protocol processing, enabling the host to support a greater number of concurrent streams and to provide a higher maximum throughput to individual streams. In addition, we compare implementations of two parallelization approaches (
Locking
and
Independent Protocol Stacks
) with very different caching behaviors.