1 / 19

Resource Allocation in Heterogeneous Computing Systems

Resource Allocation in Heterogeneous Computing Systems. By Chris Klumph and Kody Willman Advisor: Professor H.J. Siegel. Resource allocation in a MMOG. in a m assive m ultiplayer o nline g ame (MMOG) multiple users are simultaneously connected at any given time

kevyn
Download Presentation

Resource Allocation in Heterogeneous Computing Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Resource Allocation in Heterogeneous Computing Systems By Chris Klumph and KodyWillmanAdvisor: Professor H.J. Siegel

  2. Resource allocation in a MMOG • in a massive multiplayer online game (MMOG) multiple users are simultaneously connected at any given time • a heterogeneous system includes • varying computer capabilities • varying communication times • need to implement resource allocation heuristics for this heterogeneous system

  3. Mn Mn-1 Mn M1 … Mn-1 Main Server M2 M6 M1 … Main Server SS2 SS6 M3 M5 M3 M5 M4 M4 Part of our problem all players connected directly to a MS vs. players are connected to a MS directly or through SS

  4. Goal of Project and Terminology Goal Terminology • given 200 players are directly connected to MS • need to create different heuristics • distribute the 200 players between MS and SS • So RTmax time is as low as possible • RTmax • the maximum communication time between computers and MS • heuristic • way to allocate resources • chromosome • mapping of a possible solution of players and SS

  5. For this problem Chris has worked on Kody has worked on • Genitor heuristic • Min-Min heuristic

  6. Genitor Overview Genitor_matching_scheduling { initial_population_generation; ranking; while(stopping criteria not met) { selection; crossover; mutation; ranking; } output best solution found; } • selection – selects 2 random parents in the hope of duplicating better chromosomes • crossover – picks 2 random points within chromosomes, and swaps data points in between points • mutation –randomly mutate elements within chromosomes • ranking – determines which chromosome represents the best solution found, inserts into ranked list • stopping criteria – 10,000 iterations with no change in best solution or 10 minutes

  7. Chromosome Example 6 2 Users 1 & 3 connected to SS which is user 2 Users 4 & 5 connected directly to MS Users 7, 8 connected to SS which is user 6 4 1 8 5 7 3

  8. Initial Population and Ranking • initial population generation • M – connected to main server(MS) as a player • SS– player is a secondary server • 1-8 – player is connected to that SS • randomly generates 200 chromosomes • ranking (R#) • create ranked list based on each chromosome’s RTmax

  9. Selection and Crossover • selection • two parents • roulette wheel selection • crossover - two point Point 1 Point 2 swap the 3 through 6 portion

  10. Crossover Fixing • fixing – line not always valid check that all players match up to valid SS or MS randomly assign the players to the known SS or to MS

  11. Mutation • randomly swap numbers • 0.1% chance rank each chromosome, then sort into mapping

  12. Repeat and Final Output • drop two lowest-ranking chromosomes • repeat until 10,000 iteration of no change in best solution or 10 minutes • output best solution • at location Rank 1 • done

  13. Min-Min Overview • have 200 players or tasks • run a greedy Min-Min (used as base comparison) • run Phase1 • run Phase2 • compare completion times • output best solution considering all unmapped tasks while(there are unmapped tasks) { find task with single overall minimum computation plus connection time; assign task to corresponding machine; update machines and computation and connection times; }

  14. Min-Min Introduction • no players connected to MS, only SS • 3 types of players • UP – unmapped player • SS – secondary servers • M – mapped to MS • 1-10 – player mapped to that SS find player with minimum connection plus computation time connect player update connection and computation times repeat for all unmapped players

  15. Greedy Min-Min Base • start with all users unmapped • randomly pick k users (between 1-10) to be initial SS • finish the mapping with a modified Min-Min heuristic • not able to create more SS than k randomly generated

  16. Phase 1 implementation • find the user with the largest RTmax • if user is SS or M • no other players connected • remap as player connected to SS with a better RTmax • if user is connect to SS • remap as player to different SS with better connection time or • remap as SS with better connection time • repeat for 1000 iterations or no update

  17. Phase 2 set up • start with the end mapping from Phase 1 • find the set of all the SS • from the set of SS find the SS with the largest α • α is highest computation plus highest communication • p is the number of players connected to that SS • µ is the computational constant for that SS • Comm(SS, MS) is the communication time from SS to the MS • α = (p)² x µ + 2 x Comm(SS, MS)

  18. Phase 2 implementation • try swapping all mapped players into the set of SS in the α SS location • remap with the modified Min-Min • if mapped player gives a better round trip time • make that mapped player a SS • repeat 1000 iterations or no improvement • output best solution

  19. Future Work • continue to modify current heuristics to get better results • could possibly implement other types of heuristics • consider making it a dynamic application where players can join, play, and then leave • budget • have not needed to buy equipment or programs • still have full budgeted amount of $100 • sponsors • no sponsors currently Questions?

More Related