<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Heap size Memory Settings in Talend Studio</title>
    <link>https://community.qlik.com/t5/Talend-Studio/Heap-size-Memory-Settings/m-p/2513644#M147444</link>
    <description>&lt;P&gt;Hi &lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/266796"&gt;@quentin-vigne&lt;/a&gt;&amp;nbsp;Thanks for the detailed explanation.&lt;/P&gt;
&lt;P&gt;There is however something that remains unclear to me and that relates to the memory assigned to child jobs executed via a tRunJob component in TMC. My assumption is:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;When the 'Use an independent process to run subjob' setting in the tRunJob component is &lt;STRONG&gt;ON&lt;/STRONG&gt;, then the child job is provided with the memory configured in the Run Profile in TMC&lt;/LI&gt;
&lt;LI&gt;&amp;nbsp;When the 'Use an independent process to run subjob' setting in the tRunJob component is &lt;STRONG&gt;OFF &lt;/STRONG&gt;(as in all our Parent/Child jobs), then the child job is provided with the memory settings configured for the child job in Studio.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;Am i right to say so? Thanks Once again&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;LI-WRAPPER&gt;&lt;/LI-WRAPPER&gt;&lt;/P&gt;</description>
    <pubDate>Wed, 09 Apr 2025 08:30:06 GMT</pubDate>
    <dc:creator>yulongguan</dc:creator>
    <dc:date>2025-04-09T08:30:06Z</dc:date>
    <item>
      <title>Heap size Memory Settings</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Heap-size-Memory-Settings/m-p/2513501#M147435</link>
      <description>&lt;P&gt;Hi Talend support team,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Currently we are having some confusion with the&amp;nbsp;&lt;SPAN data-olk-copy-source="MessageBody"&gt;priority order of the following when a job runs in TMC:&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN data-olk-copy-source="MessageBody"&gt;We have set the&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;UL data-editing-info="{&amp;quot;applyListStyleFromLevel&amp;quot;:true}"&gt;
&lt;LI&gt;
&lt;DIV class="x_elementToProof" data-olk-copy-source="MessageBody"&gt;TRE Memory Settings configured in a TMC Run Profile&lt;/DIV&gt;
&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class="x_elementToProof"&gt;TRE Memory Settings configured within a TRE ....wrapper.conf file&lt;/DIV&gt;
&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class="x_elementToProof"&gt;Memory Settings configured in the Talend Studio instance that publishes the job&lt;/DIV&gt;
&lt;UL&gt;
&lt;LI&gt;
&lt;DIV class="x_elementToProof"&gt;I.e. As configured in 'Window--&amp;gt;Preferences--&amp;gt;Talend--&amp;gt;Run/Debug'&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;SPAN&gt;We would like to understand the difference between the 3 approaches and also how is one overwrite the changes of the other ?&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 08 Apr 2025 12:21:48 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Heap-size-Memory-Settings/m-p/2513501#M147435</guid>
      <dc:creator>yulongguan</dc:creator>
      <dc:date>2025-04-08T12:21:48Z</dc:date>
    </item>
    <item>
      <title>Re: Heap size Memory Settings</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Heap-size-Memory-Settings/m-p/2513538#M147440</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/327317"&gt;@yulongguan&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So here in reality you have 2 different things :&amp;nbsp;&lt;/P&gt;&lt;P&gt;1 - The wrapper.conf file.&lt;/P&gt;&lt;P&gt;Chaning the java memory in this file will only allow the Remote Engine &lt;STRONG&gt;service&lt;/STRONG&gt; to use that amount of memory. This doesn't affect the job execution, only the service. It can help it start itself / manage jobs&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;2 - The Xmx java setting.&lt;/P&gt;&lt;P&gt;By default every job use&amp;nbsp;&lt;STRONG&gt;-Xms256M and -Xmx1024M&amp;nbsp;&lt;/STRONG&gt;if you change it in the studio, then the job will use those values. If for example you use -Xmx4G in the studio, your job will be able to use up to 4G of memory.&lt;/P&gt;&lt;P&gt;If you publish this same job to the TMC with this setting, the settings are also going to be published, meaning the job will be able to use up to 4G of memory.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;BUT if you setup a Run Profile with for example -Xmx8G and assign it to your job, it will override what you used in the studio, and now the job will be able to use up to 8G of RAM&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;My advice would be to : let the wrapper file like it it (you can't put more than 4G anyway) and use whatever you want in the studio for your local test, except if you use your Remote Engine from the studio.&lt;/P&gt;&lt;P&gt;For every job in the TMC : assign a Run Profile. Typically we have a 32 Run Profile (one for each G between 1 and 32) and we manage our job that way and this allow us to know easily how much gigas are used at any moment.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I hope this cleared all your questions&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;- Quentin&lt;/P&gt;</description>
      <pubDate>Tue, 08 Apr 2025 15:02:05 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Heap-size-Memory-Settings/m-p/2513538#M147440</guid>
      <dc:creator>quentin-vigne</dc:creator>
      <dc:date>2025-04-08T15:02:05Z</dc:date>
    </item>
    <item>
      <title>Re: Heap size Memory Settings</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Heap-size-Memory-Settings/m-p/2513644#M147444</link>
      <description>&lt;P&gt;Hi &lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/266796"&gt;@quentin-vigne&lt;/a&gt;&amp;nbsp;Thanks for the detailed explanation.&lt;/P&gt;
&lt;P&gt;There is however something that remains unclear to me and that relates to the memory assigned to child jobs executed via a tRunJob component in TMC. My assumption is:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;When the 'Use an independent process to run subjob' setting in the tRunJob component is &lt;STRONG&gt;ON&lt;/STRONG&gt;, then the child job is provided with the memory configured in the Run Profile in TMC&lt;/LI&gt;
&lt;LI&gt;&amp;nbsp;When the 'Use an independent process to run subjob' setting in the tRunJob component is &lt;STRONG&gt;OFF &lt;/STRONG&gt;(as in all our Parent/Child jobs), then the child job is provided with the memory settings configured for the child job in Studio.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;Am i right to say so? Thanks Once again&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;LI-WRAPPER&gt;&lt;/LI-WRAPPER&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 09 Apr 2025 08:30:06 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Heap-size-Memory-Settings/m-p/2513644#M147444</guid>
      <dc:creator>yulongguan</dc:creator>
      <dc:date>2025-04-09T08:30:06Z</dc:date>
    </item>
    <item>
      <title>Re: Heap size Memory Settings</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Heap-size-Memory-Settings/m-p/2513660#M147445</link>
      <description>&lt;P&gt;Let's say we have a job called "Parent". Inside it we have a "Child" job called by a tRunJob component.&lt;/P&gt;&lt;P&gt;We setup in the TMC :&lt;/P&gt;&lt;P&gt;- Parent : 4G memory&lt;/P&gt;&lt;P&gt;- Child : 1G memory&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Now for the first scenario :&amp;nbsp;&lt;/P&gt;&lt;P&gt;1 - If&amp;nbsp;&lt;STRONG&gt;Use an independent process to run subjob&amp;nbsp;&lt;/STRONG&gt;is &lt;STRONG&gt;ON&amp;nbsp;&lt;/STRONG&gt;: Then the "Child" job will start it's own JVM with the parameters you gave him. Meaning : 1G of RAM&lt;/P&gt;&lt;P&gt;2 -&amp;nbsp;If&amp;nbsp;&lt;STRONG&gt;Use an independent process to run subjob&amp;nbsp;&lt;/STRONG&gt;is &lt;STRONG&gt;OFF&amp;nbsp;&lt;/STRONG&gt;: Then the "Child" job will use the current JVM, meaning the 4G available from the "Parent" job&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Example :&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="quentinvigne_0-1744193017640.png" style="width: 400px;"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/179494iB7497EACF045C110/image-size/medium?v=v2&amp;amp;px=400" role="button" title="quentinvigne_0-1744193017640.png" alt="quentinvigne_0-1744193017640.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;You can use this command to display the current max memory available (the first inside the studio, and the second if you want to display it using the log-level = info in the TMC)&lt;/P&gt;&lt;LI-CODE lang="java"&gt;System.out.println("This is the memory from the Parent : " + Runtime.getRuntime().maxMemory()); 


log.info("This is the memory from the Parent : " + Runtime.getRuntime().maxMemory());&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;If this helped, don't forget to give a like / accept it as a solution&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;- Quentin&lt;/P&gt;</description>
      <pubDate>Wed, 09 Apr 2025 10:05:18 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Heap-size-Memory-Settings/m-p/2513660#M147445</guid>
      <dc:creator>quentin-vigne</dc:creator>
      <dc:date>2025-04-09T10:05:18Z</dc:date>
    </item>
  </channel>
</rss>

