Mantis Bugtracker

Viewing Issue Simple Details Jump to Notes ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0000776 [ALGLIB] General minor have not tried 2017-12-24 13:19 2018-05-08 12:33
Reporter SergeyB View Status public  
Assigned To SergeyB
Priority normal Resolution fixed  
Status resolved   Product Version
Summary 0000776: FIXED: memory leak in the heavily threaded code utilizing Intel MKL
Description === Problem description ===

Intel MKL in its default configuration allocates thread-local buffer storage which is used to accelerate computations (create aligned copies of data). The problem is that this buffer is not deallocated after exit from MKL - just for the case same thread will call MKL one more time.

When application spawns many threads, it results in creation of multiple thread-local buffers; when many threads are spawned constantly (as it happens with some threading frameworks, including NET Task Parallel Library) it results in steadily growing memory consumption.

To be exact, memory is not actually lost - it can be freed with just one call of mkl_free_buffers(). However, such behavior is still undesirable.

=== Solution ==

A watchdog thread starts on MKL startup which performs periodic (once in a few seconds) cleanup of unused buffers.
Additional Information
Programming language Unspecified
Attached Files

- Relationships

There are no notes attached to this issue.

- Issue History
Date Modified Username Field Change
2017-12-24 13:19 SergeyB New Issue
2017-12-24 13:19 SergeyB Status new => assigned
2017-12-24 13:19 SergeyB Assigned To => SergeyB
2017-12-24 13:19 SergeyB Programming language => Unspecified
2017-12-24 13:19 SergeyB Status assigned => resolved
2017-12-24 13:19 SergeyB Fixed in Version => 3.13.0
2017-12-24 13:19 SergeyB Resolution open => fixed
2018-04-03 14:01 SergeyB Status resolved => assigned
2018-04-03 14:02 SergeyB Resolution fixed => open
2018-04-03 14:02 SergeyB Fixed in Version 3.13.0 =>
2018-04-03 14:02 SergeyB Target Version 3.13.0 => 3.14.0
2018-05-08 12:32 SergeyB Description Updated
2018-05-08 12:33 SergeyB Status assigned => resolved
2018-05-08 12:33 SergeyB Fixed in Version => 3.14.0
2018-05-08 12:33 SergeyB Resolution open => fixed


Mantis 1.1.6[^]
Copyright © 2000 - 2008 Mantis Group
Powered by Mantis Bugtracker