[
https://issues.apache.org/jira/browse/IMPALA-3091?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Michael Smith updated IMPALA-3091:
----------------------------------
Description:
LLVM can use a lot of memory optimizing the module in pathological cases, which
is only accounted for in the process mem tracker. For instance, the following
query:
{noformat}
select * from functional_text_lzo.widetable_1000_cols;
{noformat}
Causes the process tracker to go to 3GB, while the query tracker reports almost
nothing:
{noformat}
Process: Limit=12.44 GB Consumption=2.98 GB
RequestPool=default-pool: Consumption=16.02 KB
Query(2d44bf2d595eb55f:3641ee051e509f82) Limit: Consumption=16.02 KB
Fragment 2d44bf2d595eb55f:3641ee051e509f83: Consumption=8.00 KB
EXCHANGE_NODE (id=1): Consumption=0
DataStreamRecvr: Consumption=0
Block Manager: Limit=9.95 GB Consumption=0
Fragment 2d44bf2d595eb55f:3641ee051e509f84: Consumption=8.02 KB
HDFS_SCAN_NODE (id=0): Consumption=0
DataStreamSender: Consumption=16.00 B
{noformat}
This is related to IMPALA-967.
As addressed in [https://gerrit.cloudera.org/c/20697/] - and reverted in
[https://gerrit.cloudera.org/c/20796] - Impala currently under-estimates memory
used by LLVM's Memory Manager. It allocates at least a memory page (usually
4KB) for every code section (at least 3 per Module). Trying to account for that
starts to introduce significant unplanned memory and causes memory reservation
failures in tests.
was:
LLVM can use a lot of memory optimizing the module in pathological cases, which
is only accounted for in the process mem tracker. For instance, the following
query:
{noformat}
select * from functional_text_lzo.widetable_1000_cols;
{noformat}
Causes the process tracker to go to 3GB, while the query tracker reports almost
nothing:
{noformat}
Process: Limit=12.44 GB Consumption=2.98 GB
RequestPool=default-pool: Consumption=16.02 KB
Query(2d44bf2d595eb55f:3641ee051e509f82) Limit: Consumption=16.02 KB
Fragment 2d44bf2d595eb55f:3641ee051e509f83: Consumption=8.00 KB
EXCHANGE_NODE (id=1): Consumption=0
DataStreamRecvr: Consumption=0
Block Manager: Limit=9.95 GB Consumption=0
Fragment 2d44bf2d595eb55f:3641ee051e509f84: Consumption=8.02 KB
HDFS_SCAN_NODE (id=0): Consumption=0
DataStreamSender: Consumption=16.00 B
{noformat}
This is related to IMPALA-967.
As addressed in [https://gerrit.cloudera.org/c/20697/] - and reverted in
[https://gerrit.cloudera.org/c/20796] - Impala currently under-estimates memory
used by LLVM's Memory Manager. It allocates at least a memory page (usually
4KB) for every code section (at least 3 per Module). Trying to account for that
starts to introduce significant unplanned memory
> LLVM memory is not accounted for in query mem tracker
> -----------------------------------------------------
>
> Key: IMPALA-3091
> URL: https://issues.apache.org/jira/browse/IMPALA-3091
> Project: IMPALA
> Issue Type: Improvement
> Components: Backend
> Affects Versions: Impala 2.2
> Reporter: Skye Wanderman-Milne
> Priority: Major
> Labels: codegen, resource-management
>
> LLVM can use a lot of memory optimizing the module in pathological cases,
> which is only accounted for in the process mem tracker. For instance, the
> following query:
> {noformat}
> select * from functional_text_lzo.widetable_1000_cols;
> {noformat}
> Causes the process tracker to go to 3GB, while the query tracker reports
> almost nothing:
> {noformat}
> Process: Limit=12.44 GB Consumption=2.98 GB
> RequestPool=default-pool: Consumption=16.02 KB
> Query(2d44bf2d595eb55f:3641ee051e509f82) Limit: Consumption=16.02 KB
> Fragment 2d44bf2d595eb55f:3641ee051e509f83: Consumption=8.00 KB
> EXCHANGE_NODE (id=1): Consumption=0
> DataStreamRecvr: Consumption=0
> Block Manager: Limit=9.95 GB Consumption=0
> Fragment 2d44bf2d595eb55f:3641ee051e509f84: Consumption=8.02 KB
> HDFS_SCAN_NODE (id=0): Consumption=0
> DataStreamSender: Consumption=16.00 B
> {noformat}
> This is related to IMPALA-967.
> As addressed in [https://gerrit.cloudera.org/c/20697/] - and reverted in
> [https://gerrit.cloudera.org/c/20796] - Impala currently under-estimates
> memory used by LLVM's Memory Manager. It allocates at least a memory page
> (usually 4KB) for every code section (at least 3 per Module). Trying to
> account for that starts to introduce significant unplanned memory and causes
> memory reservation failures in tests.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]