On Wed, Mar 11, 2015 at 1:28 AM, Sven Van Caekenberghe <[email protected]> wrote:

> +1
>
> I have a lot of respect for you taking such a long path, for being patient
> & persistent.
>

Thanks.  It was like a bone I just had to keep chewing until I got the
marrow.

Actually the changes themselves weren't so hard. The hard part was to
change-it-on-the-fly with the CI and Integration tools at arms length -
which anyway led to learning more about those systems.

Future changes should be easier.
cheers -ben


>
> > On 10 Mar 2015, at 18:06, Max Leske <[email protected]> wrote:
> >
> > Great work Ben!
> >
> >> On 10 Mar 2015, at 17:44, Ben Coman <[email protected]> wrote:
> >>
> >> This is solved with the integration of issue 14353 into build 40548.
> >>
> >> On an OSX > Virtualbox > LinuxMint17 with the following script...
> >>     for i in `seq 1 10` ;
> >>     do
> >>         (time $MYPHAROVM  $MYIMAGE \
> >>              eval "(Delay forSeconds: 1) wait") 2>&1 > /dev/null | grep
> real
> >>     done
> >>
> >> Build 40547 gives...
> >> real 0m1.288s
> >> real 0m1.256s
> >> real 0m1.258s
> >> real 0m0.254s
> >> real 0m0.269s
> >> real 0m0.274s
> >> real 0m0.260s
> >> real 0m0.245s
> >> real 0m0.254s
> >> real 0m1.260s
> >>
> >> Build 40548 gives...
> >> real 0m1.285s
> >> real 0m1.259s
> >> real 0m1.260s
> >> real 0m1.260s
> >> real 0m1.280s
> >> real 0m1.267s
> >> real 0m1.265s
> >> real 0m1.293s
> >> real 0m1.267s
> >> real 0m1.278s
> >>
> >> HTH,
> >> cheers -ben
> >>
> >>
> >> On Mon, Mar 2, 2015 at 12:08 PM, Ben Coman <[email protected]> wrote:
> >>
> >> This is not going to get as much use before Release as I had hoped, so
> I refactored it to be able to easily switch between the existing and new
> code by making two schedulers...
> >> * DelayMillisecondScheduler - essentially the existing code
> >> * DelayMicrosecondScheduler - based off new primitive
> >> which are switchable on the fly via a System Setting.
> >>
> >> To try to make it easier to review, I've separated changes into three
> stages:
> >> * SLICE.10 accumulates changes the Delay class to add some better
> semantics to instance variables and method renames
> >> * SLICE.14 accumulates changes to split DelayScheduler into two
> subclasses for the two different schedulers (use the incoming code in the
> merge conflict)
> >> * SLICE.17 accumulates changes to modify DelayMicrosecondScheduler,
> plus a couple of polishing things.
> >>
> >> I've added some review notes to the issue
> >> https://pharo.fogbugz.com/default.asp?14353
> >>
> >> fyi, Tomorrow I start a new job at Buewaters Power Station [1] (2 x
> 208MW generators).  They've been without an electrical engineer for three
> months leading up to their annual outage in five weeks, so I'm probably
> flat there playing catch-up for the next two months.  Today (GMT+8) would
> be a really good time to engage me with feedback and queries.  I'll try to
> hang out on IRC as much as possible to speed up discussion.
> >>
> >> [1] http://www.bluewatersps.com.au/
> >>
> >> cheers -ben
> >>
> >>
> >>
> >> On Mon, Mar 2, 2015 at 3:09 AM, stepharo <[email protected]> wrote:
> >>
> >> Please help us to push ben code.
> >>
> >>
> >>
> >> -------- Message transféré --------
> >> Sujet :      Re: [Pharo-dev] Super fast delay
> >> Date :       Wed, 25 Feb 2015 02:00:25 +0800
> >> De : Ben Coman <[email protected]>
> >> Répondre à : Pharo Development List <[email protected]>
> >> Pour :       Pharo Development List <[email protected]>
> >>
> >>
> >> I've updated this fix for build 40504.  The following slice is read for
> review.
> >>
> SLICE-Issue-14353-Delay-refactoring-part-2---change-from-milliseconds-to-microseconds-BenComan.6
> >>
> >> Even if you do not feel up to reviewing the code, it would be good for
> a few people to merge this to get a broad sample of symptoms fixed or
> caused.
> >>
> >> 1. Open up Monticello and get ready to load the above slice from
> Pharo4Inbox repository.
> >> 2. In a workspace, do "Delay stopTimerEventLoop".   Ignore the
> #intercyclePause: message that stream by.
> >> 3. Merge slice.
> >> 4. In a workspace, do "Delay startTimerEventLoop".  The stream of
> #interCyclePause message should fade.
> >> 5. Operate as you normally would. Test some cases that previously
> caused an error.
> >>
> >> cheers -ben
> >>
> >> On Thu, Feb 19, 2015 at 11:17 PM, Ben Coman <[email protected]>
> wrote:
> >>
> >>
> >> On Thu, Feb 19, 2015 at 9:50 PM, Ben Coman <[email protected]> wrote:
> >>
> >>
> >> On Mon, Feb 16, 2015 at 4:01 PM, Holger Hans Peter Freyther <
> [email protected]> wrote:
> >> On Thu, Oct 30, 2014 at 06:32:48PM -0400, stepharo wrote:
> >>
> >> Good Morning Ben, Stef,
> >>
> >> > We really need people to have a look at the code of Ben.
> >>
> >> I downloaded a Pharo-4 image today and executed:
> >>
> >> To clarify.  The fix is not yet in Pharo-4.
> >>
> >>
> >> time pharo --nodisplay --headless ./Pharo-40490.image  eval "(Delay
> forSeconds: 5) wait"
> >> a Delay(5000 msecs)
> >>
> >> real    0m1.254s
> >> user    0m1.192s
> >> sys     0m0.060s
> >>
> >>
> >> So the first delay doesn't appear to wait the five seconds. I
> >> would like to work on kqueue/epoll and remove polling and it
> >> looks this involves code with Delay as well. I wonder if you
> >> could provide an overview of what needs to be done and what is
> >> done?
> >>
> >> The pre-requisite issue 14942 is waiting for review. It really should
> take only 10 minutes to review...
> >> 1. In latest Pharo 4, inspect "Delay newCodeEnabled" and observe that
> it is "true".
> >> 2. Open the Pharo4Inbox and filter on 14942.
> >> 3. Select newest slice and <Merge>.
> >> 4. Observe the diff shows all "false" parts removed (it doesn't really
> get much simpler than this to review).
> >> 5. Click <merge> to finish.
> >> 6. Observe the image continues to run smoothly.
> >> 7. Report your observations on
> https://pharo.fogbugz.com/default.asp?14942
> >>
> >> btw, after the cleanup done by Issue 14942, Issue 14966 can delete ten
> class variables from Delay.
> >> When 14942 is integrated, can 14966 be integrated very soon after
> that.  I am basing the change of Delay to microsecond delay off 14966.
> >> cheers -ben
> >>
> >>
> >>
> >>
> >> I need to refresh myself on the fix I did back in 2-Dec.  Its
> languished while some support infrastructure was added to help the system
> ride-through the change.
> >>
> >> cheers -ben
> >>
> >>
> >>
> >>
> >>
> >
>
>
>

Reply via email to