<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>nrfutil settings generate very slow</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/31169/nrfutil-settings-generate-very-slow</link><description>Hi, 
 when generating settings on windows using nrfutil on one project takes about 2 minutes and it swallows whole memory during the command. 
 The command i am using is: 
 ``` 
 nrfutil settings generate \ --family NRF52 \ --application src/pca10040</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Wed, 19 Sep 2018 05:34:18 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/31169/nrfutil-settings-generate-very-slow" /><item><title>RE: nrfutil settings generate very slow</title><link>https://devzone.nordicsemi.com/thread/149339?ContentTypeID=1</link><pubDate>Wed, 19 Sep 2018 05:34:18 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:851584fb-aa42-4b89-abc4-0685b5ef540a</guid><dc:creator>tke</dc:creator><description>&lt;p&gt;Sorry for the late answer, but I just noticed that you&amp;#39;ve replied.&lt;/p&gt;
&lt;p&gt;Yes, the phenomena is due to locating Segger buffers outside the &amp;quot;RAM&amp;quot; area on top of the stack in the end of the ram. In linker script I have memory and sections defined as follows for SD v6.0.0:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;MEMORY {&lt;br /&gt;&amp;nbsp; FLASH (rx)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : ORIGIN = 0x26000,&amp;nbsp;&amp;nbsp;&amp;nbsp; LENGTH = 0x5a000&lt;br /&gt;&amp;nbsp; RAM (rwx)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : ORIGIN = 0x20002A98, LENGTH = 0xC510&amp;nbsp;&amp;nbsp; /* = 0x10000 - 0x2A98 - 0x0048 - 0x1010 */&lt;br /&gt;&amp;nbsp; RTT_CB (rwx)&amp;nbsp;&amp;nbsp; : ORIGIN = 0x2000EFA8, LENGTH = 0x0048&amp;nbsp;&amp;nbsp; /* Control block for single buffers (up &amp;amp; down) */&lt;br /&gt;&amp;nbsp; RTT_BUFF (rwx) : ORIGIN = 0x2000EFF0, LENGTH = 0x1010&amp;nbsp;&amp;nbsp; /* Single buffer for both: 4*1024 octets up and 16 octets for down buffer */&lt;br /&gt;}&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;SECTIONS {&lt;/p&gt;
&lt;p&gt;. . .&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; .bss :&amp;nbsp; { ...&amp;nbsp; } &amp;gt; RAM&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; .heap (COPY) : { ... } &amp;gt; RAM&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; .stack_dummy (COPY) : { ... } &amp;gt; RAM&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Allocate section for Segger RTT Control block */&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; .rtt :&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; . = ALIGN(4);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; __rtt_start__ = .;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; KEEP(*(.rtt))&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; __rtt_end__ = .;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &amp;gt; RTT_CB&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* We get quite a few error messages if the origins &amp;amp; lengths of the sections are not right. */&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* However, better check the alignment here too. */&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ASSERT(__rtt_start__ == ORIGIN(RTT_CB), &amp;quot;RTT CB misplaced or misaligned&amp;quot;)&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Allocate section for Segger RTT buffers */&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; .rtt_buffers : {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; __rtt_buffers_start__ = .;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; KEEP(*(.rtt_buffers))&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; __rtt_buffers_end__ = .;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &amp;gt; RTT_BUFF&lt;br /&gt;&lt;br /&gt;}&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrfutil settings generate very slow</title><link>https://devzone.nordicsemi.com/thread/124002?ContentTypeID=1</link><pubDate>Mon, 12 Mar 2018 16:06:23 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:395d696a-479a-4286-b27d-3cf54dbc1dbb</guid><dc:creator>Rune Holmgren</dc:creator><description>&lt;p&gt;Thank you for the details. When I mentioned the RAM consumption to my colleague working on nrfutil he said it sounds like you have a hex file with data outside of the flash region. Nrfutil expects to get a hex file with the applications flash and it will create a buffer to hold this while it hashes data etc. Unfortunately, there is no check confirming that the hexfile doesn&amp;#39;t have any data in the higher regions of flash, so a hexfile with data higher up in the address ranges will cause nrfutil to create very large buffers.&lt;/p&gt;
&lt;p&gt;To be sure that there aren&amp;#39;t any new RAM consuming bugs introduced in nrfutil 3.4.0 I used a regular application hex file in nrfutil settings generation on a time-shared single core digital ocean &amp;quot;droplet&amp;quot; with 512 MB of RAM. It ran in 0.4 seconds even on such a weak system.&lt;/p&gt;
&lt;p&gt;You can either have a look at your own hex file, or you can send it to me and I can have a look at it.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;br /&gt;Rune Holmgren&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrfutil settings generate very slow</title><link>https://devzone.nordicsemi.com/thread/123791?ContentTypeID=1</link><pubDate>Sun, 11 Mar 2018 10:35:59 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b32dab4d-0e77-4dd5-adbd-d45f915ec4fa</guid><dc:creator>tke</dc:creator><description>&lt;p&gt;On iMac Pro High Sierra 3.2GHz Xeon W running similar command I get:&lt;/p&gt;
&lt;p&gt;real&amp;nbsp;&amp;nbsp; &amp;nbsp;0m37.072s&lt;br /&gt;user&amp;nbsp;&amp;nbsp; &amp;nbsp;0m34.316s&lt;br /&gt;sys&amp;nbsp;&amp;nbsp; &amp;nbsp;0m2.748s&lt;/p&gt;
&lt;p&gt;$ nrfutil version&lt;br /&gt;nrfutil version 3.4.0&lt;/p&gt;
&lt;p&gt;$ python --version&lt;br /&gt;Python 2.7.10&lt;/p&gt;
&lt;p&gt;The process takes about 8GB memory.&lt;/p&gt;
&lt;p&gt;SDK is 13.1&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;On slow Linux machine:&lt;/p&gt;
&lt;p&gt;real&amp;nbsp;&amp;nbsp; &amp;nbsp;5m10.484s&lt;br /&gt;user&amp;nbsp;&amp;nbsp; &amp;nbsp;1m32.596s&lt;br /&gt;sys&amp;nbsp;&amp;nbsp; &amp;nbsp;0m6.552s&lt;/p&gt;
&lt;p&gt;$ nrfutil version&lt;br /&gt;nrfutil version 3.4.0&lt;/p&gt;
&lt;p&gt;$ python --version&lt;br /&gt;Python 2.7.12&lt;/p&gt;
&lt;p&gt;And the machine swaps like hell.&lt;/p&gt;
&lt;p&gt;SDK is 13.1&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;How can check whether the SDK and nrfutil match ?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Cheers, Timo&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrfutil settings generate very slow</title><link>https://devzone.nordicsemi.com/thread/123068?ContentTypeID=1</link><pubDate>Tue, 06 Mar 2018 12:47:18 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9f0f73ea-ff04-4480-a8cf-958cc6143a31</guid><dc:creator>Rune Holmgren</dc:creator><description>&lt;p&gt;This issue is not something I can recall seeing before.&lt;/p&gt;
&lt;p&gt;Are you running the same revision of nrfutil&amp;nbsp;on both the Windows and Linux system with the same python&amp;nbsp;version? If you installed nrfutil&amp;nbsp;from source, try checking out an older commit belonging to an official release and not just the newest master. You may also want to install it directly from pip as it may be simpler. Also ensure that you are running the revision of nrfutil&amp;nbsp;supported by the SDK you are using, most commonly nrfutil&amp;nbsp;version 2.3.0.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;br /&gt;Rune Holmgren&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>