DOI QR코드

DOI QR Code

A Half Pancake network that improve the network cost for Pancake graph

팬케익 그래프의 망비용을 개선한 하프팬케익 연결망

  • Received : 2014.03.21
  • Accepted : 2014.05.23
  • Published : 2014.06.30

Abstract

The pancake graph is node symmetric and is utilized on the data sorting algorithm. We propose a new half pancake graph that improve pancake graph's network cost. The half pancake degree is approximately half of pancakes degree and diameter is 3n+4. The pancake graph's network cost is $O(1.64n^2)$ and half pancake's is $O(1.5n^2)$. Additionally half pancake graph is sub graph of pancake graph. As this result, The several algorithms developed in pancake graph has the advantage of leverage on the pancake by adding constant cost.

Keywords

1. 서 론

지식 정보화 사회에서 재난재해 분석, 유전자 분석, 과학 기술 응용분야의 시뮬레이션 등의 대용량 자료 처리를 위해 고성능 컴퓨터에 대한 연구가 진행되고 있으며 상용화된 시스템이 개발 및 운영되고 있다. 고성능의 컴퓨터를 제작하는 방법으로 여러 대의 컴퓨터를 조합하여 사용하는 병렬처리(parallel processing) 기술이 사용되고 있다. 병렬처리란 다수의 프로세서들이 여러 개의 프로그램들 또는 한 프로그램의 분할된 부분들을 분담하여 동시에 처리하는 기술을 말한다[1]

병렬처리를 위한 MIMD(multiple instruction multiple data)형 컴퓨터는 각 프로세서가 서로 독립적으로 다양한 프로그램을 수행할 수 있는 컴퓨터로 Cosmic Cube, nCUBE 2, iPSC, Symmetry, FX-8, CM-5 등이 있다. MIMD형 컴퓨터는 크게 공유 메모리를 갖는 다중 프로세서(multi-processor) 시스템과 분산 메모리를 갖는 다중 컴퓨터(multi-computer) 시스템으로 분류할 수 있다[2]. 다중 컴퓨터 시스템의 성능은 각 프로세서의 성능과 프로세서를 연결하는 상호연결망(interconnection network) 구조 및 그에 따라 사용되는 알고리즘에 의해 결정된다. 특히 상호연결망 구조는 하드웨어적인 비용과 관련된 분지수(degree), 소프트웨어적인 비용을 나타내는 지름(diameter), 연결망의 대칭성, 확장성, 고장 허용도 등의 성질에 따라 전체 시스템의 성능에 영향을 미친다[3,4].

병렬 컴퓨터를 위한 상호연결망은 각 프로세서들을 노드로, 프로세서들 사이에 통신 채널을 에지로 나타내는 무방향 그래프 G=(V,E)로 표현 될 수 있다. 임의의 두 프로세서 v와 w 사이에서 양방향 통신 채널이 존재하면 두 프로세서 사이에는 에지 (v,w)가 있다. 상호연결망의 성능 평가 척도 중 망 비용(network cost)은 분지수×지름이다. 분지수는 하드웨어 설치비용이고 지름은 소프트웨어 처리비용이다. 일반적으로 분지수가 증가하면 지름은 짧아지고 분지수가 줄어들면 지름은 늘어나게 되어 분지수와 지름은 상호 역상관 관계에 있다[2,5].

상호연결망은 노드수를 기준으로 다음 4가지로 나눌 수 있다. 첫째, 메쉬(mesh) 부류[6]는 일반적으로 격자 구조에서 n×k개의 격자점에 노드를 나타내고, 둘째, 스타(star) 그래프 부류[7]는 n개의 정수를 이용하여 n!개의 노드를 갖고, 셋째, 하이퍼큐브(hypercube) 부류[8]는 이진수를 이용하여 노드 주소를 표현하는 방식으로 2n개의 노드를 갖고, 마지막으로 이진수를 이용하여 노드가 조합(combination) 개수를 갖는 하이퍼-스타(hyper-star) 부류[9]로 나눌 수 있다.

팬케익 정렬(pancake sort) 문제는 스택이라는 공간에 쌓여있는 크기가 각각 다른 팬케익을 손님들의 식탁에 놓기 좋도록 가장 큰 팬케익을 스택의 바닥에 두고 차츰 팬케익의 크기가 작아지도록 쌓는 문제이다[10]. [11]에서는 n차원 팬케익 네트워크를 정의하고 뒤집기 연산에 의한 라우팅과 지름을 분석하였다. 팬케익 네트워크에서 라우팅은 팬케익 정렬문제에서 정렬연산의 프로세스와 같고 팬케익 네트워크의 지름은 팬케익 정렬문제에서 정렬연산 최대 횟수와 같다. 팬케익 그래프에서 정렬을 위해 요구되는 연산의 최소 횟수는 (15/14)n과 (18/11)n사이로 정리 하였지만 이것이 최솟값임을 증명하진 못하였다[12].

본 연구에서는 스타 그래프 부류인 팬케익 그래프의 분지수를 1/2 정도 줄이면서 망 비용을 개선한 새로운 하프팬케익(half pancake) 그래프를 제안한다. 본 논문의 구성은 다음과 같다. 2장에서 하프팬케익 그래프와 비슷한 스타 그래프 부류 상호연결망의 특성에 대해 살펴보고, 3장에서 본 논문에서 제안하는 하프팬케익 그래프를 정의하고 기본성질 및 지름을 분석한다. 추가하여 라우팅 알고리즘을 제시하고 스타 그래프 부류의 연결망과 팬케익 그래프의 망비용을 비교분석한다. 마지막으로 4장에서 본 논문의 결론을 맺는다.

 

2. 스타 그래프 부류의 상호연결망

스타 그래프 부류는 n개의 심볼을 이용하여 노드 주소를 표현하므로 노드 개수가 n!개 이고, 대략 n정도의 분지수를 갖도록 구성되어 있다. 이러한 스타 그래프 부류로는 스타 그래프[7], (n,k)-스타 그래프, 팬케익 그래프[13], 불완전 팬케익 그래프[14] 매크로스타 그래프[5], 버블정렬 그래프, 전위 그래프, Rotator 그래프 등이 제안되었다. 스타 그래프 Sn은 n개 정수를 이용하여 노드 주소를 표현하고, 노드주소를 표현한 순열에서 첫 번째 심벌과 k번째 심벌이 서로 교환된 순열 사이에 에지가 있다(2≤k≤n). 따라서 노드 개수는 n!개 이고 분지수는 n-1이다. 스타 그래프는 n-1가지의 방법으로 n개의 노드 중복 없는 (n-1)-차원 스타 그래프 Sn-1로 분할 가능한 재귀적 구조를 갖고 있다. 스타 그래프 Sn은 이분 그래프이고 노드 및 에지 대칭이다. 지름은 ⌊3(n-1)/2⌋이고 최대고장 허용도 등 여러 가지 유용한 성질이 있음이 알려졌다. 스타 그래프 부류는 하이퍼큐브 부류와 비슷한 노드 개수를 가질 때 상대적으로 적은 분지수와 짧은 지름을 갖는 장점이 있지만, 노드 개수의 증가율이 급격하고 하이퍼큐브 부류와 임베딩이 어려운 단점이 있다.

버블정렬 그래프 Bn의 노드 개수는 n!이고, 에지수는 n!(n-1)/2개로 구성된다. 버블정렬 그래프 Bn의 라우팅은 n개 정수를 오름차순으로 정렬하는 방식으로 수행하므로 지름은 n(n-1)/2이고, 에지를 중심으로 그래프를 분할 할 수 있는 계층적 연결망이다. 버블정렬 그래프 Bn은 노드 대칭적이고 에지 대칭적이며, 이분 그래프(bipartite graph)이고 해밀톤 싸이클을 포함하고 있다. 이와 같이 스타 그래프와 비슷한 장점들을 가지고 있지만 같은 노드수를 갖는 스타 그래프와 비교하여 분지수와 지름이 커 망 비용이 나쁜 단점이 있다.

팬케익 그래프 Pn의 각 노드 주소는 1부터 n까지의 서로 다른 심볼의 순열로 표현한다. 에지는 다음의 조건을 만족하는 노드 v와 w사이에 존재한다. w는 u의 순열을 첫 번째 심볼에서부터 k번째 심볼까지 역순으로 뒤집은 순열이다. 여기에서 k는 1보다 크고 n보다 적거나 같다. 따라서 노드 개수는 n!개이고, 분지수는 n-1이고, 전체 에지 개수는 n!(n-1)/2개다. 팬케익 그래프는 노드 대칭적이고 재귀적 구조를 갖고 있다. 팬케익 그래프 Pn은 해밀턴 싸이클을 포함하지만 4차원 이상의 팬케익 그래프는 길이가 홀수인 싸이클이 존재하기 때문에 이분 그래프가 아님이 알려져 있다. 팬케익 그래프에서 전위 합 문제, 정렬과 합병 알고리즘에 대한 연구 결과가 있다. 또한 지름, 방송, 병렬 라우팅과 정렬, 임베딩, 부하균등 문제 등 다양한 성질들이 발표되었다[13]. Fig. 1은 2차원, 3차원 팬케익 그래프이다. 4차원 팬케익 그래프는 Fig. 2의 4차원 하프팬케익 그래프와 동형이다.

Fig. 1.Pancake Graph P2, P3.

Fig. 2.4-dimension Half Pancake HP4.

 

3. 하프팬케익 그래프 정의와 라우팅 알고리즘

3.1 하프팬케익 그래프 정의와 성질

하프팬케익 그래프 HPn의 노드는 ={1,2,3...,n}의 순열로 표현하고, 노드를 연결하는 에지는 Pn과 Pk로 나눌 수 있다(2 ≤ k ≤ ⌊n/2⌋ +1). 노드를 표현하는 순열에서 첫 번째 심볼부터 n번째 심볼까지 심볼의 순서를 뒤집어 생성된 순열과 원래의 순열을 연결하는 에지를 에지 Pn이라 하고, 첫 번째 심볼부터 k번째 심볼까지 순서를 뒤집어 생성된 순열과 원래의 순열을 연결하는 에지를 에지 Pk, 2 ≤ k ≤ ⌊n/2⌋ +1이라 한다. 하프팬케익 그래프 HPn의 노드 개수는 n!개 이고, 분지수는 ⌊n/2⌋ +1이다. 본 논문에서는 노드의 주소를 순열로 표현할 수 있으므로 노드 주소와 순열을 동일한 의미로 사용한다. 또한 HPn의 임의의 노드 S와 에지 Pn에 의해 인접한 노드를 Pn(S) 라 하고, 에지 Pk에 의해 인접한 노드를 Pk(S)로 나타낸다. 예를 들어 임의의 노드 S의 순열을 s1s2s3⋯s⌊n/2⌋s⌊n/2⌋ +1 ⋯ sn-1sn이라 하자. 노드 S와 에지 Pn에 인접한 노드 Pn(S)의 순열 Pn(S)= snsn-1 ⋯ s⌊n/2⌋ +1s⌊n/2⌋⋯s3s2s1이고, 에지 Pk에 의해 인접한 노드 Pk(S)의 순열은 sksk-1sk-2⋯s2s1sk+1sk+2⋯sn-1sn 이다(2 ≤ k ≤ ⌊n/2⌋ +1). Fig. 2는 4차원 하프팬케익 그래프이다.

예를 들어 HP5 그래프에서 노드 S=12345에 인접한 노드의 순열은 3개의 에지에 인접한 노드 P5(S)=54321, P3(S)=32145, P2(S)=21345이다. Table 1에서는 하프팬케익 그래프와 팬케익 그래프의 분지수를 비교하였다. n-차원 하프팬케익 그래프의 분지수는 n-차원 팬케익 그래프의 분지수보다 대략 1/2 줄어든 값이다.

Table 1.Compare degree on Half Pancake and Pancake

성질 1. 하프팬케익 그래프 HPn에는 (⌊n/2⌋ +1) -차원 팬케익 그래프 P⌊n/2⌋ +1와 동형인 그래프가 n×(n-1)×(n-2)×...×(⌊n/2⌋ +2)개 존재한다(n≥5).

증명 : 하프팬케익 그래프 HPn의 임의의 노드 S의 순열을 s1s2s3⋯s⌊n/2⌋s⌊n/2⌋ +1s⌊n/2⌋ +2 ⋯ sn-1sn이라 할 때, 에지는 Pn과 Pk로 구성되어 있다(2 ≤ k ≤ ⌊n/2⌋ +1). HPn의 에지 Pk는 P2에서 P⌊n/2⌋ +1까지 구성되어 있으며 (⌊n/2⌋ +1)-차원 팬케익 그래프의 에지와 동일하다. 따라서 하프팬케익 그래프 HPn에서 에지 Pk를 모두 포함하면서 생성 가능한 부분 그래프의 경우 수는 노드의 순열에서 (⌊n/2⌋ +2)번째부터 n번째까지 n-(⌊n/2⌋ +1)개 심볼 s⌊n/2⌋ +2,s⌊n/2⌋+3,s⌊n/2⌋ +4,⋯,sn 에 대한 순열 개수이므로 n×(n-1)×(n-2)×...×(⌊n/2⌋ +2)개 존재한다.

성질 2. 하프팬케익 그래프 HPn은 팬케익 그래프 Pn의 서브 그래프이다.

증명 : 하프팬케익 그래프와 팬케익 그래프 정의를 통해 하프팬케익 그래프가 팬케익 그래프의 서브 그래프임을 보인다. n-차원 하프팬케익 그래프와 n-차원 팬케익 그래프의 노드는 ={1,2,3,...,n}에 대한 순열로 표현되므로 전체 노드 개수는 n!로 동일하다. n-차원 팬케익 그래프의 분지수는 n-1이고, 한 순열 S=s1s2s3⋯sk⋯s⌊n/2⌋ ⋯ sn-1sn의 n-1개 각각의 위치에서 순열의 심볼을 뒤집어서 생성된 순열과 원래 순열 S 사이에 에지가 있다. n-차원 하프팬케익 그래프의 분지수는⌊n/2⌋ +1이고, 에지 Pk는 한 순열 s1s2s3⋯sk⋯s⌊n/2⌋ ⋯ sn-1sn에서 심볼의 위치가 2≤k≤⌊n/2⌋인 위치에서 순열의 심볼 뒤집기를 수행하고, 에지 Pn는 모든 심볼의 뒤집기를 수행하는 에지이다. 따라서 n-차원 하프팬케익 그래프 HPn은 n-차원 팬케익 그래프 Pn의 서브 그래프이다.

3.2 라우팅 알고리즘과 지름

본 절에서는 심플 라우팅을 먼저 제안하고, 추가로 향상된 라우팅과 그에 따른 지름을 분석한다. 그 다음, 스타 그래프 부류의 상호연결망과 하프팬케익 그래프의 망비용을 비교한다. 라우팅은 메시지를 전송하고자 하는 두 노드 사이의 짧은 경로를 설정하는 것이다. 이 경로는 에지로 연결된 노드들의 순차적인 표시이다. 출발노드 S=s1s2s3⋯si⋯sn-1sn라고 하고 목적노드 V=v1v2v3⋯vi⋯vn-1vn라고 한다. 노드 S와 V 순열을 이루는 심볼은 모두 n 이하의 자연수로 이루어져 있으므로 S 심볼과 V 심볼은 원소는 서로 같고 단지 순서만 다를 수 있다. 라우팅은 출발노드 S 심볼의 순서를 목적노드 V 심볼의 순서와 일치하도록 연결망의 다른 노드들을 경유하는 경로이다. 심볼을 교환하는 방법은 하프팬케익 그래프의 에지 정의에 따른다.

임의의 노드 W=w1w2w3⋯wi⋯wn-1wn의 순열에서 전위영역의 범위는 1 ≤ i < n-(⌊n/2⌋ +1)이고, 후위영역의 범위를 ⌊n/2⌋ +1 < i ≤ n라고 하자. 단 전위영역과 후위영역에 있는 심볼의 개수는 항상 동일하다. 전위와 후위영역이 동일한 심벌 개수를 갖도록 하기 위해 n이 홀수인 경우 1개의 심볼이, n이 짝수인 경우 2개의 심볼이 전위와 후위영역에서 제외된다. 라우팅에서 설명되는 심볼들의 교환은 모두 출발노드에서 이루어진다. 다음은 라우팅에서 사용될 심볼 교환에 대한 보조정리들이다. 임의의 노드 W에서 에지 시퀜스 를 순서대로 경유한 경로는 P7(P2(P4(W)))) 표현한다. 간단히 W→P4→P2→P7로 나타낼 수 있고, 두 개의 표현은 같은 경로이다.

[보조정리 1] HPn의 임의의 노드 W=w1w2w3⋯wi⋯wn-1wn에서 전위에 있는 심볼 wi를 전위의 임의의 위치 j로 이동시키는 방법은 다음 증명과 같고 두 노드 사이의 경로 길이는 2이다.

증명 : 전위에 있는 심볼 wi를 전위의 임의의 위치 j로 이동시키는 방법은 다음과 같다.

[보조정리 2] HPn의 임의의 노드 W=w1w2w3⋯wi⋯wn-1wn에서 전위의 심볼 1개를 후위로 이동시키고 후위의 심볼 1개를 전위로 이동시키는 방법은 다음과 같고 두 노드 사이의 경로길이는 6이다.

증명 : HPn에서 n이 홀수인 경우와 짝수인 경우로 나눈다.

첫째, n = 홀수일 경우

전위에 있는 wi와 후위에 있는 wj를 교환하기 위해 다음과 같이 자리바꿈한다.

둘째, n = 짝수일 경우

전위에 있는 wi와 후위에 있는 wj를 교환하기 위해 다음과 같이 자리바꿈한다.

[보조정리 3, 4]에서 wi=wi-1 +1, wi+1=wi +1 이다.

[보조정리 3] HPn의 임의의 노드에서 내림차순으로 정렬된 심볼들 wi+1wiwi-1이 맨 왼쪽에서부터 있고, 심볼 wj | wj=wj+1 +1가 전위에 있다면, wj를 포함하여 내림차순으로 정렬된 심볼들을 맨 왼쪽부터 배치하기 위한 경로의 길이는 2이다.

증명 : 라우팅 경로는 다음과 같고, 경로 길이는 2이다.

[보조정리 4] HPn의 임의의 노드 전위에서, 오름차순으로 정렬된 심볼들 wi-1wiwi+1이 맨 왼쪽에서 부터 있고, 심볼 wj | wj=wj-1 -1가 전위에 있다면, wj를 포함하여 오름차순으로 정렬된 심볼들을 맨 왼쪽부터 배치하기 위한 경로의 길이는 2다.

증명 : 라우팅 경로는 다음과 같고, 경로 길이는 2이다.

3.2.1 심플 라우팅 알고리즘

심플 라우팅 알고리즘은 크게 두 단계로 진행된다. 첫 번째 단계에서는 목적노드의 후위 심볼과 같은 값을 가지는 출발노드의 심볼들을 전위나 후위에 모은다. 이 작업이 완료되면 목적노드의 전위 심볼들 역시 출발노드에서 후위 심볼들의 반대편에 모이게 된다. 이 단계를 그루핑(grouping)이라고 한다. 두 번째 단계에서는 출발노드의 전위에서 목적노드의 심볼과 같은 순서로 출발노드의 심볼을 일치시킨다.

Simple Routing Algorithm

목적노드의 후위 심볼 집합을 TR(Target Rear), 전위 심볼 집합을 TF(Target front)라고 하고, 출발 노드의 후위 심볼 집합을 SR(Source Rear), 전위 심볼 집합을 SF(source Front)라고 한다.

[결정 1] |TR ∩ SR| ≤ |TR ∩ SF|이면 TR을 전위로 TF를 후위로 그루핑하고 |TR ∩ SR| > |TR ∩ SF|라면 TR을 후위로 TF를 전위로 그루핑한다. 그루핑에서 전위에서 후위로 또는 후위에서 전위로 이동해야 할 심볼의 개수 K = MIN(|TR ∩ SR|, |TR ∩ SF|)이다.

만약 |TR ∩ SR| ≤ |TR ∩ SF|이면 후위에서 전위로 이동해야 할 심볼 집합 R→F = TR ∩ SR이고 전위에서 후위로 이동해야 할 심볼 집합 F→R = TF ∩ SF이다. 만약 |TR ∩ SR| > |TR ∩ SF|라면 전위에서 후위로 이동해야 할 심볼 집합 F→R = TR ∩ SF이고 후위에서 전위로 이동해야 할 심볼 집합 R→F = TF ∩ SR이다. 집합 R→F에서 R→F[j]는 j번째 심볼을 말한다.

[보조정리 5] HPn의 출발노드에서 TF와 TR을 전위와 후위로 그루핑하기 위해 교환해야 할 심볼의 수 K의 상한을 E라고 하면, E =⌈(n-1)/4⌉이다.

증명 : HPn의 출발노드에서 |TF| = |TR| = n – ⌊n/2⌋+1이고, |TF| + |TR| = 2(n–⌊n/2⌋+1)이다. |TF| + |TR| -⌊n/2⌋+1는 |R→F|+|F→R|의 하한이고, 이것은 2n–3(⌊n/2⌋ +1)이다. 다시 말하면 전위에 있는 TF와 TR 심볼의 개수의 합은 적어도 2n–3(⌊n/2⌋ +1)개다. K = (n-⌊n/2⌋ +1) – MAX(|F→R|,|R→F|)에서 MAX(|F→R|,|R→F|)가 적을수록 K는 커진다. MAX(|F→R|,|R→F|)가 가장 적은 경우는 |F→R|와 |R→F|가 같을 때다. |F→R|+|R→F| = 짝수일 경우 가장 적은 MAX(|F→R|,|R→F|)의 값은 (|F→R|+|R→F)/2이고 홀수일 경우⌈(|F→R|+|R→F|)/2⌉ 다. 따라서 MAX(|F→R|,|B|)가 가장 적은 경우는 ⌈(|F→R|+|R→F|)/2⌉이다.

HPn의 출발노드에서 TF와 TR을 전위와 후위로 그루핑하기 위해 교환해야 할 심볼의 수 K의 상한 E = (n – ⌊n/2⌋+1)–⌈(|F→R|+|R→F|)/2⌉이다. 여기에서 (|F→R|+|R→F|)의 하한은 |TF|+|TR| - ⌊n/2⌋+1 이므로

3.2.2 향상된 라우팅 알고리즘과 지름

향상된 라우팅 알고리즘이 심플 라우팅과 같은 점은 출발노드의 전위와 후위에 각각 TF와 TR을 그루핑을 한다는 것이다. 다른 점은 심플 라우팅은 그루핑 종료 후 그루핑 된 결과를 각각 처리하는데 반해 향상된 라우팅 방법은 그루핑과 동시에 전위와 후위에서 각각 라우팅도 진행한다. 향상된 라우팅 방법은 라우팅을 진행하면서 두 개의 묶음을 점차 키워나간다. 두 묶음의 크기가 n-1이 되면 라우팅이 완료된다. TF의 심볼들로 이루어진 묶음을 BoFV(bundle of front value)라고 하고 TR의 심볼들로 이루어진 묶음을 BoRV(bundle of rear value)라고 한다. 최초 BoFV는 v1이고 나머지 v2, v3, v4 ⋯ v⌊n/2⌋가 차례대로 추가된다. 최초 BoRV는 vn이고 나머지 vn-1,vn-2,vn-3 ⋯ v⌊n/2⌋+2가 차례대로 추가된다. BoFV={v1, v2, v3}이라면 NEXT(BoFV)=v4이다. 최초 순열에서 두 묶음이 분리되고 난후, 두 묶음은 항상 다른 위치(전위나 후위)에 있다.

향상된 라우팅 알고리즘의 개요는 다음과 같다. 먼저 [결정 1]에 따라 목적노드의 TR을 출발노드의 전위나 후위 중 어느 곳으로 그루핑할지 결정하고, 그 결정에 따라 v1과 vn을 전위의 맨 앞과 후위의 맨 뒤로 이동시킨다. 최초 BoFV는 v1이고 최초 BoRV는 vn이 된다. BoFV가 전위에 있다면 R→F 심볼 중 j가 가장 큰 vj를 ⌊n/2⌋+1로 이동한다. 그 다음 NEXT(BoFV)가 전위에 있는 동안 BoFV에 NEXT(BoFV)을 추가한다. 더 이상 NEXT(BoFV)가 전위에 없다면 에지 Pn을 적용한다. 전위에 BoRV가 있다면 F→R 심볼 중 j가 가장 적은 vj를 순열의 ⌊n/2⌋+1 위치로 이동한다. 그 다음 NEXT(BoRV)가 전위에 있는 동안 BoRV에 NEXT(BoRV)를 추가한다. 더 이상 NEXT(BoRV)가 전위에 없다면 순열에 에지 Pn을 적용한다. 정렬이 완료될 때까지 이 과정을 반복한다.

상호연결망의 지름은 임의의 두 노드 사이의 최단 경로들 중 최댓값이다. 여기에서 경로는 라우팅 알고리즘에 따른다. 지름을 계산하기 위해 향상된 라우팅 알고리즘의 몇 가지 특징을 살펴본다.

(특징 1) 출발노드의 전위에 BoFV와 NEXT(BoFV)가 둘 다 있다면 [보조정리 3]에 따라 경로길이 2에 NEXT(BoFV)가 추가된 새로운 BoFV가 만들어진다. 마찬가지로 BoRV와 NEXT(BoRV)도 [보조정리 4]에 따라 경로길이 2에 새로운 BoRV가 만들어진다. 따라서 최악의 경우는 TF와 TR의 연속되는 심볼이 같은 위치(전위 혹은 후위)에 하나도 존재 하지 않는 경우이다.

(특징 2) 서로 교환해야 할 심볼의 개수 K=0일 경우 전위와 후위의 심볼들 간의 교환은 필요 없다. 단지 전위와 후위의 심볼들을 각자 정렬하면 된다. [보조정리 5]에 따라 최악의 경우는 K=E일 경우다.

(특징 3) K=E일 경우, 전위에서 [보조정리 3]에 따라 경로길이 2에 BoFV에 추가되는 심볼은 ⌊n/2⌋+1 -1-E개이다. 마찬가지로 [보조정리 4]에 따라 경로길이 2에 BoRV에 추가되는 심볼은 n - ⌊n/2⌋+1-E개이다.

정리 1. 하프팬케익 그래프 HPn에서 향상된 라우팅 알고리즘에 의해 임의의 두 노드 사이의 라우팅 경로 길이를 T라고 하면 T=4K+4(⌊n/2⌋+1)–3이고, 라우팅 경로 길이 T의 상한인 지름은 3n+4 이하이다.

증명 : 증명의 편의를 위해 향상된 라우팅 알고리즘을 적용하여 설명한다. 최악의 경우 Block 1, 2는 K번 번갈아 수행되며, Block 1, 2가 수행될 때 Section 1, 3은 각각 1번씩 수행된다. 그러나 Section 2는 ⌊n/2⌋+1-K번 수행된다. 마지막 직전 Block이 수행될 때 Section 2는 수행되지 않는다. Block이 마지막으로 수행될 때 Section 1,3 모두 수행되지 않는다. 마지막의 경우 더 이상 넘겨줄 심볼이 없기 때문이고, 그 전 단계에서 넘어온 심볼은 그 자체로 정렬되어 있다. 마지막에 필요하다면 에지 Pn이 한번 실행된다.

Improved Routing Algorithm

라우팅 경로 길이의 상한 T =

[K×(Section 1의 경로길이 2 + Section 3의 경로길이 2)+(⌊n/2⌋+1-K) × Section 2의 경로길이 2] × 2(Block 1,2)–6+1로 나타낼 수 있다.

최악의 경우 T =

= 4K + 4( ⌊n/2 ⌋+1) - 3, 여기에서 최악의 경우 K=E이므로

= 4E + 4( ⌊n/2 ⌋+1) - 3, 여기에서 E ≤ 0.25n + 0.75, ⌊n/2 ⌋+1 ≤ 0.5n + 1이므로

≤ n + 3 + 2n + 4 - 3

≤ 3n + 4

Table 2에 스타 그래프 부류의 상호연결망에 대해 망비용을 비교하였다. 비교된 상호연결망들은 모두 노드 수가 n!개이다. 본 연구에서 제안한 하프팬케익그래프는 전위 그래프와 버블정렬 그래프보다는 우수하고 팬케익 그래프의 망비용이 개선됨을 확인하였다.

Table 2.Compare Network Cost among Star Graph class

하프팬케익 그래프의 망비용은 전위 그래프나 버블정렬 그래프의 망비용의 약 1/n이다. 따라서 망비용 측면에서 하프팬케익 그래프는 전위그래프나 버블정렬 그래프에 비해 약 n배 우수하다. 마지막으로 하프팬케익 그래프는 팬케익 그래프와 불완전 팬케익 그래프보다 분지수는 1/2정도 줄였음에도 불구하고 망비용은 각각 9%, 25%개선되었다. 따라서 하프팬케익 그래프는 팬케익 그래프보다 초기설치비용이 적게 들고 소프트웨어 운용비용도 적게 든다.

 

4. 결 론

본 논문에서는 팬케익 그래프의 망비용을 개선하기 위해 팬케익 그래프의 분지수를 대략 1/2 줄인 새로운 하프팬케익 그래프를 제안하였다. 제안한 하프팬케익 그래프는 팬케익 그래프의 서브 그래프로 존재함을 보였으며, 차원이 낮은 팬케익 그래프는 하프팬케익 그래프의 부분 그래프로 존재함을 보였다. 또한 본 연구의 라우팅 알고리즘은 [15]에서 제시한 지름 3.5n+4를 3n+4로 15% 개선하였다. Table 2에 보인 것처럼 팬케익 그래프의 망비용은 O(1.64n2)이고 하프팬케익 그래프의 망비용은 O(1.5n2)으로 팬케익 그래프 보다 9%개선된 결과를 갖는다. 이러한 결과는 본 연구에서 제안한 하프팬케익 그래프가 병렬 처리를 위한 상호연결망으로 망비용 측면에서 스타 그래프 부류의 다른 연결망보다 효율적임을 알 수 있다. 향후에는 하프팬케익 그래프의 고장허용도 및 성질 분석, 방송 알고리즘, 임베딩 등에 관한 연구가 필요하다.

References

  1. K. Hwang and F.A. Briggs, Computer Architecture and Parallel Processing, 4th Printing, McGraw-Hill International Editions, New York, 1988.
  2. A. Varma and C.S. Raghavendra, "Interconnection Networks for Multiprocessors and Multicomputers Theory and Practice," IEEE Computer Society Press, pp. 8-18, 1994.
  3. T. Feng, "A Survey of Interconnection Networks," IEEE Transactions on Computers, Vol. 14, No. 12, pp. 12-27, 1981.
  4. J.H. Chang, "Cycle Extendability of Torus Sub-Graphs in the Enhanced Pyramid Network," Journal of Korea Multimedia society, Vol. 13, No. 8, pp. 1183-1193, 2010.
  5. C.H. Yeh and E.A. Varvarigos, "Macro-Star Networks: Efficient Low-Degree Alternatives to Star Graphs," IEEE Transactions on Parallel and Distributed Systems, Vol. 9, No. 10, pp. 987-1003, 1998. https://doi.org/10.1109/71.730528
  6. Q. Dong, J. Zhou, Y. Fu, X. Yang, "Embedding a Mesh of Trees in the Crossed Cube," Information Processing Letters, Vol. 112, No. 14-15, pp. 599-603, 2012. https://doi.org/10.1016/j.ipl.2012.04.013
  7. S.B. Akers and B. Krishnamurthy, "A group-Theoretic Model for Symmertric Interconnection Network," IEEE Transations on Computer, Vol. 38, No. 4, pp. 555-565, 1989. https://doi.org/10.1109/12.21148
  8. Y. Saad and M.H. Schultz, "Topological Properties of Hypercubes," IEEE Transactions on Computer, Vol. 37, No. 7, pp. 867-872, 1988. https://doi.org/10.1109/12.2234
  9. J.S. Kim, E. Cheng, and H.O. Lee, "Embedding Hypercubes, Rings, and Odd Graphs into Hyper-Stars," International Journal of Computer Mathematics, Vol. 86, No. 5, pp. 771-778, 2013.
  10. H. Dweighter, Amer, Math, Monthly, Vol. 82, No. 1, pp. 1010, 1975. https://doi.org/10.2307/2318261
  11. M.H. Heydari and I.H. Sudborough, "On Sorting by Prefix Reversals and the Diameter of Pancake Networks," Proceedings of the First Heinz Nixdorf Symposium on Parallel Architectures and Their Ecient Use, pp. 218-227, 1993.
  12. M.H. Heydari and I.H. Sudborough, "On the Diameter of the Pancake Network," Journal of Algorithms, Vol. 25, No. 1, pp. 67-94, 1997. https://doi.org/10.1006/jagm.1997.0874
  13. J. Kim, Design and Analysis for Half Pancake, Master's Thesis of University of Sunchon, 2014.
  14. E. Konstantinova, "On Some Structural Properties of Star and Pancake Graphs," LNCS, Vol. 7777, No. 2013, pp. 472-487, 2013.
  15. K. Keiichi, "Routing Problems in Incomplete Pancake Graphs," Proceedings of Seventh IEEE ACIS International Conference on Software Engineering, Artificial Intelligence, Networking, and Parallel Distributed Computing, pp. 151-156, 2006.