Hi,
> I ran ATMTP with no problems on microbenchmarks provided from GEMS.
> $GEMS/microbenchmarks/atmtp_examples
The microbenchmarks work correctly.
> Did your compiled benchmark have TLB warm up or TLB miss handling?
I don't think so.
But for this to matter, the failing instruction has to be on a different
page, than the chkpt-instruction, which is unlikely, as they are only a
few bytes apart. Also, I see no "Address not in TLB"-Errors (I saw them,
but not in these circumstances.)
> Did you check your compiled benchmark (332_ammp)
> did not call malloc/new from a transaction?
As I said, the abort happens in the context of begin_transaction:
134f4: 30 50 00 04 chkpt
134f8: 01 00 00 00 nop
134fc: 10 80 00 03 b 13508 <begin_transaction+0x20>
13500: 90 10 20 01 mov 1, %o0
13504: 90 10 00 00 mov %g0, %o0
13508: a0 10 00 08 mov %o0, %l0
The simulation hangs on the instruction 0x13508.
| 6826445428 0 [0,0] TID -1 XACT ABORT 0 caused by 0 [ 0, 0 ] xid: 0
| address: [0x0, line 0x0] delay: 6826445428 PC [0x0, line 0x0] *PC
| 0x0 'illtrap 0'
Or does this point to a TLB-Miss?
I am concerned about two points:
- in the above error-message, there are only zeros.
- after this message, the simulation hangs. ^C^C cancels the simulation,
but not in a recoverable way
> As you know well, syscall is not allowed from GEMS TM (inc. ATMTP).
> Most of the failures I had belong to above two problems.
I'm quite sure, this is not the issue in this case.
Thank you for you're insights!
Regards,
--
Philipp Tölke
Attachment:
signature.asc
Description: Digital signature
|