Equitable resource allocation is currently considered as a key enabler for achieving complete parallelism in parallel computing. Optimized memory management mechanisms are crucial for load balance in parallel tasks. In some cases, the performance of Linux’s huge page management mechanism deteriorates when handling parallel tasks due to the nonhomogeneous allocation of memory resources among parallel processes. This research introduces HASLB, a huge page allocation strategy optimized for parallel programs. HASLB evaluates the status of parallel processes based on the count of huge pages acquired by each process and the number of page faults it encountered. Following the results of the analysis, huge pages are allocated using a method conducive to load balance. The problems in the Linux transparent huge page mechanism are optimized through this strategy, which limits the greedy allocation mechanism in some situations. HASLB achieves a reasonable allocation of memory resources among parallel processes with low overhead, benefiting the load balance of parallel computing programs. In addition, contiguous memory would be protected because of limiting the greedy allocation of huge pages. The parallel benchmark experiments show a maximum performance improvement of 6.4% compared to Linux in the BFS benchmark. In the IS benchmark program, huge page consumption exhibits a 9% reduction.

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

HASLB: Huge Page Allocation Strategy Optimized for Load-Balance in Parallel Computing Programs

  • Lei Yue,
  • Tao Wu,
  • Yang Shen,
  • Jin Zhang,
  • Wenzhe Zhang

摘要

Equitable resource allocation is currently considered as a key enabler for achieving complete parallelism in parallel computing. Optimized memory management mechanisms are crucial for load balance in parallel tasks. In some cases, the performance of Linux’s huge page management mechanism deteriorates when handling parallel tasks due to the nonhomogeneous allocation of memory resources among parallel processes. This research introduces HASLB, a huge page allocation strategy optimized for parallel programs. HASLB evaluates the status of parallel processes based on the count of huge pages acquired by each process and the number of page faults it encountered. Following the results of the analysis, huge pages are allocated using a method conducive to load balance. The problems in the Linux transparent huge page mechanism are optimized through this strategy, which limits the greedy allocation mechanism in some situations. HASLB achieves a reasonable allocation of memory resources among parallel processes with low overhead, benefiting the load balance of parallel computing programs. In addition, contiguous memory would be protected because of limiting the greedy allocation of huge pages. The parallel benchmark experiments show a maximum performance improvement of 6.4% compared to Linux in the BFS benchmark. In the IS benchmark program, huge page consumption exhibits a 9% reduction.