performance improvement: with no O3 optimization