diff options
author | Salvatore Cro <salvatore.cro@st.com> | 2010-09-09 16:10:21 +0200 |
---|---|---|
committer | Carmelo Amoroso <carmelo.amoroso@st.com> | 2010-09-15 12:51:04 +0200 |
commit | a27dd6924e7964d92b49f4d5ebe2e68cfb2742dd (patch) | |
tree | 627befce36a43bffdb02bacca575a2c01256fd7a /libc/sysdeps | |
parent | 599c74a4d7e9bbe68b946d65aef2725821ea3fe9 (diff) |
sh: update the memcpy adding a new loop with aggressive prefetching
After exploring different prefetch distance-degree combinations
in this new update of the memcpy function, a new loop has been added
for moving many cache lines with an aggressive prefetching schema.
Prefetch has been removed when move few cache line aligned blocks.
As final result, this memcpy gives us the same performances for small
sizes (we already had!) and better numbers for big copies.
In case of SH4-300 CPU Series, benchmarks show a gain of ~20% for sizes
from 4KiB to 256KiB.
In case of the SH4-200, there is a gain of ~40% for sizes bigger than
32KiB.
Signed-off-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Diffstat (limited to 'libc/sysdeps')
0 files changed, 0 insertions, 0 deletions