Abstract
클러스터와 같은 분산 메모리 구조에서 각 노드는 전체 데이터의 일부분을 저장하고 있다. 이러한 구조에서는 데이터를 각 노드에 분산시키는 방법이 성능에 영향을 준다. 데이터 분산 정책은 데이터를 노드들에게 분산시켜 병렬 데이터 처리를 실현하는 정책이다. 클러스터 관리, 확장, 업그레이드 등 다양한 요인으로 인해 클러스터의 각 노드 성능이 동일하지 않을 수 있다. 이러한 클러스터에서 노드의 성능을 고려하지 않은 데이터 분산 정책은 데이터를 각 노드에 효율적으로 분산시키지 못할 수 있다. 본 논문에서는 각 노드의 성능을 나타내는 인자로 노드에 장착되어 있는 프로세서의 코어 수를 이용하고, 이를 고려한 데이터 분산 정책을 제안한다. 본 논문에서 제안하는 데이터 분산 정책에서는 전체 코어 수 대비 노드에 장착된 코어 수에 비례하여 데이터를 노드에 분산 저장하도록 할당을 한다. 또, 본 논문에서 제안하는 데이터 분산 정책을 Chapel 언어를 이용하여 구현하였다. 본 논문에서 제안하는 데이터 분산 정책이 효과적임을 입증하기 위해 이 정책을 이용하여 Mandelbrot 집합과 원주율을 계산하는 병렬 프로그램을 작성하고, 클러스터에서 실행하여 실행 시간을 비교한다. 8-코어와 16-코어로 구성되어 있는 클러스터에서 수행한 결과에 의하면 노드의 코어 수를 기반으로 한 데이터 분산 정책이 병렬 프로그램의 수행 시간 감소에 기여하였다. In distributed memory architectures like clusters, each node stores a portion of data. How data is distributed across nodes influences the performance of such systems. The data distribution scheme is the strategy to distribute data across nodes and realize parallel data processing. Due to various reasons such as maintenance, scale up, upgrade, etc., the performance of nodes in a cluster can often become non-identical. In such clusters, data distribution without considering performance cannot efficiently distribute data on nodes. In this paper, we propose a new data distribution scheme based on the number of cores in nodes. We use the number of cores as the performance factor. In our data distribution scheme, each node is allocated an amount of data proportional to the number of cores in it. We implement our data distribution scheme using the Chapel language. To show our data distribution is effective in reducing the execution time of parallel applications, we implement Mandelbrot Set and <TEX>${\pi}$</TEX>-Calculation programs with our data distribution scheme, and compare the execution times on a cluster. Based on experimental results on clusters of 8-core and 16-core nodes, we demonstrate that data distribution based on the number of cores can contribute to a reduction in the execution times of parallel programs on clusters.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.