Process Scheduling: UDF CPU and Memory Columns - Advanced SQL Engine - Teradata Database

Resource Usage Macros and Tables

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Published
July 2021
Language
English (United States)
Last Update
2021-07-27
dita:mapPath
dep1592878989156.ditamap
dita:ditavalPath
dep1592878989156.ditaval
dita:id
B035-1099
lifecycle
previous
Product Category
Teradata Vantageā„¢

These columns report the UDF CPU and Memory data under the AMP, PE, or NODE.

All external routines are invoked by either an AMP or PE and dispatched to the UDF secure server for execution. Some UDF servers are specific to an AMP or PE, and some are for all AMPs or PEs on the node.

The number of secure servers specific to an AMP or PE can be set by the Cufconfig utility, and defaults to 2.

These server processes execute the C/C++ UDFs, XSPs, ExecR table operators, SCRIPT table operators (excluding their child processes), and Java UDFs with EXTERNAL SECURITY clause defined for the CREATE FUNCTION or REPLACE FUNCTION statement. The usage of these server processes is reported to the AMP or PE columns.

Java UDFs that are not defined with the EXTERNAL SECURITY clause are run using a hybrid server. Each node has 1 hybrid server which provides a multithreaded execution of Java UDFs for all AMPs and PEs on the node. The number of hybrid server threads can be set by Cufconfig, and defaults to 20. The usage of these server processes is reported to the NODE columns.

Child processes spawned by the SCRIPT table operators are run outside the secure servers. Therefore, their usage is not included in the column data.

PDE also reports UDF CPU usage to the node partition by design. Therefore, the CPUU[Exec|Serv]Part00 columns will report the UDF CPU usage, and the CPUU[Exec|Serv][Part11|Part13] will not.

The UDF CPU value over multiple periods averages 100% or less.

When an external routine forks a child process, the CPU value is not reported to these fields. As a result, the resource usage table shows a lower CPU usage than shown in the ResUsageSpma table, even if the external routine consumes a large amount of CPU time. If there are child processes running on your system, this may account for the larger CPU value reported in the ResUsageSpma table compared to this table.
Column Name Mode Description Data Type
UdfServ count Reported system-level UDF CPU time value under the vproc. VprType determines if it is for an AMP or PE. If VprType is AMP, the field contains AMP CPU usage. If VprType is PE, the field contains PE usage. For other VprType, the field is 0. FLOAT
UdfExec count Reported user-level UDF CPU time value under the vproc. VprType determines if it is for an AMP or PE. If VprType is AMP, the field contains AMP CPU usage. If VprType is PE, the field contains PE usage. For other VprType, the field is 0. FLOAT
UdfMemInuseKB track Current total KB of resident memory in use by the UDF secure server processes. The usage is reported in AMP, PE, or NODE vprocs. For other VprType, the field is 0. FLOAT
UdfVmSizeKB track Current total KB of virtual memory occupied by the UDF secure server processes. The usage is reported in AMP, PE, or NODE vprocs. For other VprType, the field is 0. FLOAT