A new task scheduling method for distributed programs that require memory management

Hiroshi Koide, Yuji Oie

Research output: Contribution to journalArticle

1 Citation (Scopus)

Abstract

In parallel and distributed applications, it is very likely that object-oriented languages, such as Java and Ruby, and large-scale semistructured data written in XML will be employed. However, because of their inherent dynamic memory management, parallel and distributed applications must sometimes suspend the execution of all tasks running on the processors. This adversely affects their execution on the parallel and distributed platform. In this paper, we propose a new task scheduling method called CP/MM (Critical Path/Memory Management) which can efficiently schedule tasks for applications requiring memory management. The underlying concept is to consider the cost due to memory management when the task scheduling system allocates ready (executable) coarse-grain tasks, or macro-tasks, to processors. We have developed three task scheduling modules, including CP/MM, for a task scheduling system which is implemented on a Java RMI (Remote Method Invocation) communication infrastructure. Our experimental results show that CP/MM can successfully prevent high-priority macro-tasks from being affected by the garbage collection arising from memory management, so that CP/MM can efficiently schedule distributed programs whose critical paths are relatively long.

Original languageEnglish
Pages (from-to)941-958
Number of pages18
JournalConcurrency Computation Practice and Experience
Volume18
Issue number9
DOIs
Publication statusPublished - Aug 10 2006
Externally publishedYes

All Science Journal Classification (ASJC) codes

  • Software
  • Theoretical Computer Science
  • Computer Science Applications
  • Computer Networks and Communications
  • Computational Theory and Mathematics

Fingerprint Dive into the research topics of 'A new task scheduling method for distributed programs that require memory management'. Together they form a unique fingerprint.

Cite this