Each cached statement requires approximately 1K memory in the statement cache, depending on the length of the SQL text.
Each cached plan requires at least 2K of memory in the procedure cache. To estimate the statement cache memory required, account for the following for each statement to be cached:
The length of the SQL statement, in bytes, rounded up to the nearest multiple of 256.
Approximately 100 bytes overhead.
The size of the plan in the procedure cache. This size is equivalent to the size of a stored procedure plan containing only the cached statement. There may be duplicates of the plan for a single cached statement being used concurrently by two or more users.