Monday, January 11, 2010

Application Global Memory ('app_ctl_heap_sz')



[ Team LiB ]





Application Global Memory (app_ctl_heap_sz)


Application global memory is allocated if using DB2 ESE with intra_parallelism enabled or if using partitioned databases (see Figure 9.5). For nonpartitioned databases its use is minimal.


Figure 9.5. Application Global Memory


Application Global Memory specifies how much application control heap is allocated for each application at the database where the application is active (in the case of partitioned databases, heap is allocated at each database partition where the application is active). The heap is allocated during connect processing by the first agent to receive a request for the application at the database (or database partition). The heap is used by agents working for the application to share information (in a partitioned database, sharing occurs at the database partition level). The heap is also used to store descriptor information for declared temporary tables, which is kept until the declared temporary table is explicitly dropped. In a partitioned database environment, heap is used to store executing copies of SQL statements for agents and subagents. Note that SMP subagents use applheapsz instead. Allocation only occurs if intra_parallel is set on and the CURRENT DEGREE special register is set greater than 1. Start with the default value and increase it if you use lots of declared temporary tables, run complex SQL, or have many database partitions.





    [ Team LiB ]



    No comments: