next up previous contents
次へ: この文書について... 上へ: thesis 戻る: 文献目録   目次

付録











図 9: 1つのスイッチに対して4つのパスが通るpermutationの例
\includegraphics[width=15cm,clip]{fig9.eps}

図 10: サイクル別送信例(1)
\includegraphics[width=15cm,clip]{fig10.eps}

図 11: サイクル別送信例(2)
\includegraphics[width=15cm,clip]{fig11.eps}

図 12: サイクル別送信例(3)
\includegraphics[width=15cm,clip]{fig12.eps}

図 13: サイクル別送信例(4)
\includegraphics[width=15cm,clip]{fig13.eps}

/*************************************************
 実験プログラム
(permutation capability評価)
*************************************************/

#include<stdio.h>
#include<math.h>

int main()
{
  double N, p_omega, p_benes, l;
  FILE *fp1, *fp2;
  
  fp1 = fopen("o_permutation.txt", "w");
  fp2 = fopen("b_permutation.txt", "w");;

  for(N=2; N<=pow(2,10); N=N*2){  
    l = log(N)/log(2);
    
    p_omega = pow(2,(int)(l/2+0.5));
    p_benes = 2;
  
    printf("N=%.0lf : OmegaP.C=%.0lf, BenesP.C=%.0lf\n", N, p_omega, p_benes);
   
    fprintf(fp1, "%lf	%lf\n", N, p_omega);
    fprintf(fp2, "%lf	%lf\n", N, p_benes);
 
  }

  fclose(fp1);
  fclose(fp2);
  return 0;
}

/*************************************************
結果

N=2 : OmegaP.C=2, BenesP.C=2
N=4 : OmegaP.C=2, BenesP.C=2
N=8 : OmegaP.C=4, BenesP.C=2
N=16 : OmegaP.C=4, BenesP.C=2
N=32 : OmegaP.C=8, BenesP.C=2
N=64 : OmegaP.C=8, BenesP.C=2
N=128 : OmegaP.C=16, BenesP.C=2
N=256 : OmegaP.C=16, BenesP.C=2
N=512 : OmegaP.C=32, BenesP.C=2
N=1024 : OmegaP.C=32, BenesP.C=2

*************************************************/

/*************************************************
 実験プログラム
(ハードウェアコスト評価)
*************************************************/

#include<stdio.h>
#include<math.h>

int main()
{
  double N, h_omega, h_benes, l;
  FILE *fp1, *fp2;
  
  fp1 = fopen("o_hard.txt", "w");
  fp2 = fopen("b_hard.txt", "w");;

  for(N=2; N<=pow(2,10); N=N*2){  
    l = log(N)/log(2);
    
    h_omega = N/2 * l;
    h_benes = N/2 * (2*l-1);
  
    printf("N=%.0lf : OmegaHard=%.0lf, BenesHard=%.0lf\n", N, h_omega, h_benes);
   
    fprintf(fp1, "%lf	%lf\n", N, h_omega);
    fprintf(fp2, "%lf	%lf\n", N, h_benes);
 
  }

  fclose(fp1);
  fclose(fp2);
  return 0;
}

/*************************************************
結果

N=2 : OmegaHard=1, BenesHard=1
N=4 : OmegaHard=4, BenesHard=6
N=8 : OmegaHard=12, BenesHard=20
N=16 : OmegaHard=32, BenesHard=56
N=32 : OmegaHard=80, BenesHard=144
N=64 : OmegaHard=192, BenesHard=352
N=128 : OmegaHard=448, BenesHard=832
N=256 : OmegaHard=1024, BenesHard=1920
N=512 : OmegaHard=2304, BenesHard=4352
N=1024 : OmegaHard=5120, BenesHard=9728

*************************************************/



平成18年5月8日