Nate,
Could you give me a simple example of wrapping code in a SimObject.
(or where I could find it)
Then I could take it from there. Sorry but I dont have much experience
writing C++ codeand the python-C link is confusing.
- Sujay
----- Original Message -----
From: "nathan binkert" <[EMAIL PROTECTED]>
To: "M5 users mailing list" <[email protected]>
Sent: Saturday, June 28, 2008 10:48 PM
Subject: Re: [m5-users] get python values into c files
> The problem is that in m5, there are no global objects (or at least
> very, very few). Can you try to wrap the wattch code in a SimObject?
> It shouldn't be too difficult, just a bunch of busy work. It sounds
> like Rick is interested in this too, so you two should coordinate your
> efforts.
>
> Nate
>
> On Sat, Jun 28, 2008 at 5:11 PM, Sujay Phadke <[EMAIL PROTECTED]>
> wrote:
>> Hi Steve,
>> I want to use the getNumCPUs() method in simulate.cc. I tried doing
>> this:
>>
>> add to simulate.cc:
>>
>> #include "system.hh"
>> ...
>>
>> within the simulate() function:
>>
>> n=system->getNumCPUs();
>>
>> but this does not work since the "system" object has not been defined
>> here.
>> How do I acess the global system object. In other files where they use
>> getNumCPUs, the system object has been derived from a
>>
>> Params *p
>>
>> argument passed to that function.
>>
>> But the simulate() gets no such argument.
>>
>> - Sujay
>>
>>
>> ----- Original Message -----
>> From: "Steve Reinhardt" <[EMAIL PROTECTED]>
>> To: "M5 users mailing list" <[email protected]>
>> Sent: Sunday, June 22, 2008 7:36 PM
>> Subject: Re: [m5-users] get python values into c files
>>
>>
>>> The real question is: what do you want to access and why?
>>>
>>> The SimObject parameters that you specify in python are handed off to
>>> the corresponding objects in C++, so they are already there. For
>>> example, the C++ L2 cache object knows its size. Some of the things
>>> that aren't specifically passed as SimObject parameters are known in
>>> C++ as well. For example, the System object knows how may CPUs are in
>>> the system it represents, and you can access that through the
>>> getNumCPUs() method.
>>>
>>> That said, the first thing you want to be sure of is that you really
>>> need to access the variable from C++; it may be that it's easier to do
>>> what you want to do in python anyway. If you can be more specific
>>> about your end goal then we can probably provide better advice.
>>>
>>> Steve
>>>
>>> On Sun, Jun 22, 2008 at 4:25 PM, Gabe Black <[EMAIL PROTECTED]>
>>> wrote:
>>>> You could also create a new SimObject which has all the information you
>>>> want stored in it. SimObjects are how components of a simulation, both
>>>> concrete and abstract, are represented in python and at a higher level
>>>> in C++. The C++ representation of a SimObject is populated using the
>>>> values in the python representation, so you can store the values you're
>>>> interested in in the python SimObject before starting up the
>>>> simulation.
>>>> Then have your C++ code refer to it's copy to get the values back out.
>>>> There are lots of examples of SimObjects in M5 which should get you
>>>> started. If you look around the source tree, the files which define the
>>>> python version of SimObjects are .py files mixed in with the .ccs and
>>>> .hhs. Unfortunately I don't think there's any documentation
>>>> specifically
>>>> about how to make you're own SimObjects (someone please correct me if
>>>> I'm wrong), but it's more straightforward than it used to be so you
>>>> hopefully won't have too much trouble. To see what basic types of
>>>> parameters there are you should look in src/python/m5/params.py.
>>>>
>>>> Gabe
>>>>
>>>> Sujay Phadke wrote:
>>>>> Sure, but I was wondering is there an easier way to connect between
>>>>> the dynamic python parameters and the c++ code?
>>>>>
>>>>> ----- Original Message -----
>>>>> *From:* Ravi Prakash M <mailto:[EMAIL PROTECTED]>
>>>>> *To:* M5 users mailing list <mailto:[email protected]>
>>>>> *Sent:* Sunday, June 22, 2008 6:11 PM
>>>>> *Subject:* Re: [m5-users] get python values into c files
>>>>>
>>>>> Hi Sujay,
>>>>>
>>>>> U can use file I/O operation , put the comments next to numcpus
>>>>> definition and also add some keyword , and then search for that
>>>>> keyword read the lines using readline() and extract the
>>>>> information
>>>>> ,
>>>>> u need .
>>>>>
>>>>> Regards,
>>>>> Ravi
>>>>>
>>>>> On Sun, Jun 22, 2008 at 4:45 PM, Sujay Phadke
>>>>> <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> wrote:
>>>>>
>>>>> Hello,
>>>>> I am trying to get the dynamic values of the system
>>>>> configuration and use it in a custom .cc file in M5. For
>>>>> example, I would like to get the numcpus, or L2 size, etc.
>>>>> which is either in the .py files or specified in the config
>>>>> files. How do I get these values and use it in my files?
>>>>>
>>>>> Thanks,
>>>>> Sujay
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> m5-users mailing list
>>>>> [email protected] <mailto:[email protected]>
>>>>> http://m5sim.org/cgi-bin/mailman/listinfo/m5-users
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Regards,
>>>>> Ravi Prakash M
>>>>>
>>>>>
>>>>> ------------------------------------------------------------------------
>>>>> _______________________________________________
>>>>> m5-users mailing list
>>>>> [email protected]
>>>>> http://m5sim.org/cgi-bin/mailman/listinfo/m5-users
>>>>>
>>>>> ------------------------------------------------------------------------
>>>>>
>>>>> _______________________________________________
>>>>> m5-users mailing list
>>>>> [email protected]
>>>>> http://m5sim.org/cgi-bin/mailman/listinfo/m5-users
>>>>
>>>> _______________________________________________
>>>> m5-users mailing list
>>>> [email protected]
>>>> http://m5sim.org/cgi-bin/mailman/listinfo/m5-users
>>>>
>>> _______________________________________________
>>> m5-users mailing list
>>> [email protected]
>>> http://m5sim.org/cgi-bin/mailman/listinfo/m5-users
>>>
>>
>> _______________________________________________
>> m5-users mailing list
>> [email protected]
>> http://m5sim.org/cgi-bin/mailman/listinfo/m5-users
>>
>>
> _______________________________________________
> m5-users mailing list
> [email protected]
> http://m5sim.org/cgi-bin/mailman/listinfo/m5-users
>
_______________________________________________
m5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/m5-users