俺は適当にデータを分割して並列処理しているけど、重い処理なら軽く作り直せ。
まさかデバッグ版が重いという落ちではないだろうな?
デバッグ版だとスタックチェック等でとんでもなく重くなるので本来のパフォーマンスはわからない。
あと、たいていはメモリの読み書きでもっとも時間を消費するので、少なくなるようコードを改良汁。

マルチスレッド化は、自分で別スレッドを作っておいてデータ処理の段階で、自スレッドと別スレッドで同時に処理を分散し
待機関数で別スレッドがすべて処理が終わるのを待って、処理を完了するってかんじ。シグナルはイベントを使うのが良い。