From 7e79ec39be4e81f86d1ce804816a6ba497428943 Mon Sep 17 00:00:00 2001 From: lucicop Date: Thu, 28 Oct 2021 16:52:43 +0300 Subject: [PATCH] Decrease size for interaction model object pools (use 1/2 the current value) (#11044) * Optimize memory for interaction model object pools * Update some pool values per specs minima --- .../qpg/project_include/CHIPProjectConfig.h | 74 +++++++++++++++++++ 1 file changed, 74 insertions(+) diff --git a/examples/platform/qpg/project_include/CHIPProjectConfig.h b/examples/platform/qpg/project_include/CHIPProjectConfig.h index 0979059af69f48..8b269c419e7eaa 100644 --- a/examples/platform/qpg/project_include/CHIPProjectConfig.h +++ b/examples/platform/qpg/project_include/CHIPProjectConfig.h @@ -148,3 +148,77 @@ * their access control lists. */ #define CHIP_CONFIG_MAX_DEVICE_ADMINS 4 // 3 fabrics + 1 for rotation slack + +/** + * @name Interaction Model object pool configuration. + * + * @brief + * The following definitions sets the maximum number of corresponding interaction model object pool size. + * + * * #CHIP_IM_MAX_NUM_COMMAND_HANDLER + * * #CHIP_IM_MAX_NUM_COMMAND_SENDER + * * #CHIP_IM_MAX_NUM_READ_HANDLER + * * #CHIP_IM_MAX_NUM_READ_CLIENT + * * #CHIP_IM_MAX_REPORTS_IN_FLIGHT + * * #CHIP_IM_SERVER_MAX_NUM_PATH_GROUPS + * * #CHIP_IM_MAX_NUM_WRITE_HANDLER + * * #CHIP_IM_MAX_NUM_WRITE_CLIENT + * + * @{ + */ + +/** + * @def CHIP_IM_MAX_NUM_COMMAND_HANDLER + * + * @brief Defines the maximum number of CommandHandler, limits the number of active commands transactions on server. + */ +#define CHIP_IM_MAX_NUM_COMMAND_HANDLER 2 + +/** + * @def CHIP_IM_MAX_NUM_COMMAND_SENDER + * + * @brief Defines the maximum number of CommandSender, limits the number of active command transactions on client. + */ +#define CHIP_IM_MAX_NUM_COMMAND_SENDER 2 + +/** + * @def CHIP_IM_MAX_NUM_READ_HANDLER + * + * @brief Defines the maximum number of ReadHandler, limits the number of active read transactions on server. + */ +#define CHIP_IM_MAX_NUM_READ_HANDLER 3 + +/** + * @def CHIP_IM_MAX_NUM_READ_CLIENT + * + * @brief Defines the maximum number of ReadClient, limits the number of active read transactions on client. + */ +#define CHIP_IM_MAX_NUM_READ_CLIENT 2 + +/** + * @def CHIP_IM_MAX_REPORTS_IN_FLIGHT + * + * @brief Defines the maximum number of Reports, limits the traffic of read and subscription transactions. + */ +#define CHIP_IM_MAX_REPORTS_IN_FLIGHT 2 + +/** + * @def CHIP_IM_SERVER_MAX_NUM_PATH_GROUPS + * + * @brief Defines the maximum number of path objects, limits the number of attributes being read or subscribed at the same time. + */ +#define CHIP_IM_SERVER_MAX_NUM_PATH_GROUPS 9 + +/** + * @def CHIP_IM_MAX_NUM_WRITE_HANDLER + * + * @brief Defines the maximum number of WriteHandler, limits the number of active write transactions on server. + */ +#define CHIP_IM_MAX_NUM_WRITE_HANDLER 2 + +/** + * @def CHIP_IM_MAX_NUM_WRITE_CLIENT + * + * @brief Defines the maximum number of WriteClient, limits the number of active write transactions on client. + */ +#define CHIP_IM_MAX_NUM_WRITE_CLIENT 2