Re: [hatari-devel] Re: Profiler - long history |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/hatari-devel Archives
]
Hi,
On perjantai 22 toukokuu 2015, Eero Tamminen wrote:
> > One thing to note about 68030 data cache is that if a long word (32
> > bits) must be read, it might be stored in 2 cache's entries, depending
> > if the address was aligned on 2 or 4 bytes, requiring 2 read in the
> > cache.
> >
> > So, a read for 32 bits could yield :
> > - 1 hit
> > - or 1 misses
> > - or 1 hit and 1 miss
> > - or 2 hits
> > - or 2 misses
>
> I'm seeing more instruction cache misses per instruction,
> upto 6 misses per instruction, just from TOS4 desktop boot,
> and going over desktop menus.
>
> WARNING: 6 CPU instruction cache misses > 5 at 0xe00c9a:
> $00e1c3b8 : 4e73 rte
> 0.00% (7, 248, 17, 0)
> $00e00c9a : 3f00 move.w d0,-(sp)
> 0.00% (1, 8, 0, 0)
>
> WARNING: 6 CPU instruction cache misses > 5 at 0xe03288:
> $00e1c236 : 4eb9 00e0 946a jsr $e0946a
> 0.30% (294183, 9415132, 1176836, 0)
> $00e03288 : 48e7 f0f0 movem.l
> d0-d3/a0-a3,-(sp) 0.00% (401, 14708, 324, 0)
>
> Interestingly, above happens only without MMU. With MMU, maximum
> number of i-cache misses per instruction is 4 for same use-case.
With EmuTOS + MMU, this case is also up to 6 misses,
and it happens always in the same place:
WARNING: 6 CPU instruction cache misses > 5 at 0xe00596:
$00e3f9ba : 33ef 0004 0000 efc0 move.w 4(sp),$efc0
$00e00596 : 52b9 0000 04ba addq.l #1,$4ba
Without MMU, EmuTOS 6x i-cache misses happen in different places:
WARNING: 6 CPU instruction cache misses > 5 at 0xe00596:
$00e0021e : 4e73 rte
$00e00596 : 52b9 0000 04ba addq.l #1,$4ba
WARNING: 6 CPU instruction cache misses > 5 at 0xe00596:
$00e38cec : 4e75 rts
$00e00596 : 52b9 0000 04ba addq.l #1,$4ba
WARNING: 6 CPU instruction cache misses > 5 at 0xe00596:
$00e015ca : 671e beq.s $e015ea
$00e00596 : 52b9 0000 04ba addq.l #1,$4ba
WARNING: 6 CPU instruction cache misses > 5 at 0xe00596:
$00e32b98 : 4e90 jsr (a0)
$00e00596 : 52b9 0000 04ba addq.l #1,$4ba
WARNING: 6 CPU instruction cache misses > 5 at 0xe00596:
$00e32b54 : 6330 bls.s $e32b86
$00e00596 : 52b9 0000 04ba addq.l #1,$4ba
WARNING: 6 CPU instruction cache misses > 5 at 0xe00596:
$00e0152a : 4efb 1002 jmp $e0152e(pc,d1.w)
$00e00596 : 52b9 0000 04ba addq.l #1,$4ba
> (Previous Hatari WinUAE core had only up to 3 i-cache misses per
> instruction.)
- Eero