まず、こういう処理を止めるべきだよな。
まぁそんなに書き込みが無いような場合はdatのサイズもそれほど大きくならないからこれでも良いかもしれないが。

・こういう処理
open(RDAT,"<$dattemp");
@logdat=<RDAT>;#ログを配列に読み込む
close(RDAT);