Could I get the memory references from the TLB directly? I was looking thru 
the tlb.cc code, and it mentiones that a generic translation is not to be 
used in the FS mode. So where is the translation done?

----- Original Message ----- 
From: "Sujay Phadke" <[email protected]>
To: "M5 users mailing list" <[email protected]>
Sent: Tuesday, August 18, 2009 3:51 PM
Subject: Re: [m5-users] memory trace and thread ID


> Hi Ali,
>       I want to record all memory reads/writes from a particular
> application, running alongside others. I realized that even if I do get 
> the
> memory access info from physmem and check for user/kernel mode, it would 
> be
> missing accesses made to caches. (Is that right?). I hope its clear what I
> am trying to do.
>
>   Is there another way where I can tap in into the cores itself, and dump
> out any memory references made by a thread, on de-coding the relevant
> instructions?
>
> Thanks,
> Sujay
>
> ----- Original Message ----- 
> From: "Ali Saidi" <[email protected]>
> To: "M5 users mailing list" <[email protected]>
> Sent: Monday, August 17, 2009 9:57 PM
> Subject: Re: [m5-users] memory trace and thread ID
>
>
>> Well, it is probably the Threadinfo code mis-interpreting part of the
>> structure. I don't know exactly what you want, but it's important to
>> mention that the memory acccesses by the application are only a small
>> part of a networking workload, there are also all the accesses the
>> kernel does on behalf of the application.
>>
>> Ali
>>
>> On Aug 16, 2009, at 6:37 PM, Sujay Phadke wrote:
>>
>>> Ya I was surprised about the -ve start time too. Is is a bug? All of
>>> them
>>> appear that way. Thanks for clarifying about the processor mode. so
>>> wrt your
>>> last statement, I am confused. Will the check for user level mode
>>> help me
>>> with what I want? Do I want to dump all accesses between the start
>>> and end
>>> points of "m5-spec" thread, when the processor is in user level
>>> mode? Or is
>>> there a better way of doing this that you can think of?
>>>
>>> thanks,
>>> Sujay
>>>
>>>
>>> ----- Original Message -----
>>> From: "Ali Saidi" <[email protected]>
>>> To: "M5 users mailing list" <[email protected]>
>>> Sent: Sunday, August 16, 2009 7:26 PM
>>> Subject: Re: [m5-users] memory trace and thread ID
>>>
>>>
>>>> The time started and pid don't appear to be correct. I'm pretty sure
>>>> the  maximum size a pid can be is 16 bits and the started time should
>>>> be positive. At least you did get the thread names correctly out,
>>>> which might be al that matters. The threadInfo event is printing
>>>> every
>>>> time the kernel changes the user application stack, however that
>>>> doesn't mean that it's executing user level code. If you want a trace
>>>> of user level memory operations you'll need to check if the processor
>>>> is in user mode or kernel mode (there is a helper function in arch/
>>>> alpha to do that). There isn't really any way to know which thread
>>>> the
>>>> kernel is doing a task for (e.g. if it receives a packet while the
>>>> swapper is running, it's quite difficult to attribute that time to
>>>> the
>>>> application that was actually receiving that packet).
>>>>
>>>> Ali
>>>>
>>>>
>>>>
>>>> On Aug 16, 2009, at 6:08 PM, Sujay Phadke wrote:
>>>>
>>>>> Hi,
>>>>>        Thanks Ali. I am using a patched kernel now with the
>>>>> modifications
>>>>> you suggested. Running specweb in FS mode. What I want to do is
>>>>> differentiate memory access of the m5-spec thread from all others
>>>>> (like OS
>>>>> ones). I get the following output:
>>>>>
>>>>> ***
>>>>> 487306156500: threadinfo: Currently Executing Thread swapper, pid
>>>>> 3211264,
>>>>> started at: -4398043299840
>>>>> 487306156500: testsys.physmem: Read of size 4 on address 0x3111a8
>>>>> data
>>>>> 0x6bfa8001
>>>>> 487306157000: testsys.physmem: Read of size 4 on address 0x6b7c1c
>>>>> data
>>>>> 0x27ba001a
>>>>> 487306157500: testsys.physmem: Read of size 4 on address 0x6b7c20
>>>>> data
>>>>> 0xa0680060
>>>>> 487306157500: testsys.physmem: Read of size 4 on address 0x1f03c060
>>>>> data 0x0
>>>>> 487306158000: testsys.physmem: Read of size 4 on address 0x6b7c24
>>>>> data
>>>>> 0x23bd2124
>>>>> 487306158500: testsys.physmem: Read of size 4 on address 0x6b7c28
>>>>> data
>>>>> 0x47e00409
>>>>> 487306159000: testsys.physmem: Read of size 4 on address 0x6b7c2c
>>>>> data
>>>>> 0xa49da718
>>>>> 487306159000: testsys.physmem: Read of size 8 on address 0x854458
>>>>> data
>>>>> 0xfffffc000085e340
>>>>> ***
>>>>> ***
>>>>> 487306811000: threadinfo: Currently Executing Thread m5-spec, pid
>>>>> 3211290,
>>>>> started at: -4398043299840
>>>>> 487306811000: testsys.physmem: Read of size 4 on address 0x3111a8
>>>>> data
>>>>> 0x6bfa8001
>>>>> 487306811500: testsys.physmem: Read of size 4 on address 0x6b7c1c
>>>>> data
>>>>> 0x27ba001a
>>>>> 487306812000: testsys.physmem: Read of size 4 on address 0x6b7c20
>>>>> data
>>>>> 0xa0680060
>>>>> 487306812000: testsys.physmem: Read of size 4 on address 0x814060
>>>>> data 0x0
>>>>> 487306812500: testsys.physmem: Read of size 4 on address 0x6b7c24
>>>>> data
>>>>> 0x23bd2124
>>>>> 487306813000: testsys.physmem: Read of size 4 on address 0x6b7c28
>>>>> data
>>>>> 0x47e00409
>>>>> 487306813500: testsys.physmem: Read of size 4 on address 0x6b7c2c
>>>>> data
>>>>> 0xa49da718
>>>>> 487306813500: testsys.physmem: Read of size 8 on address 0x854458
>>>>> data
>>>>> 0xfffffc000085e340
>>>>> 487306814000: testsys.physmem: Read of size 4 on address 0x6b7c30
>>>>> data 0x486
>>>>>
>>>>> --------
>>>>>
>>>>> So, if the OS thread swapper began at tick "487306156500", and the
>>>>> m5-spec
>>>>> begins at "487306811000" does it mean than all the memory accesses
>>>>> between
>>>>> these time points are that of "swapper"?. And all accesses after
>>>>> 487306811000 are of m5-spec, till a new thread is executed?  Or am I
>>>>> wrong
>>>>> here? If this is right, all I will have to do is right a script
>>>>> which parses
>>>>> this output inline and picks accesses which start when "m5-spec" is
>>>>> started
>>>>> and end at the next thread execution.
>>>>>
>>>>> Thanks,
>>>>> Sujay
>>>>>
>>>>>
>>>>> ----- Original Message -----
>>>>> From: "Ali Saidi" <[email protected]>
>>>>> To: "M5 users mailing list" <[email protected]>
>>>>> Sent: Monday, August 10, 2009 5:20 PM
>>>>> Subject: Re: [m5-users] memory trace and thread ID
>>>>>
>>>>>
>>>>>>
>>>>>> The image doesn't have a kernel in it. You get that separately. Why
>>>>>> don't
>>>>>> you sprinkle some DPRINTFN() calls around the Threading stuff
>>>>>> (threadinfo.hh and the system.cc) and see where it's not working as
>>>>>> it
>>>>>> should? If it's from symbols not being found then no, otherwise the
>>>>>> problem
>>>>>> should be rather apparent.
>>>>>>
>>>>>> Ali
>>>>>>
>>>>>>
>>>>>> On Mon, 10 Aug 2009 17:15:02 -0400, "Sujay Phadke"
>>>>>> <[email protected]>
>>>>>> wrote:
>>>>>>> I am using the linux-latest image available from the M5 website.
>>>>>>> Does
>>>>>> that
>>>>>>> need to be patched?
>>>>>>>
>>>>>>> ----- Original Message -----
>>>>>>> From: "Ali Saidi" <[email protected]>
>>>>>>> To: "M5 users mailing list" <[email protected]>
>>>>>>> Sent: Monday, August 10, 2009 4:10 PM
>>>>>>> Subject: Re: [m5-users] memory trace and thread ID
>>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>>> The patches I'm referring to are in the linux-patches repository
>>>>>>>> http://repo.m5sim.org/linux-patches. Depending on where you got
>>>>>>>> your
>>>>>>>> kernel
>>>>>>>> from you might need to apply them.
>>>>>>>>
>>>>>>>> Ali
>>>>>>>>
>>>>>>>>
>>>>>>>> On Mon, 10 Aug 2009 15:50:38 -0400, "Sujay Phadke"
>>>>>>>> <[email protected]>
>>>>>>>> wrote:
>>>>>>>>> ----- Original Message -----
>>>>>>>>> From: "Sujay Phadke" <[email protected]>
>>>>>>>>> To: <[email protected]>
>>>>>>>>> Sent: Monday, August 10, 2009 3:28 PM
>>>>>>>>> Subject: Re: [m5-users] memory trace and thread ID
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>> I do have the traceflag on. But I dont have the patches
>>>>>>>>>> applied. On the
>>>>>>>> M5
>>>>>>>>>>
>>>>>>>>>> download page, the patches come under the section "Obsolete
>>>>>>>>>> Revisions"
>>>>>>>> and
>>>>>>>>>>
>>>>>>>>>> it says not required. I thought these were there in the m5-
>>>>>>>>>> stable. Do I
>>>>>>>>>> have to manually apply these?
>>>>>>>>>>
>>>>>>>>>> Thanks,
>>>>>>>>>> Sujay
>>>>>>>>>>
>>>>>>>>>> ----- Original Message -----
>>>>>>>>>> From: "Ali Saidi" <[email protected]>
>>>>>>>>>> To: "Sujay Phadke" <[email protected]>
>>>>>>>>>> Sent: Monday, August 10, 2009 2:04 PM
>>>>>>>>>> Subject: Re: [m5-users] memory trace and thread ID
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Are you running with the Thread traceflag on? You must be
>>>>>>>>>>> using a
>>>>>>>> kernel
>>>>>>>>>>> with the thread_info structure annotated correctly.
>>>>>>>>>>> Specifically,
>>>>>>>>>>> m5struct.diff from the linux-patches repository must have been
>>>>>>>>>>> applied.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Ali
>>>>>>>>>>>
>>>>>>>>>>> On Mon, 10 Aug 2009 13:40:05 -0400, "Sujay Phadke"
>>>>>>>>>>> <[email protected]>
>>>>>>>>>>> wrote:
>>>>>>>>>>>> Thanks. I tried doing this, but this is all I get running
>>>>>>>>>>>> specweb:
>>>>>>>>>>>>
>>>>>>>>>>>> 0: testsys.tsunami.io.rtc: Real-time clock set to Thu Jan  1
>>>>>> 00:00:00
>>>>>>>>>>> 2009
>>>>>>>>>>>> 0: drivesys.tsunami.io.rtc: Real-time clock set to Thu Jan  1
>>>>>>>>>>>> 00:00:00
>>>>>>>>>>> 2009
>>>>>>>>>>>> 4694261844000: drivesys.terminal: attach terminal 0
>>>>>>>>>>>>
>>>>>>>>>>>> nothing more in the file.
>>>>>>>>>>>>
>>>>>>>>>>>> Can any method in threadinfo.hh help?
>>>>>>>>>>>>
>>>>>>>>>>>> - Sujay
>>>>>>>>>>>>
>>>>>>>>>>>> ----- Original Message -----
>>>>>>>>>>>> From: "Ali Saidi" <[email protected]>
>>>>>>>>>>>> To: "M5 users mailing list" <[email protected]>
>>>>>>>>>>>> Sent: Monday, August 10, 2009 12:48 PM
>>>>>>>>>>>> Subject: Re: [m5-users] memory trace and thread ID
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Remove the false condition from src/arch/alpha/linux/
>>>>>>>>>>>>> system.cc:139
>>>>>>>> and
>>>>>>>>>>>>> Thread should work.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Ali
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Mon, 10 Aug 2009 12:10:58 -0400, "Sujay Phadke"
>>>>>>>>>>>>> <[email protected]>
>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>> Hello,
>>>>>>>>>>>>>>    I want to generate memory traces and associate them
>>>>>>>>>>>>>> with the
>>>>>>>>>>> thread
>>>>>>>>>>>>> ID
>>>>>>>>>>>>>>    or process ID. Is there a way to do this? I am running
>>>>>>>>>>>>>> m5 in
>>>>>>>>>>>>>>    FS
>>>>>>>>>>>>>>    mode
>>>>>>>>>>>>>>    and want to differentiate the memory accesses of a
>>>>>>>>>>>>>> particular
>>>>>>>>>>>>> process
>>>>>>>>>>>>>>    from those of others, including the OS. I looked into
>>>>>>>>>>>>>> the
>>>>>>>>>>>>>> "Thread"
>>>>>>>>>>>>> and
>>>>>>>>>>>>>>    "ExecThread" traceflags but they dont help.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Thanks,
>>>>>>>>>>>>>> Sujay
>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>> 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
>>>>
>>>
>>> _______________________________________________
>>> 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

Reply via email to