next up previous
Next: Performance Up: Thread Migration Previous: Memory Aliasing Stacks

Thread Migration Portability

Table 1 illustrates the portability of our implementation of each thread migration technique on various platforms. Stack copying threads are portable to many platforms including even Windows. The only restriction on stack copy threads is the requirement that the system stack frames on all processors begin at the same base address. In practice, however, our implementation of stack copying threads is based on QuickThreads which has not been ported to the IA64. By contrast, isomalloc and memory aliasing stack thread migration mechanisms work on all machines except for those where the mmap system call is unavailable, for example Blue Gene/L and Windows. Windows supports virtual memory with the MapViewOfFileEx call, and so could be supported with only a small amount of effort. Blue Gene/L does not have mmap, but we have shown our scheme for memory aliasing can be supported by adding a small extension to the BlueGene/L microkernel to allow user processes to remap their heap data over the stack location.



Gengbin Zheng 2006-03-18