Hi All,
I am stuck in a strange issue. I have defaultHeapInstance in each core and it is located in L2SRAM.
my objective is to get the Stats of it from ONE CoreX from CoreY?
say in c6678, i have 8 cores and i want to get the Stats of defaultHeapInstance [L2SRAM] in each of the core from core0.
Memory_getStats(IHeap_Handle heap, Memory_Stats *stats)
==============writing a pseudo/rough code===========This is being called from core0
Memory_Stats mystats;
for(coreId=0;coreId<8;coreId++)
{
globaladdress = Local2Global(defaultHeapInstance,coreId) ;
Memory_getStats( (IHeap_Handle)globaladdress,&mystats);
}
The above code i am calling from Core0 and what i see for core0,it goes through fine, but for other cores, it gets stuck. In other words, let me put it in points
1. the above FOR loop works fine for coreid 0 , since the above FOR loop is run in core0. [so core0 is trying to get stats of heapinstance which is located in ITS L2SRAM]
2. the above loop [core0] tries to calculate/compute the stats on defaultHeapInstance of core1, this fails
Since this is XDC call, i expect that kind of cross-core [fetching heap stats of coreX's default heap on coreY is valid], let me know if this is invalid and if so what is workaround to get the heap stats
/*
* ======== Memory_getStats ========
*/
Void Memory_getStats(IHeap_Handle heap, Memory_Stats *stats)
{
Memory_HeapProxy_getStats(heap ? heap : Memory_defaultHeapInstance, stats);
}
Thanks
RC Reddy