Jump to content

Memory footprint and unique names for sc_objectS


Recommended Posts

Hi all,


In the context of a very large hardware design simulated in SystemC, we faced some issues with the large footprint of our simulator. After deep and long memory profiling we identified a potential large memory optimization by removing the unique names of each sc_object.


To assess the footprint saving coming from this optimization, we tweaked the Accellera kernel implementation to remove unique name generation for objects having an automatically generated name (such as signals) and also we removed the check for name uniqueness. The results were good, in the sense that we were able to save around 17 percent of the total memory footprint for a simulation counting more 3.000.000 of sc_objects.


So my questions are the following ones.


  1. Why does the SystemC standard requires (page 124) that "Each sc_object shall have a unique hierarchical name reflecting its position in the object hierarchy" ? I guess this is only for debug purposes, right ?
  2. Would it be possible to have a runtime option allowing the Accellera kernel implementation to disable this "debugging" feature for in "production" simulators ?


Thank you for any answers and comments you may have on this topic,





PS: this work has been recently published at under the title "Speed And Accuracy Dilemma In NoC Simulation: What about Memory Impact?" and will be available soon.

Link to comment
Share on other sites

Hi manuelselva,


This is really helpful, as we are in the middle of re-working the central name server for the upcoming CCI standard, so thank you for your feedback. We will vestige some different options and see if we can’t make this better for large simulations.





Link to comment
Share on other sites

  • 2 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...