<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<p><font face="Georgia">Probably good enough might be</font></p>
<p><font face="Georgia">World allMorphsDo: [:ea | ea removeProperty:
#dropShadow]</font></p>
<p><font face="Georgia">takes 0 ms for me</font><br>
</p>
<br>
<div class="moz-cite-prefix">On 2/20/18 2:46 AM, Marcel Taeumel
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:2ee7b631-cf14-401b-a121-78d21b7842d6@getmailbird.com">
<div id="__MailbirdStyleContent" style="font-size:
12pt;font-family: calibri;color: #000000"> Hi Eliot,
<div><br>
</div>
<div>sure. Removing the potential drop shadow of all kinds of
morphs takes time:</div>
<div><br>
</div>
<div>
<div>Morph allSubInstancesDo: [:ea | <span style="font-size:
12pt;line-height: 1.5">ea removeProperty: #dropShadow].</span></div>
</div>
<div><span style="font-size: 12pt;line-height: 1.5"><br>
</span></div>
<div><span style="font-size: 12pt;line-height: 1.5">About 3
seconds here in a quite clean image.</span></div>
<div><span style="font-size: 12pt;line-height: 1.5"><br>
</span></div>
<div>
<div style="">SystemWindow allSubInstancesDo: [:ea | <span
style="font-size: 12pt;line-height: 1.5">ea
removeProperty: #dropShadow].</span></div>
</div>
<div style=""><span style="font-size: 12pt;line-height: 1.5"><br>
</span></div>
<div style=""><span style="font-size: 12pt;line-height: 1.5">Works
at 100 milliseconds.</span></div>
<div style=""><span style="font-size: 12pt;line-height: 1.5"><br>
</span></div>
<div style=""><span style="font-size: 12pt;line-height: 1.5">What
has the biggest effect in your image?</span></div>
<div style=""><span style="font-size: 12pt;line-height: 1.5"><br>
</span></div>
<div style=""><span style="font-size: 12pt;line-height: 1.5">Best,</span></div>
<div style=""><span style="font-size: 12pt;line-height: 1.5">Marcel</span></div>
<blockquote class="history_container" type="cite"
style="border-left-style:solid;border-width:1px;
margin-top:20px; margin-left:0px;padding-left:10px;">
<p style="color: #AAAAAA; margin-top: 10px;">Am 20.02.2018
02:51:06 schrieb Eliot Miranda
<a class="moz-txt-link-rfc2396E" href="mailto:eliot.miranda@gmail.com"><eliot.miranda@gmail.com></a>:</p>
<meta http-equiv="Content-Type" content="text/html;
charset=utf-8">
<div dir="ltr">Hi Marcel,
<div><br>
</div>
<div> I've finally worked out that the space overhead
here comes from the dropShadow cache system in Morphs (in
otherProperties in MorphExtensions). Would it be possible
to arrange to flush all drop shadows in the current
project when:</div>
<div>- exiting a project</div>
<div>- snapshotting</div>
<div>?</div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Thu, Jan 18, 2018 at 3:24 PM,
Eliot Miranda <span dir="ltr"><<a
href="mailto:eliot.miranda@gmail.com" target="_blank"
moz-do-not-send="true">eliot.miranda@gmail.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">Hi All,
<div><br>
</div>
<div> I've been experiencing image save slowdowns
recently and finally my work image reached 1.%Gb and
I thought I better take a look:</div>
<div><br>
</div>
<div>
<div>Sisyphus.Cog$ ls -lh SpurWork64.*
save/SpurWork64-*</div>
<div>-rw-r--r--@ 1 eliot staff 28M Jan 18 12:47
SpurWork64.changes</div>
<div>-rw-r--r--@ 1 eliot staff 1.6G Jan 18 12:48
SpurWork64.image</div>
<div>-rw-r--r--@ 1 eliot staff 28M Jan 18 12:03
save/SpurWork64-2018-01-18.<wbr>changes</div>
<div>-rw-r--r--@ 1 eliot staff 1.5G Jan 18 12:03
save/SpurWork64-2018-01-18.<wbr>image</div>
<div><br>
</div>
<div>I ran a space analysis and found that Bitmap
and ByteArray were the top two, so I looked for
large Bitmaps. I found three that fit this
criterion:</div>
<div><br>
</div>
<div>
<div><br>
</div>
<div> Bitmap allInstances select: [:bm| bm size
>= 1000000 and: [bm ~~ Display bits]]</div>
</div>
<div><br>
</div>
<div>I inspected the three and did a chase pointers
on one of them. As I did that suddenly</div>
<div>a) the inspector on the Array became empty
(still an array but zero elements)</div>
<div>b) the progress bar for Downloading
FlexibleVocabularies-who.NN appeared</div>
<div><br>
</div>
<div>I interrupted this and did a very cursory stack
examination. Some object had not understood
isLiteral and from there what looked like an
attempt to turn this stub into a real object
caused FlexibleVocabularies-who.NN to start to
download.</div>
<div><br>
</div>
<div>I threw away the debugger, ran the GC and
suddenly all my free space was back. So now on
disc I have</div>
<div><br>
</div>
<div>
<div>Sisyphus.Cog$ ls -lh SpurWork64.*
save/SpurWork64-*</div>
<div>-rw-r--r--@ 1 eliot staff 28M Jan 18
15:17 SpurWork64.changes</div>
<div>-rw-r--r--@ 1 eliot staff 57M Jan 18
15:17 SpurWork64.image</div>
<div>-rw-r--r--@ 1 eliot staff 28M Jan 18
12:03 save/SpurWork64-2018-01-18.<wbr>changes</div>
<div>-rw-r--r--@ 1 eliot staff 1.5G Jan 18
12:03 save/SpurWork64-2018-01-18.<wbr>image</div>
</div>
<div><br>
</div>
<div>What is going on here? There seems to be a
very bad storage leak. Can we please discuss
this? This doesn't seem like healthy behaviour at
all :-)</div>
<div><br>
</div>
<div class="m_5716436936016961839gmail_signature">
<div dir="ltr">
<div><span style="font-size:
10pt;border-collapse: separate">
<div>_,,,^..^,,,_<br>
</div>
<div>best, Eliot</div>
</span></div>
</div>
</div>
</div>
</div>
</blockquote>
</div>
<br>
<br clear="all">
<div><br>
</div>
-- <br>
<div class="gmail_signature"
data-smartmail="gmail_signature">
<div dir="ltr">
<div><span style="font-size: 10pt;border-collapse:
separate">
<div>_,,,^..^,,,_<br>
</div>
<div>best, Eliot</div>
</span></div>
</div>
</div>
</div>
</blockquote>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">
</pre>
</blockquote>
<br>
</body>
</html>