A method of tying related process threads within non-related applications
together in terms of memory paging behavior. In a data processing system,
a first process thread is related to one or more "partner" threads within
separate high latency storage locations. The kernel analyzes the memory
"page-in" patterns of multiple threads and identifies one or more partner
threads of the first thread based on user input, observed memory page-in
patterns, and/or pre-defined identification information within the thread
data structures. The kernel marks the first thread and its corresponding
related partner threads with a unique thread identifier. When the first
thread is subsequently paged into a lower latency memory, the kernel also
pages-in the related partner threads that are marked with the unique
thread identifier in lockstep. Tying related threads from non-related
applications together in terms of memory paging behavior thus eliminates
memory management delays.