Skip to content

bokner/packer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

75 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Packer

Experiments with allocation of processes across network clusters

Goal

Based on configuration and resource capacities of individual nodes in network cluster, find the placement of the processes across the cluster that satisfies the constraints imposed by processing demands.

Method

Constraint programming, bin packing with side constraints.

Small example (more examples)

Below is an instance of a 4-node cluster configuration, with 8 processes we'd like to place on cluster nodes, such that the demand for resources required by processes and the inter-process communication requirements would be satisfied.

The node resources consist of:

  • available memory
  • available load
  • network bandwidth (in and out)

The process demands consist of

  • memory;
  • load;
  • the volume of outgoing network traffic

Additionally:

  • The topology of the cluster describes how the nodes are connected;
  • The process communication requirements describe the connectivity between processes.

Cluster description (nodes: 4, processes: 8 )

  • Capacities per node

node id memory load out-bandwidth in-bandwidth
1 1930 966 268 392
2 2007 808 844 159
3 535 952 563 161
4 1010 986 515 667
  • Demand per process

process id memory load message volume
1 412 419 50
2 460 141 102
3 503 582 125
4 446 258 121
5 395 230 151
6 272 105 190
7 263 368 139
8 376 361 169
  • Cluster topology

Node 1 Node 2 Node 3 Node 4
Node 1 .
Node 2 .
Node 3 .
Node 4 .
  • Process communications

    • process1process3
    • process1process8
    • process2process7

The solution

The following placement of processes onto the cluster nodes satisfies the requirements described above:

node id processes memory used/avail. load used/avail. out-bandwidth used/avail. in-bandwidth used/avail.
1 {1,2,8} 1248/1930 921/966 152/392 0/268
2 {3,6} 775/2007 687/808 0/159 50/844
3 {7} 263/535 368/952 0/161 102/563
4 {4,5} 841/1010 488/986 0/667 0/515

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors