Hi Matthias,

Thank you for your reply and useful information. I find that the off-heap is used when Flink uses HybridMemorySegments. Well, how the Flink knows when to use these HybridMemorySegments and in which operations this is happened?

Best,
Iacovos

On 11/11/20 11:41 π.μ., Matthias Pohl wrote:
Hi Iacovos,
The task's off-heap configuration value is used when spinning up TaskManager containers in a clustered environment. It will contribute to the overall memory reserved for a TaskManager container during deployment. This parameter can be used to influence the amount of memory allocated if the user code relies on DirectByteBuffers and/or native memory allocation. There is no active memory pool management beyond that from Flink's side. The configuration parameter is ignored if you run a Flink cluster locally.

Besides this, Flink also utilizes the JVM's using DirectByteBuffers (for network buffers) and native memory (through Flink's internally used managed memory) internally.

You can find a more detailed description of Flink's memory model in [1]. I hope that helps.

Best,
Matthias

[1] https://ci.apache.org/projects/flink/flink-docs-release-1.11/ops/memory/mem_setup_tm.html#detailed-memory-model

On Tue, Nov 10, 2020 at 3:57 AM Jack Kolokasis <koloka...@ics.forth.gr <mailto:koloka...@ics.forth.gr>> wrote:

    Thank you Xuannan for the reply.

    Also I want to ask about how Flink uses the off-heap memory. If I
    set taskmanager.memory.task.off-heap.size then which data does
    Flink allocate off-heap? This is handle by the programmer?

    Best,
    Iacovos

    On 10/11/20 4:42 π.μ., Xuannan Su wrote:
    Hi Jack,

    At the moment, Flink doesn't support caching the intermediate
    result. However, there is some ongoing effort to support caching
    in Flink.
    FLIP-36[1] propose to add the caching mechanism at the Table API.
    And it is planned for 1.13.

    Best,
    Xuannan

    On Nov 10, 2020, 4:29 AM +0800, Jack Kolokasis
    <koloka...@ics.forth.gr <mailto:koloka...@ics.forth.gr>>, wrote:
    Hello all,

    I am new to Flink and I want to ask if the Flink supports a caching
    mechanism to store intermediate results in memory for machine
    learning
    workloads.

    If yes, how can I enable it and how can I use it?

    Thank you,
    Iacovos

Reply via email to