mgill404@xxxxxxxx wrote:
I am currently running the STAMP 0.9.9 benchmarks on the newest
version of gems [2.1] and the newest version of simics [3.x]. The
benchmarks run fine unless there is a need for a transaction to retry,
in which event it halts with a "SIMICS SEG FAULT" message. My
benchmarks run to completion in the event that there just happens to
be no collision. I suspect it is a coincidence, but this problem has
so far always occurred on processor 0 [pset 1].
The setup I am using consists of running a benchmark up to immediately
before it would begin transactions, and saving the configuration
there. I then restart simics and load the configuration, and load
ruby at that point. Because STAMP requires a x^2 number of running
threads, and ruby requires x^2 processors, I have attempted to run the
majority of these tests with 1 thread per processor, thus resulting in
the last thread being unbound [due to inability to assign a processor
set to all processors]. I have also attempted to run such benchmarks
on a simulated machine using only half the processors available,
binding every running thread, and experienced the same problems.
Any advice to help me resolve this situation would be greatly
appreciated. This is becoming quite frustrating. Any ideas would be
welcome.
Can you generate more debugging output by setting XACT_DEBUG to true
and XACT_DEBUG_LEVEL to 2 or higher. I would be interested in looking at
the output just before the retry.
Also, I have already adjusted the offset in 'set transaction
registers' to point to [what I believe to be] the correct position to
handle a retry [+36]. As a side question, would having this offset
set incorrectly result in the error that I am seeing?
Possible, but incorrect offset mostly shows up as a segmentation fault
in the program being run on the simulated machine and not as a SIMICS
SEG FAULT.
Jayaram
|