Hi:
I am currently working the LogTM
transactional memory enviroment, and during simulation, I have the following
problem:
I have successfully built
ruby based on MESI_SMP_LogTM_directory protocol, fedora core 7, simics
3.0.30. and the simics target mache is serengeti(abisko-common), solaris
9. I compile splash2 benchmarks with solaris thread library, and
replace LOCK & UNLOCK with magic instruction
call BEGIN_TRANSACTION and COMMIT_TRANSACTION to trigger transaction
processing. I have seen that the transaction is successfully triggered and
underlying system enters transactional mode. but, from the debug
information, the transaction thread is always scheduled on one
same processor by the operating system. ( I have tried using target
machine with 8 or 16 processors, and have set benchmark's parameter of processor
counts). I am very troubled with this problem.
Can anybody give me some
help? Thanks very much.
|