This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
| Other format: | [Raw text] | |
Hi, The attached patch enables the first scheduling pass for SH4. The insn movement is throttled taking the register pressure heuristics into account. The earlier discussion on this topic is at http://gcc.gnu.org/ml/gcc/2003-04/threads.html#01445 The overall idea is to keep count of SImode and SFmode regs required by already scheduled insns. When these counts cross some threshold values; give higher priority to insns that free registers. The insn that frees registers is most likely to be the insn with lowest LUID (original insn order); but such an insn might be there in the stalled queue (Q) instead of the ready queue (R). To solve this, we skip cycles upto a max of 8 cycles so that such insns may move from Q -> R. The results seem good. We get significant performance gain on some benchmarks (GSM compression, JPEG compression). The performance data is attached. The figures are average execution timings (in seconds)for sample data, run several times. The % reduction in time is also indicated. ========================================================= Benchmark -fno-schedule-insns -fschedule-insns ========================================================= Gsm compression 31.83 26.16 (+17 %) Gsm decompression 17.72 16.94 (+4.4 %) cjpeg -dct int 2.30 2.34 (-1.7 %) cjpeg -dct float 2.12 2.19 (-3 %) djpeg -dct int 1.53 1.45 (+5 %) djpeg -dct float 1.69 1.42 (+15 %) gzip 225 222 (+1 %) gunzip 17.30 16.69 (+3.5 %) Mpg123 1.29 1.26 (+2%) --------------------------------------------------------- HINT (results in QUIPS) ----------------------- INT 5102029.742473 5349600.780303(+4.8 %) FLOAT 4769935.443263 5049562.236025(+5.8 %) DOUBLE 3296055.498210 3271869.361460(-0.7 %) =========================================================== The patch is regtested for SH. This is enabled for SH4 only at the moment. Comments and reactions awaited. Regards, --Sanjiv.
Attachment:
ChangeLog.ISP1
Description: Binary data
Attachment:
PATCH_20030902.txt
Description: Text document
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |