Usage History-based Architectural Scheduling
*
Dongsun Kim, Seokhwan Kim, and Sooyong Park
Department of Computer Science and Engineering, Sogang University
Shinsoo-dong, Mapo-Gu, Seoul, Korea
darkrsw@sogang.ac.kr, goatkhan@gmail.com, sypark@sogang.ac.kr
Abstract
Waiting a long time for software applications to load
typically elicits an adverse response from the user. This
negative response eventually leads to decreased user sat-
isfaction. The waiting time can be reduced by executing the
application in improved hardware computing devices and
by optimizing the algorithms constituting the application;
however, these solutions are costly. An alternative approach
is to overlap the execution and waiting times. Although this
approach does not reduce the actual waiting time, it can
reduce the user’s waiting time. This study proposes an ap-
proach to decrease the waiting time by scheduling archi-
tectural units. The study formulates the dynamic architec-
tural scheduling problem and it provides an overlapping ap-
proach to the problem on the basis of the formulation. This
approach anticipates subsequent tasks from previous usage
history and launches the corresponding components of the
anticipated tasks in the task architectures. Evaluation of
this approach shows that it effectively schedules applica-
tions and reduces waiting time.
1. Introduction
In spite of enhancements in contemporary computing
systems, increasing the functions of software applications
still leads to longer waiting times. Protracted waiting times
result in low user satisfaction. One possible approach to de-
crease the waiting time is to use faster, improved computing
devices; however, this leads to increased cost. Another pos-
sible approach is to overlap the application’s execution and
preparation times (i.e., loading and initialization time). Al-
though this approach cannot fundamentally reduce the load-
ing and initialization time of software systems, it can reduce
the user’s waiting time.
*
This research was performed for the Intelligent Robotics Development
Program, one of the 21st Century Frontier R&D Programs funded by the
Ministry of Knowledge Economy (MKE).
Another possible reason for an increase in waiting time
is memory swapping. In a system, when the memory space
used by the applications in a system exceeds the physically
provided memory size, the system uses secondary storage
(e.g., magnetic disks) as the memory space. This causes re-
peated storage accesses, which may lead to delays in load-
ing. Therefore, this study provides a scheduling method for
an application in a limited memory space.
In this study, we formulate the abovementioned problem
into a dynamic architectural scheduling problem. This for-
mulation defines tasks, task architectures, and components.
The objective of this formulation is to minimize the waiting
time by optimally scheduling the software architecture. On
the basis of the formulation, an overlapping approach to de-
crease the waiting time is proposed. The approach provides
a prediction algorithm that anticipates the subsequent user
tasks in a short time. Although the prediction results are
not optimal, the approach provides sufficiently good results
without increasing the user’s waiting time.
After anticipating the subsequent tasks, this approach
loads and initializes components in the task architectures.
During this period, newly loaded and existing components
can exceed the specified memory space. Our approach ap-
plies a replacement algorithm based on the least recently
used (LRU) principle. This algorithm removes components
that were used a long time ago and maintains the appli-
cation without exceeding the specified memory space. On
the basis of the prediction and replacement algorithms, this
approach deals with the dynamic architectural scheduling
problem.
The remainder of this paper is organized as follows: Sec-
tion 2 relates this approach to existing work. Section 3
provides a motivating example that requires dynamic archi-
tectural scheduling. Section 4 formulates the dynamic ar-
chitectural scheduling problem. In Section 5, we propose
our approach to the dynamic architectural scheduling prob-
lem; that the proposed approach comprises prediction and
replacement algorithms. Section 6 evaluates our approach
in terms of accuracy and applicability. Finally, Section 8
provides the conclusion and suggests further studies.
2009 33rd Annual IEEE International Computer Software and Applications Conference
0730-3157/09 $25.00 © 2009 IEEE
DOI 10.1109/COMPSAC.2009.65
443