Ceriumによる
正規表現マッチャの実装

Masataka Kohagura
17th September , 2013

研究目的

本研究室では、Cell用に作られたCeriumにて並列プログラミングを行なっている。様々な例題を実装することにより、どのような問題でも並列処理ができることを証明する。

現在は文字列サーチを実装している段階で、ボイヤームーア法を実装している。 セミグループという、分割したファイルに対して並列処理をさせるような手法によって、既存の文字列サーチと処理速度を比較し、どれだけ速く、どれだけ効率よくなるのかを測定する。

並列処理は逐次処理よりも処理時間を短縮できる可能性があるが、I/O命令がボトルネックになる。 このボトルネックを軽減させるにはどのような処理をさせればよいのか考察し、処理全体の効率化の改善を図る。

したこと

・三角波、矩形波の実装

波形

三角波

double tri(double t){ 

    double decimal_part = t - abs(t);

    if(abs(t) % 2 != 0){ 
        return decimal_part < 0.5 ? decimal_part : 1 - decimal_part;
    }else{ 
        return decimal_part < 0.5 ? -decimal_part : 1 - decimal_part;
    }   
}
      

矩形波

double square(double t){ 
    double decimal_part = t - abs(t);
    return decimal_part < 0.5 ? 1 : -1; 
}