Cerium Task Manager
による正規表現の実装
Masataka Kohagura
14th January , 2014
Masataka Kohagura
14th January , 2014
当研究室では、CellやマルチコアCPUで並列プログラミングを可能にするCerium Task Managerを開発している。
マルチコア CPU を最大限に活かすためには、プログラムの並列度を向上させなければならないが、実装が難しい。 当研究室では Cerium Libraryを提供することによって並列プログラミングを容易にしているが、ファイル読み込み等のI/O部分に関してはまだAPIが実装されていない。
本研究ではその例題として正規表現を実装し、I/Oの順次読み込みとTaskの並列化の設計・実装によって既存の正規表現の処理速度、処理効率を上げる。
% make clean;make rm -f word_count main.o task_init.o ppe/Exec.o ppe/Exec_Data_Parallel.o ppe/Print.o rm -f *~ \#* ・・・ Make for Mac OS X clang++ -m64 -o word_count main.o task_init.o ppe/Exec.o ppe/Exec_Data_Parallel.o ppe/Print.o -L../../../Cerium/TaskManager -lFifoManager `sdl-config --libs` Undefined symbols for architecture x86_64: "create_impl(int, int, int)", referenced from: TaskManager::init(int, int, int) in libFifoManager.a(TaskManager.o) ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) make[1]: *** [word_count] Error 1 make: *** [macosx] Error 2