Re: [m5-dev] cpu vs thread vs contexts

2008-10-24 Thread Lisa Hsu
yes, that's what i mean. believe it or not, right now if you run se.py -n4, all four cpus get cpuId = 0 (regardless of which cpu type you use). talk about broken. and from now on, getCpuId() should pretty much only be used for things like stats, or as a secondary identifier, the primary thing

Re: [m5-dev] cpu vs thread vs contexts

2008-10-24 Thread gblack
I mostly agree with this, except that it might be tricky to use the context ID t index into a vector of thread contexts when the numbering doesn't start over for each CPU. Other than that it looks like we're strictly getting closer to the right answer at least. Gabe Quoting Lisa Hsu [EMAIL

Re: [m5-dev] cpu vs thread vs contexts

2008-10-24 Thread Steve Reinhardt
I'd add that even for stats the cpu ID shouldn't be used much... the stats that are associated with the cpu object will automatically be associated with the correct cpu, and for just about everything outside the cpu object that cares about tracking where something came from (e.g., caches) we

Re: [m5-dev] cpu vs thread vs contexts

2008-10-24 Thread nathan binkert
I'd say that a globally unique contextID is critical. A threadID that is per core can of course be created if necessary, but I bet that in most instances, we can just pass pointers around. Nate I mostly agree with this, except that it might be tricky to use the context ID t index into a

Re: [m5-dev] cpu vs thread vs contexts

2008-10-24 Thread nathan binkert
The OS interface to that doesn't work that way. Linux for example treats all threads and cores and such as different CPUs, it just knows that certain CPUs share certain resources. i.e. it uses one global id and just has extra knowledge about how things interact in the scheduler. So, each global

Re: [m5-dev] cpu vs thread vs contexts

2008-10-24 Thread Lisa Hsu
where does this reporting to linux happen? On Fri, Oct 24, 2008 at 5:53 PM, nathan binkert [EMAIL PROTECTED] wrote: The OS interface to that doesn't work that way. Linux for example treats all threads and cores and such as different CPUs, it just knows that certain CPUs share certain

Re: [m5-dev] cpu vs thread vs contexts

2008-10-24 Thread nathan binkert
The BIOS identifies all of the CPUs to the OS, but the arrangement is deduced by the OS I believe. Nate 2008/10/24 Lisa Hsu [EMAIL PROTECTED]: where does this reporting to linux happen? On Fri, Oct 24, 2008 at 5:53 PM, nathan binkert [EMAIL PROTECTED] wrote: The OS interface to that

Re: [m5-dev] cpu vs thread vs contexts

2008-10-24 Thread Ali Saidi
cpuId/contextId Some other comments to throw in the mix: How does this affect switch-over and sampling? Does each unique cpu in the system have a different id? (e.g. If you start with two timing cpus (0,1) and then switch to two details cpus (2,3) would you have statistics for cpus

Re: [m5-dev] cpu vs thread vs contexts

2008-10-24 Thread Korey Sewell
I understand thats how Linux currently works, but for the benefit of future research purposes it does matter to have a thread ID per CPU as well. An example would be if you have 2 shared threads, it's probably better in most cases for them to be scheduled on the same SMT CPU then different CPUs

Re: [m5-dev] cpu vs thread vs contexts

2008-10-24 Thread Lisa Hsu
I've looked into how sampling/switchover currently works. basically you have timing cpus[0,1] and during the handoff, the new cpus's ID values get set to timing cpus[0,1], such the new and old cpus and contexts match. there are a few asserts to make sure this is so. I don't think this will

Re: [m5-dev] cpu vs thread vs contexts

2008-10-24 Thread Korey Sewell
i think the convention is any acronym should be all caps, but I'm not sure. 2008/10/24 Lisa Hsu [EMAIL PROTECTED]: what do we all like better, cpuID/contextID, or cpuId/contextId? lisa On Fri, Oct 24, 2008 at 6:07 PM, nathan binkert [EMAIL PROTECTED] wrote: The BIOS identifies all of the

[m5-dev] ARM extras

2008-10-24 Thread nathan binkert
Hi Stephen, We've made a bunch of changes to m5-dev and now arm_extras doesn't compile. I have several fixes that will make it work with m5-dev again. Is there a repository where they should go? Should we revisit adding arm to m5 proper? Nate ___

[m5-dev] [PATCH 1 of 2] output: Change default output directory and files

2008-10-24 Thread Nathan Binkert
# HG changeset patch # User Nathan Binkert [EMAIL PROTECTED] # Date 1224856285 25200 # Node ID b9ee37f0220800243dcff7076f808891d251b623 # Parent 98224505352a1935c321a702863140ffe0ff6848 output: Change default output directory and files diff --git a/src/python/m5/main.py b/src/python/m5/main.py

[m5-dev] [PATCH 0 of 2] Diffs to change default names

2008-10-24 Thread Nathan Binkert
Ok, I've brought this up a couple of times before, but now it's really coming The two diffs change some of the default names. The new default output directory will be 'm5out' instead of '.' The new stats output will be 'stats.txt' instead of 'm5stats.txt' The new config output will be 'config'

[m5-dev] [PATCH] SCons: Allow top level directory of EXTRAS able to contain SConscripts

2008-10-24 Thread Nathan Binkert
# HG changeset patch # User Nathan Binkert [EMAIL PROTECTED] # Date 1224856286 25200 # Node ID e09c768051f61628082682cc68390a297cc579c9 # Parent aba4b2c01db12abcc9c701b8fc896f82a3852c0a SCons: Allow top level directory of EXTRAS able to contain SConscripts. The current EXTRAS will fail if the top