1. Binding Speed

I was wondering if anyone else has had the following happen to them:

I'm in the middle of writing a rather complex program and I wanted to
beta test it on another computer, so I bound the program into an
exe to transfer it over and run it.  When I did that the program
seemed to bog down...Upon further investigation, I discovered that
this bound version indeed ran -slower- (by a considerable percentage)
than the unbound version (tested on the same machine, same
environment...etc)
Now, this seems not only counterintutive but rather odd infact.
So....has anyone else experienced this? Has anyone else actually ran
any speed tests on bound versus unbound programs? If so, what were
the results? Does anyone care to begin a series of new speed tests on
this phenomenon?
Personal Note: I have a feeling that the differences will be too
slight to notice on small programs...Larger, more complex proggies, I
believe, will be needed to run the speed tests...

*clinks glass*
Here's to starting a new thread :)
l8tr Mike



--------------------------------------
If it wasn't for typos,
I'd never get any coding done at all.
;)

new topic     » topic index » view message » categorize

2. Re: Binding Speed

Mike wrote:
> I'm in the middle of writing a rather complex program and
> I wanted to beta test it on another computer, so I bound the
> program into an exe to transfer it over and run it.  When I did
> that the program seemed to bog down...
> Upon further investigation, I discovered that
> this bound version indeed ran -slower-
> (by a considerable percentage)
> than the unbound version (tested on the same machine,
> same environment...etc)

There is one situation that I can think of where
a bound program might run a bit slower than
the unbound version. That would be if you used
the "-hide_strings" option, that converts strings
"...." into equivalent sequences of numbers {.....}.

Although the two forms are logically equivalent,
there is an optimization that is only performed
on strings in the "...." form.

I think you'd have to have a "...." string converted to a
{....} string inside a critical loop to notice a difference.

If you don't hide the strings when you bind,
I'd be very surprised if you had any slow down at all.

There's also a weird effect that I've only seen once.
It has nothing to do with Euphoria, but on a Pentium
you can sometimes get an unfortunate combination
of memory addresses, such that not all of the
critical variables in the loop can be kept in the data
cache simultaneously. A trivial change to a program
can make this happen, or make it go away. I once
saw the performance of a Euphoria loop drop by a factor
of 6 all of a sudden, just because the variable addresses
changed slightly and competed for the same cache slot.

Regards,
     Rob Craig
     Rapid Deployment Software

new topic     » goto parent     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu