#
2054f31a |
| 17-May-2023 |
Amit Prakash Shukla <amitprakashs@marvell.com> |
mem: add memseg info in telemetry
Changes adds telemetry support to display memory occupancy in memseg and the information of the elements allocated from a memseg based on arguments provided by user
mem: add memseg info in telemetry
Changes adds telemetry support to display memory occupancy in memseg and the information of the elements allocated from a memseg based on arguments provided by user. This patch adds following endpoints:
1. /eal/memseg_lists The command displays the memseg list from which the memory has been allocated. Example: --> /eal/memseg_lists { "/eal/memseg_lists": [ 0 ] }
2. /eal/memseg_list_info,<memseg-list-id> The command outputs the memsegs, from which the memory is allocated, for the memseg_list given as input. Example: --> /eal/memseg_list_info,0 { "/eal/memseg_list_info": [ 0, 1, 2, 3, 4, 5 ] }
3. /eal/memseg_info,<memseg-list-id>,<memseg-id> The command outputs the memseg information based on the memseg-list and the memseg-id given as input. Example: --> /eal/memseg_info,0,5 { "/eal/memseg_info": { "Memseg_list_index": 0, "Memseg_index": 5, "IOVA_addr": "0x1c0000000", "Start_addr": "0x1c0000000", "End_addr": "0x1e0000000", "Size": 536870912, "Hugepage_size": 536870912, "Socket_id": 0, "flags": 0 } }
--> /eal/memseg_info,0,1 { "/eal/memseg_info": { "Memseg_list_index": 0, "Memseg_index": 1, "IOVA_addr": "0x140000000", "Start_addr": "0x140000000", "End_addr": "0x160000000", "Size": 536870912, "Hugepage_size": 536870912, "Socket_id": 0, "flags": 0 } }
4. /eal/mem_element_list,<heap-id>,<memseg-list-id>,<memseg-id> The command outputs number of elements in a memseg based on the heap-id, memseg-list-id and memseg-id given as input. Example: --> /eal/mem_element_list,0,0,5 { "/eal/mem_element_list": { "Element_count": 2 } }
--> /eal/mem_element_list,0,0,1 { "/eal/mem_element_list": { "Element_count": 52 } }
5. /eal/mem_element_info,<heap-id>,<memseg-list-id>,<memseg-id>, \ <elem-start-id>,<elem-end-id> The command outputs element information like element start address, end address, to which memseg it belongs, element state, element size. User can give a range of elements to be printed. Example: --> /eal/mem_element_info,0,0,4,1,2 { "/eal/mem_element_info": { "element_1": { "msl_id": 0, "ms_id": 4, "memseg_start_addr": "0x1a0000000", "memseg_end_addr": "0x1c0000000", "element_start_addr": "0x1a01fe680", "element_end_addr": "0x1a0bfe700", "element_size": 10485888, "element_state": "Busy" }, "element_2": { "msl_id": 0, "ms_id": 4, "memseg_start_addr": "0x1a0000000", "memseg_end_addr": "0x1c0000000", "element_start_addr": "0x1a0bfe700", "element_end_addr": "0x1a15fe780", "element_size": 10485888, "element_state": "Busy" }, "Element_count": 2 } }
Signed-off-by: Amit Prakash Shukla <amitprakashs@marvell.com> Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
show more ...
|
#
e6732d0d |
| 08-Oct-2021 |
Harman Kalra <hkalra@marvell.com> |
mem: add telemetry infos
Registering new telemetry callbacks to list named (memzones) and unnamed (malloc) memory reserved and return information based on arguments provided by user.
Example: Conne
mem: add telemetry infos
Registering new telemetry callbacks to list named (memzones) and unnamed (malloc) memory reserved and return information based on arguments provided by user.
Example: Connecting to /var/run/dpdk/rte/dpdk_telemetry.v2 {"version": "DPDK 21.11.0-rc0", "pid": 59754, "max_output_len": 16384} Connected to application: "dpdk-testpmd" --> --> /eal/memzone_list {"/eal/memzone_list": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]} --> --> --> /eal/memzone_info,0 {"/eal/memzone_info": {"Zone": 0, "Name": "rte_eth_dev_data", \ "Length": 225408, "Address": "0x13ffc0280", "Socket": 0, "Flags": 0, \ "Hugepage_size": 536870912, "Hugepage_base": "0x120000000", \ "Hugepage_used": 1}} --> --> --> /eal/memzone_info,6 {"/eal/memzone_info": {"Zone": 6, "Name": "MP_mb_pool_0_0", \ "Length": 669918336, "Address": "0x15811db80", "Socket": 0, \ "Flags": 0, "Hugepage_size": 536870912, "Hugepage_base": "0x140000000", \ "Hugepage_used": 2}} --> --> --> /eal/memzone_info,14 {"/eal/memzone_info": null} --> --> --> /eal/heap_list {"/eal/heap_list": [0]} --> --> --> /eal/heap_info,0 {"/eal/heap_info": {"Head id": 0, "Name": "socket_0", \ "Heap_size": 1610612736, "Free_size": 927645952, \ "Alloc_size": 682966784, "Greatest_free_size": 529153152, \ "Alloc_count": 482, "Free_count": 2}}
Signed-off-by: Harman Kalra <hkalra@marvell.com> Acked-by: Ciara Power <ciara.power@intel.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com>
show more ...
|