Hello Srikant,
I tried to print the net_msg_ptr value the same way as you mentioned in the 
mail after allocation the virtual channel, But when I observed the net_msg_ptr 
value, that is still repeating. I assumed this phenomenon is happening because 
the gem5 process is using the same pointer address of the message but I 
observed the content of the message and in that case, the content also used to 
be the same. So there is a huge probability that the same message is floating 
multiple times. But that is happening after virtual channel allocation, it is 
not understandable.

Thank you
Navneet Kumar
________________________________
From: Bharadwaj, Srikant <srikant.bharad...@amd.com>
Sent: 10 May 2021 11:23
To: NAVNEET KUMAR <k.navn...@iitg.ac.in>; gem5 users mailing list 
<gem5-users@gem5.org>
Cc: Krishna, Tushar <tus...@ece.gatech.edu>
Subject: RE: [gem5-users] Re: Duplicate net_msg_ptr values


[AMD Public Use]


Hi Navneet,
In your code, you are checking for the network message pointer before a buffer 
is allocated for the message.
In case a buffer is not available in a given cycle, the network interface will 
try it again in the next cycle. That’s probably the reason you are seeing the 
same message pointer address being printed.

You can try putting your code after allocation of buffer (After the line 
checking for vc==-1).



Also note that you are checking the pointer address of the message. The gem5 
process can theoretically reuse the address because messages are freed up on 
receive at the destination cache controller.



Srikant



From: NAVNEET KUMAR <k.navn...@iitg.ac.in>
Sent: Monday, May 10, 2021 2:35 AM
To: Bharadwaj, Srikant <srikant.bharad...@amd.com>; gem5 users mailing list 
<gem5-users@gem5.org>
Cc: Krishna, Tushar <tus...@ece.gatech.edu>
Subject: Re: [gem5-users] Re: Duplicate net_msg_ptr values



[AMD Public Use]



[CAUTION: External Email]

Please find the attached screenshot which is showing the concern code snippet 
of networkinterface.cc file. I programmed the value of net_msg_ptr to get on 
the console. But I was expecting that value of net_msg_ptr should be unique for 
different packets but for many times it has been repeated. The reason behind 
this phenomenon is still not clear to me. I am seeking some ideas on behalf of 
this phenomenon that why is this happening? I am using the MESI_CMP_directory 
protocol to handle cache coherence.



Thank you

Navneet Kumar

________________________________

From: Bharadwaj, Srikant 
<srikant.bharad...@amd.com<mailto:srikant.bharad...@amd.com>>
Sent: 09 May 2021 19:51
To: NAVNEET KUMAR <k.navn...@iitg.ac.in<mailto:k.navn...@iitg.ac.in>>; gem5 
users mailing list <gem5-users@gem5.org<mailto:gem5-users@gem5.org>>
Cc: Krishna, Tushar <tus...@ece.gatech.edu<mailto:tus...@ece.gatech.edu>>
Subject: Re: [gem5-users] Re: Duplicate net_msg_ptr values



[AMD Public Use]



Hi Navneet,

Can you post a snippet of the code?

It will help us understand the problem.



Thanks,

Srikant

________________________________

From: NAVNEET KUMAR <k.navn...@iitg.ac.in<mailto:k.navn...@iitg.ac.in>>
Sent: Sunday, May 9, 2021 5:24:09 AM
To: Bharadwaj, Srikant 
<srikant.bharad...@amd.com<mailto:srikant.bharad...@amd.com>>; gem5 users 
mailing list <gem5-users@gem5.org<mailto:gem5-users@gem5.org>>
Cc: Krishna, Tushar <tus...@ece.gatech.edu<mailto:tus...@ece.gatech.edu>>
Subject: Re: [gem5-users] Re: Duplicate net_msg_ptr values



[CAUTION: External Email]

Hello Srikant,

Actually, I am taking the values of net_msg_ptr in flitiSize( ) function right 
at the beginning therefore for one packet that function would be called only 
once. Moreover, if an L1 miss happens then only the packet comes to the network 
and split into flits. So the possibility of getting packet at network interface 
due to L1 hit vanishes, doesn't it? And I am avoiding the scenario that can 
lead to repetition of net_msg_ptr due to multiple flits of the same packet. I 
still don't understand that why do the values of net_msg_ptr repeat?

......

Thank you

________________________________

From: Bharadwaj, Srikant 
<srikant.bharad...@amd.com<mailto:srikant.bharad...@amd.com>>
Sent: 01 May 2021 12:54
To: gem5 users mailing list <gem5-users@gem5.org<mailto:gem5-users@gem5.org>>
Cc: NAVNEET KUMAR <k.navn...@iitg.ac.in<mailto:k.navn...@iitg.ac.in>>; Krishna, 
Tushar <tus...@ece.gatech.edu<mailto:tus...@ece.gatech.edu>>
Subject: RE: [gem5-users] Re: Duplicate net_msg_ptr values



Hi Navneet,

In addition to the possibility of a broadcast, you should note that a message 
may also be reused by cache controllers in certain protocols. It would mean 
that the same message will be seen by a L1 network interface and then by L2 
network interface later if it misses on both.

Also, multiple flits from the same packet will have same message pointer so 
make sure you are not checking it for each flit of the same packet.



Thanks,

Srikant



From: Krishna, Tushar via gem5-users 
<gem5-users@gem5.org<mailto:gem5-users@gem5.org>>
Sent: Wednesday, April 28, 2021 3:14 PM
To: gem5 users mailing list <gem5-users@gem5.org<mailto:gem5-users@gem5.org>>
Cc: NAVNEET KUMAR <k.navn...@iitg.ac.in<mailto:k.navn...@iitg.ac.in>>; Krishna, 
Tushar <tus...@ece.gatech.edu<mailto:tus...@ece.gatech.edu>>
Subject: [gem5-users] Re: Duplicate net_msg_ptr values



[CAUTION: External Email]

There might be a broadcast happening which NetworkInterface.cc breaks into 
several unicasts. Depends on the protocol you are running.



Best,

Tushar

On Apr 28, 2021, 2:23 PM -0400, NAVNEET KUMAR via gem5-users 
<gem5-users@gem5.org<mailto:gem5-users@gem5.org>>, wrote:

Hello,  gem5 community,

 In file gem5/src/mem/ruby/network/garnet2.0/networkinterface.cc, in function 
flitisizeMessage() I printed the net_msg_ptr which is a pointer to the message 
class. But many times the value of net_msg_ptr repeated.  I did not expect 
that, I was assuming that for every network packet, the net_msg_ptr value is 
unique. Can you please give me some brief idea, why is that happening?

....

Thank you,
NAVNEET


_______________________________________________
gem5-users mailing list -- gem5-users@gem5.org
To unsubscribe send an email to gem5-users-le...@gem5.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s

Reply via email to