3 ms·
I reliably see gains from unrolling relatively simple loops on very recent cpus. Going to 8+ iterations is usually overkill, but it can help. Sometimes one can
by physguy1123 9y ago
I reliably see gains from unrolling relatively simple loops on very recent cpus. Going to 8+ iterations is usually overkill, but it can help. Sometimes one can split a dependency chain by unrolling as well.
- vardump 9y ago> I reliably see gains from unrolling relatively simple loops on very recent cpus. Maybe you didn't have multiple of 4 uops in the loop? Or hit some other (?) loop buffer limitation. Dependency chain splitting is also indeed a good reason to "unroll". Although it's a bit more complex transformation than simple unrolling.