Core Migration On SCC [keyword : Lookup Table, MPB] Chan Seok Kang 2013/06/19
2Computer Systems and Platforms Lab Reference Fast Process Migration on Intel SCC using LUTs (V. Jain) Migration Experiment On SCC Custom Kernel Porting Migration using LUT Migration using shared memory Comparative Evaluation of Process Migration Algorithm (M. Noack) Introduction of Migration Algorithm.
3Computer Systems and Platforms Lab Introduction Migration Transferring something running on one machine to another Suspend it and resume at that point
4Computer Systems and Platforms Lab Introduction What migration? Entire information of something I.e process in Operating system Hardware context (machine state) Virtual Memory (%eax, %ebx,.. %esp, %ebp..) Environment data (pid, uid, child/ parent process)
5Computer Systems and Platforms Lab Introduction Where to use? Dynamic Load Balancing Resource Sharing Fault Tolerance Improving Performance
6Computer Systems and Platforms Lab Introduction How to Migration?
7Computer Systems and Platforms Lab Introduction How to Migration? In Operating System, Suspend at Source Host Transfer the information Resume at Destination Host Consideration When to transfer the information. Quality(?) of migration-related information.
8Computer Systems and Platforms Lab Introduction Migration Algorithm Total Copy Demand Paging Flushing Pre-copy Post-copy
9Computer Systems and Platforms Lab Migration on SCC Migration Environment in SCC Setting Lookup Table(LUT) on MPB Each tile has its MPB (16kB) Each core can access the another MPB Migration Buffer Using Shared Memory Unused memory
10Computer Systems and Platforms Lab Migration On SCC Re-visit : Message Passing vs. Shared Memory
11Computer Systems and Platforms Lab Migration On SCC Re-visit : Look Up Table For translation of address Contain routing information Destination ID Subdestination ID Can be modified dynamically. The Effect of migration Without physical Copying, Just Swap the LUT
12Computer Systems and Platforms Lab Migration On SCC Main Idea on previous work Swap the LUT! Save the core Register Buffer before Migration During Suspend, Swap the LUT & MGB After resume, Flushing~~ So does the Network status Migration Change the Network information(i.e ip table) Swap the LUT and Resume, flush ….
13Computer Systems and Platforms Lab Migration On SCC For using this, we should care about these files Migration Section rckmb.c (comm. Between cores) migrate.c (Migrate Algorithm Implement IP Allocation Section rckmb.c (core-to-core) rckpc.c ( core-to-MCPC) crbif-net.c (Linux network driver of MCPC)
14Computer Systems and Platforms Lab Migration On SCC For using this, we should care about these files Migration Section rckmb.c (comm. Between cores) migrate.c (Migrate Algorithm Implement IP Allocation Section rckmb.c (core-to-core) rckpc.c ( core-to-MCPC) crbif-net.c (Linux network driver of MCPC)