This document summarizes a survey of static and dynamic load balancing algorithms for distributed multicore systems. It discusses how efficient load balancing is essential for distributing work across cores in large supercomputers. Both static and dynamic algorithms are reviewed. Static algorithms allocate work deterministically or probabilistically without considering runtime conditions, while dynamic algorithms can adapt based on network conditions and core capabilities. The paper evaluates various performance metrics for different load balancing algorithms and concludes that modern distributed multicore systems require more reliable dynamic algorithms to optimize performance.