On Oct 29, 2007, at 8:04 PM, Rick Strong wrote:

This sounds like what I want to do. I am trying to get two threads from two separate checkpoints to run in a SMT core under ALPHA_SE. I can get both threads to run in separate cores, I am just trying to figure out a good way to get them to move to a single smt o3 core.

It can be done, but I don't know how off the top of my head. Maybe Kevin or Korey can comment on this since they wrote SMT support.

When you say that I need to add page table support for different thread ids/address space identifiers, I was under the impression that the SMT o3 already has a way of distinguishing between thread ids in SMT execution. Is this not the case?
Yes it has a thread id, but that isn't the problem I'm referring to. In the case that you're taking two workloads from separate checkpoints they will almost certainly have the same virtual addresses mapped to some physical memory (their text and data sections, stack, heap, etc). Right now the syscall emulation page table doesn't distinguish one thread id from another as far as mapping virtual->physical addresses goes.

Ali


Ali Saidi wrote:
You should be able to switch from two simple cpus into an smt o3 core, although I don't think it's been done for a little while. That isn't scheduling per-say, so I'm not 100% sure I've answered your question.

I still think the general problem is that if you have to some how restore individual checkpoints which each have the same memory layout. The easiest way I can see to get around this is to start the physical memory allocation for each benchmark at a different place (although you might have to have the same benchmark at a variety of places so you could make any collection you wanted). The next think you would need is some way to make the page table support different thread ids/address space identifiers/etc.


Ali


On Oct 29, 2007, at 1:13 PM, Rick Strong wrote:

Hi,

Is there any good method of scheduling a thread between CPUs? I am trying open two threads from a checkpoint and put them into a SMT processor. What would be the best way to proceed. I could imagine scheduling them from a single core to a SMT core, or just finding a way to schedule them together at the beginning. Any ideas?

-Richard

_______________________________________________
m5-users mailing list
m5-users@m5sim.org
http://m5sim.org/cgi-bin/mailman/listinfo/m5-users





_______________________________________________
m5-users mailing list
m5-users@m5sim.org
http://m5sim.org/cgi-bin/mailman/listinfo/m5-users

Reply via email to