``Optimizing Toolkit-Generated Graphical Interfaces''
Bradley T. Vander Zanden
1994 ACM SIGGRAPH Symposium on User Interface Software
and Technology, Marina del Rey, CA, November, 1994, pp. 157-166.
Available via anonymous ftp to cs.utk.edu in
pub/bvz/papers/uist94.ps.Z.
Abstract
Researchers have developed a variety of toolkits that support
the development of highly interactive, graphical, direct manipulation
applications such as animations, process monitoring tools, drawing packages,
visual programming
languages, games, and data and program visualization systems.
These toolkits contain many useful features, such as
1) structured graphics, 2) automatic display management,
3) constraints, and 4) high-level input-handling models.
Despite a number of optimizations that have been described in
the literature, most
toolkit-generated applications run in a predominantly
interpreted mode at runtime: they
dynamically determine the set of constraints and objects that must be
redisplayed, which requires the use of time-consuming algorithms and data
structures.
The optimizations that do exist rely on semantic information that applies
globally to all operations in an application.
In this paper we identify a number of optimizations that require
local, operation-specific semantic information about an application.
For each operation, these
optimizations pre-compute update plans that
minimize the number of objects that are examined for redisplay, and
pre-compute constraint plans that minimize the amount of dynamic
scheduling and method dispatching that is performed for constraint
satisfaction.
We present performance measurements that suggest that these optimizations
can significantly improve the performance of an application. We also discuss
how a compiler might obtain from a programmer
the information required to implement these
optimizations.