Build times

LiveCode is the premier environment for creating multi-platform solutions for all major operating systems - Windows, Mac OS X, Linux, the Web, Server environments and Mobile platforms. Brand new to LiveCode? Welcome!

Moderators: FourthWorld, heatherlaine, Klaus, kevinmiller, robinmiller

mvillion
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 107
Joined: Sun Feb 24, 2013 12:29 pm

Build times

Post by mvillion » Tue Jun 20, 2017 11:00 pm

I have found an interest thing.

Sometimes my build times are REALLY fast (20 secomnds) and sometimes they can take several minutes.

When they are really fast, the progress indicator that livecode displays flickers as if there are too many frames to display and they are out of sync with the monitor - kind of thing.

Has anyone else seen this?

Matt

dunbarx
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 9663
Joined: Wed May 06, 2009 2:28 pm
Location: New York, NY

Re: Build times

Post by dunbarx » Wed Jun 21, 2017 12:16 am

Hi.

Build time for a standalone?

Craig Newman

mvillion
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 107
Joined: Sun Feb 24, 2013 12:29 pm

Re: Build times

Post by mvillion » Wed Jun 21, 2017 9:53 am

Yes.

A mac and Windows build jsut ook 15 minutes.
When it does the flashy thing it take about 3.

richmond62
Livecode Opensource Backer
Livecode Opensource Backer
Posts: 9386
Joined: Fri Feb 19, 2010 10:17 am
Location: Bulgaria

Re: Build times

Post by richmond62 » Wed Jun 21, 2017 10:28 am

Boiling an egg takes less time than baking a cake.

So build times will vary depending on the size and complexity of a project.

The ONLY way to make valid comparisons about
varying build times is if the SAME STACK keeps building a standalone at differing rates.

mvillion
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 107
Joined: Sun Feb 24, 2013 12:29 pm

Re: Build times

Post by mvillion » Wed Jun 21, 2017 10:33 am

It is the same stack.

Sorry I should have said that

bogs
Posts: 5435
Joined: Sat Feb 25, 2017 10:45 pm

Re: Build times

Post by bogs » Wed Jun 21, 2017 2:28 pm

Heya mvillion,

I was wondering if I can setup a similar situation here, since I haven't encountered this problem myself, but the descriptions you give are sort of vague.

1. A little information about your development setup would be helpful, generally the Os your using and the version of Lc.
2. Does every stack you attempt to build exhibit the same issue? In other words, does building for Win or Mac always take 15 mins? Or is it building one time takes 15, the next 3? Or is it inconsistent, like 1 out of 10 times takes 15 mins? Does it make a difference on stacks that are simple vs. stacks that are very complicated, or is it just happening with this one stack?
3. Do you have 3rd party plugins in use ? If so, please list them.
4. Can you post a stack that exhibits this behavior?

The last one will take effort, but would save us from trying to replicate it blindly.

If your developing on a Mac, then I probably won't be able to look at the effect directly unless its 10.6.x, but pretty much anything else I'd be happy to test and see if I can recreate it.
Image

dunbarx
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 9663
Joined: Wed May 06, 2009 2:28 pm
Location: New York, NY

Re: Build times

Post by dunbarx » Wed Jun 21, 2017 3:36 pm

I have been developing a project for several months, building standalones continuously for Mac and Windows as features are added and bugs are squashed. I have a central stack with four substacks. There are about 6500 lines of code all in, and about 2400 controls. Total file size is about 2M.

Don't ask.

I have been saving build after build. Sometimes the process takes 20 seconds, sometimes four minutes. i do not believe that other processes on my Mac are significantly different from instance to instance.

Craig

mvillion
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 107
Joined: Sun Feb 24, 2013 12:29 pm

Re: Build times

Post by mvillion » Wed Jun 21, 2017 4:19 pm

I was wondering if I can setup a similar situation here, since I haven't encountered this problem myself, but the descriptions you give are sort of vague.

1. A little information about your development setup would be helpful, generally the Os your using and the version of Lc.
Mac Sierra 10.12.5. LC 8.1.5RC but it does not matter

2. Does every stack you attempt to build exhibit the same issue? In other words, does building for Win or Mac always take 15 mins? Or is it building one time takes 15, the next 3? Or is it inconsistent, like 1 out of 10 times takes 15 mins? Does it make a difference on stacks that are simple vs. stacks that are very complicated, or is it just happening with this one stack?
Build times is just strange. Sometimes it just runs slow. Each build will take 15 minute. Other times, the build is less than two. It is generally consistent for a while. Never worked out a pattern for this.

3. Do you have 3rd party plugins in use ? If so, please list them.
Nope. No plugins

4. Can you post a stack that exhibits this behavior?
I have had it on all of my stacks.

Something I have noticed is that when I am closing LC I am seeing a .livecode~ file that hangs around for a long time as if the file is left open. I wonder if that is somehow causing the problem. It will do some experiements with this to see if it is a hanging on file.

dunbarx
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 9663
Joined: Wed May 06, 2009 2:28 pm
Location: New York, NY

Re: Build times

Post by dunbarx » Wed Jun 21, 2017 5:23 pm

Certainly should have mentioned that this is LC 6.7.9 on Mac OS 10.9.

I would say that 90% of builds take a few minutes. When the "standalone saved successfully" dialog does pop up within 20 seconds it is both a surprise and a pleasure, and seems anomalous, almost to the point of my wondering if everything was included and the build is sound. it always is.

I'll bet a dime you are in at least v.8x. Seems like this oddity has been around for a while.

Craig

Edit/

To your other point, any small stack made quickly with just a few gadgets in it always takes just a handful of seconds to build.

richmond62
Livecode Opensource Backer
Livecode Opensource Backer
Posts: 9386
Joined: Fri Feb 19, 2010 10:17 am
Location: Bulgaria

Re: Build times

Post by richmond62 » Wed Jun 21, 2017 5:40 pm

I must be bonkers, but I cannot see what all the fuss is about.

When I want to build a standalone I set it going and

pop to the loo,

go and get a cup of coffee,

go and kiss my wife,

and really couldn't care whether building a standalone takes 5 secs or 15 minutes . . . .

There are probably lots of variables re what's going on inside your computer
that will be well-nigh impossible to track down and "flatten out": so, why bother?
Just calm down and go and water the plants on the balcony. :D

mvillion
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 107
Joined: Sun Feb 24, 2013 12:29 pm

Re: Build times

Post by mvillion » Wed Jun 21, 2017 5:52 pm

Ah. You are missing the trick.

If you have a bug in the standalone version that you cannot replicate in the IDE then you have trouble when it takes 15 minutes per build.
The wife gets lots of kisses and the plants can only take so much water.

I had an issue I was chasing - Which I did eventually work out where in the IDE it worked perfectly but in the standalone it failed.

The issue turned out to be that custom properties are persistent (when changed) in the IDE but in a standalone, they reset back to there original value.
It makes sense else the binary would be changing all the time but I did not find this fact out in the documentation about custom properties. 8-/

richmond62
Livecode Opensource Backer
Livecode Opensource Backer
Posts: 9386
Joined: Fri Feb 19, 2010 10:17 am
Location: Bulgaria

Re: Build times

Post by richmond62 » Wed Jun 21, 2017 5:56 pm

If you have a bug in the standalone version that you cannot replicate in the IDE then you have trouble when it takes 15 minutes per build.
Fair point :D

One thing I will say is that when I build standalones I quit all other applications on my computer
(and that could either be a Macintosh or a computer running Linux),
restart the thing, and then start the standalone build.

Because, while I don't care much about 15 minutes I have had one or 2 build times as long
as 45 minutes (and, for the sake of argument, my wife can only take so many of my slobbery efforts).

This is in an attempt to remove as many external variables in standalone building as possible.

Having said that, even under those conditions standalone building does seem to fluctuate in length for
no very obvious reason.

dunbarx
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 9663
Joined: Wed May 06, 2009 2:28 pm
Location: New York, NY

Re: Build times

Post by dunbarx » Wed Jun 21, 2017 7:27 pm

The issue turned out to be that custom properties are persistent (when changed) in the IDE but in a standalone, they reset back to there original value.
An entirely new issue has been raised. Standalones are executables. They cannot save anything at all, never mind custom properties or, say, field data. There are a million threads on this subject.

Everything, though, can be saved if you use the "splash" stack method. Do you know about this? Do write back, because you are missing something absolutely vital.

Now back to our regularly scheduled topic...

Craig

bogs
Posts: 5435
Joined: Sat Feb 25, 2017 10:45 pm

Re: Build times

Post by bogs » Wed Jun 21, 2017 8:29 pm

Wow, turn my head for a measley 6 hours and 30 minutes and WHAM ! :lol:

First of all, thank you all for chiming in, more info always helps.

Secondly, the first thing that jumps out at me is that all your systems are ones that I can not recreate here (Lin and sometimes Win, but only 10.6 Snow Leopard for testing, well, you understand) :roll:
Os your using and the version of Lc.
mvillion - Mac Sierra 10.12.5. LC 8.1.5RC but it does not matter
Craig - LC 6.7.9 on Mac OS 10.9
@Craig, 2M/2400 control stacks? Dang, see me after school :arrow: (Just kidding, but no less it is impressive)

@mvillion, no 3rd party plugins actually benefits the testing process, so really helpful and easy to reproduce setup. I'd guess, though, that since 2 other people at least experience this issue, and both of them far more knowledgeable than I about Lc, that your first question
Has anyone else seen this?
is answered.
We are making progress !

I am going to go out on a limb here, and say that since the Lc vers. doesn't seem to matter (at least down to 6.7.x), that it would be an ongoing thing, not something that just cropped up in the latest IDE builds. (Dazzling, aint it?)

richmond62's thought was valid about project complexity, however you have confirmed that this takes place with the same stack, and pointed out that it happens randomly regardless of the stack you are working on.
... I will take this to mean that even if you had a relatively simple project, one stack, one card, a few objects (say, 2 buttons, 2 fields, some labels), that you've seen this? Please point out if this assumption is invalid.

This leads to some more questions:
1. How much time is lapsing between the builds, i.e. are you changing one line/multiple lines, more than 1 minute, etc.

2. Are you saving the project before building each time?

3. Have you ever closed/re-opened the IDE after one of these events seems to start happeneing? Does that change the behavior back to building the standalone quickly? (less than 1 minute build time)

My (admittedly limited) understanding of the IDE is that the entire IDE + project are in memory, with the IDE performing all garbage removal/cleanup (correct me if my assessment is incorrect).
...I assume this includes things going on when building the standalone. As well, the IDE puts builds into new folders as you go (proj1, proj2, etc). I don't know how it handles that part of it, but that could be adding to the problem if it is just waiting to do clean up.
I have been saving build after build. Sometimes the process takes 20 seconds, sometimes four minutes. i do not believe that other processes on my Mac are significantly different from instance to instance.
I believe you are fundamentally correct, however depending on how the IDE is allocating/cleaning memory and how your os reacts to that, it could account for severe lag times in processes.

For instance, if the IDE is doing a large dump (2M/2400 controls!?!?) AND the os is doing background file maintenance, or some other memory related operation, I could certainly see a lag being induced.

Something that would be helpful is if you could leave the current system processes utility up while you are working in Lc. When you notice this behavior, take a look at which processes are hitting the cpu/memory/hd the hardest at that point. I think that would give us the best shot at figuring out what is going on.

Now going to run some really fast build tests and see if I can reproduce this on Linux...
Image

bogs
Posts: 5435
Joined: Sat Feb 25, 2017 10:45 pm

Re: Build times

Post by bogs » Wed Jun 21, 2017 8:53 pm

richmond62 wrote:I must be bonkers, but I cannot see what all the fuss is about.
<sic>There are probably lots of variables re what's going on inside your computer
that will be well-nigh impossible to track down and "flatten out": so, why bother?
</sic> :D
I don't think your necessarily bonkers (but reserve the right to change that opinion at a later date :twisted: ), and I know that both of you already discussed this and came to an understanding, however I would add that some people
a. sometimes like to know, and
b. like tracking down issues like this.

Performance related issues are almost never impossible to track down, however taking the time even if you don't find the actual issue is educational at worst, and you will certainly learn more about your computer or other computers than you knew previously.

I happen to fall into the a/b category myself, and at one time it helped to land me a job that paid very well despite having no degrees, so developing this kind of curiosity can also be financially rewarding, however, lets look beyond that kind of reasoning for a moment.

I like developing in Lc. I assume everyone else participating in this forum or using it likes it as well. Sometimes for wildly differing reasons, but thats neither here nor there. Naturally, I want the product I use to be the best it can be, so finding the root cause of something like this contributes to that end.
... If it is a system issue, well, then you can correct that on any systems that share it.
... If it is an error in code (are you INSANE? An error in code, what nonsense!) that has continued all this time, then wouldn't it be neat to catch it now and fix it for the next iteration?

Just my take, if you will. Due to inflation and the devaluation of the dollar, my take is no longer worth .02 cents, but will accept gratuitous remarks where given :mrgreen:

*Edit - In a side note more along the lines of the topic, I ran 20 builds in Lc 6.5.2, one after the other of a smaller project (timer) with 2 cards,12 objects, and a mere 157 lines of code. None of the runs took more than a few seconds, which is what I expected to see.

Is there a way to save as standalone without going to the file menu?
Image

Post Reply

Return to “Getting Started with LiveCode - Experienced Developers”