@Sebastian: Getting memory away from the JVM is tricky always, completely
independent of pre-allocation of managed memory or lazy allocation.

But here is something that may work:
  - Start Flink in streaming mode - that will make it allocate managed
memory lazily
  - Set the memory to offheap memory. That way the JVM heap is small. The
off-heap memory is returned when no longer used deallocated - this releases
memory much better than JVM shrinking the heap.



On Wed, Dec 9, 2015 at 10:06 AM, Fabian Hueske <fhue...@gmail.com> wrote:

> Hi Sebastian,
>
> There is no way to return memory from a Flink process except shutting the
> process down.
> I think YARN could help in your setup. In a YARN setup, you can flexibly
> start and stop Flink sessions with different configurations (memory, TMs,
> slots) or run a single job. When running a single job, Flink will allocate
> resources and free them after the job is done.
>
> Best, Fabian
>
> 2015-12-09 9:46 GMT+01:00 Kruse, Sebastian <sebastian.kr...@hpi.de>:
>
>> Hi everyone,
>>
>>
>> I am currently looking into how Flink can coexist and interoperate with
>> other frameworks in a cluster, such as plain single-machine processes
>> or Spark​. ​Tachyon seems to be nice solution to exchange data between
>> them.
>>
>>
>> However, I think it is a problem that Flink's taskmanagers allocate their 
>> managed
>> memory upfront - in contrast to Spark, as far as I know. If I want ​a 
>> taskmanager
>> to yield its main memory, so that another process can use that memory, is
>> there any other option besides shutting that taskmanager down? Would it be
>> beneficial to use YARN?
>>
>> Thanks for your help!
>>
>>
>> Cheers,
>>
>> Sebastian
>>
>
>

Reply via email to