In a distributed computer system the performance of the system is estimated how efficiently the work is divided across the participating nodes. Process migration is a specialized form of process management where by processes are moved from one computing host to another computing host. The most common application of dynamic process migration is load balancing. Load balancing is a computer networking method for distributing workloads across multiple computing resources, such as computers, a computer cluster, network links, central processing units or disk drives. Using this both resource utilization and job response time is improved and avoiding a situation in which some  nodes are heavily loaded and others are idle. To develop an effective load balancing algorithm so many important issues are considered like load levels comparison, load estimation, system stability, amount of information exchanged among  nodes, job resource requirements estimation, job’s selection for transfer, remote nodes selection etc. In this paper survey of different   memory  migration techniques  and uses of genetic algorithm in the field of dynamic load balancing are discussed