cordova-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andrew Grieve <agri...@chromium.org>
Subject Re: Why CLI & Plugman are so slow
Date Thu, 25 Jul 2013 17:54:49 GMT
Issues created.
https://issues.apache.org/jira/browse/CB-4398
https://issues.apache.org/jira/browse/CB-4397


On Thu, Jul 25, 2013 at 1:41 PM, Filip Maj <fil@adobe.com> wrote:

> Chalk it up as another issue.
>
> Feel free to help out with CLI/plugman tagged issues everyone. Lots of
> work there! ;)
>
> On 7/25/13 10:39 AM, "Anis KADRI" <anis.kadri@gmail.com> wrote:
>
> >xD. +1 for child_process because it comes with node too eh :)
> >
> >On Thu, Jul 25, 2013 at 10:36 AM, Filip Maj <fil@adobe.com> wrote:
> >> Changed your named to Gmail now huh Jesse?
> >>
> >> On 7/25/13 10:32 AM, "Gmail" <purplecabbage@gmail.com> wrote:
> >>
> >>>+1 to child_process or leave it slow.
> >>>
> >>>Sent from my iPhone
> >>>
> >>>On Jul 25, 2013, at 10:28 AM, Filip Maj <fil@adobe.com> wrote:
> >>>
> >>>> Yeah that¹s how a lot of the "hey this works native on windows"
> >>>>modules
> >>>>on
> >>>> npm works: they have to compile it D:
> >>>>
> >>>> On 7/25/13 10:26 AM, "Andrew Grieve" <agrieve@chromium.org> wrote:
> >>>>
> >>>>> just tried it, and it "does", but only if you have both python and
> >>>>>visual
> >>>>> studio installed on your machine. Guess it builds the .dll at npm
> >>>>>install
> >>>>> time :(
> >>>>>
> >>>>>
> >>>>> On Thu, Jul 25, 2013 at 1:23 PM, Anis KADRI <anis.kadri@gmail.com>
> >>>>>wrote:
> >>>>>
> >>>>>> https://github.com/rbranson/node-ffi
> >>>>>>
> >>>>>> looks like it does
> >>>>>>
> >>>>>> On Thu, Jul 25, 2013 at 10:14 AM, Filip Maj <fil@adobe.com>
wrote:
> >>>>>>> Does it work with Windows?
> >>>>>>>
> >>>>>>> On 7/25/13 10:11 AM, "Andrew Grieve" <agrieve@chromium.org>
wrote:
> >>>>>>>
> >>>>>>>> Looks like the fix is pretty easy:
> >>>>>>>>
> >>>>>>>> agrieve@agrieve-macbookpro ~/git/cordova/tmp$ time node
go3.js
> >>>>>>>> went 0 times
> >>>>>>>> went 10 times
> >>>>>>>> went 20 times
> >>>>>>>> went 30 times
> >>>>>>>> went 40 times
> >>>>>>>> went 50 times
> >>>>>>>> went 60 times
> >>>>>>>> went 70 times
> >>>>>>>> went 80 times
> >>>>>>>> went 90 times
> >>>>>>>> went 100 times
> >>>>>>>>
> >>>>>>>> real 0m0.444s
> >>>>>>>> user 0m0.266s
> >>>>>>>> sys 0m0.158s
> >>>>>>>>
> >>>>>>>>
> >>>>>>>> All I did was replace "shelljs" with "shelljs-ffi".
> >>>>>>>>
> >>>>>>>>
> >>>>>>>> On Thu, Jul 25, 2013 at 12:53 PM, Filip Maj <fil@adobe.com>
> wrote:
> >>>>>>>>
> >>>>>>>>> Cool, nice work.
> >>>>>>>>>
> >>>>>>>>> We could either try to contribute to shelljs or
rip it out and go
> >>>>>> all
> >>>>>>>>> child process all the time
> >>>>>>>>>
> >>>>>>>>> In any case I think this bench should be submitted
to shelljs
> >>>>>>>>>repo.
> >>>>>>>>> @r2r,
> >>>>>>>>> dude who maintains it, would probably like to know
> >>>>>>>>>
> >>>>>>>>> On 7/25/13 9:50 AM, "Andrew Grieve" <agrieve@chromium.org>
> wrote:
> >>>>>>>>>
> >>>>>>>>>> One reason: shelljs.exec()
> >>>>>>>>>>
> >>>>>>>>>> Did a test to see how many times I could execute
"true". 9
> >>>>>>>>>>seconds
> >>>>>> vs
> >>>>>>>>> .5
> >>>>>>>>>> seconds!
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> agrieve@agrieve-macbookpro ~/git/cordova/tmp$
time node
> >>>>>> shelljstest.js
> >>>>>>>>>> went 0 times
> >>>>>>>>>> went 10 times
> >>>>>>>>>> went 20 times
> >>>>>>>>>> went 30 times
> >>>>>>>>>> went 40 times
> >>>>>>>>>> went 50 times
> >>>>>>>>>> went 60 times
> >>>>>>>>>> went 70 times
> >>>>>>>>>> went 80 times
> >>>>>>>>>> went 90 times
> >>>>>>>>>> went 100 times
> >>>>>>>>>>
> >>>>>>>>>> real 0m8.873s
> >>>>>>>>>> user 0m10.941s
> >>>>>>>>>> sys 0m6.005s
> >>>>>>>>>> agrieve@agrieve-macbookpro ~/git/cordova/tmp$
time node
> >>>>>>>>>> child_processtest.js
> >>>>>>>>>> went 10 times
> >>>>>>>>>> went 20 times
> >>>>>>>>>> went 30 times
> >>>>>>>>>> went 40 times
> >>>>>>>>>> went 50 times
> >>>>>>>>>> went 60 times
> >>>>>>>>>> went 70 times
> >>>>>>>>>> went 80 times
> >>>>>>>>>> went 90 times
> >>>>>>>>>> went 100 times
> >>>>>>>>>>
> >>>>>>>>>> real 0m0.470s
> >>>>>>>>>> user 0m0.278s
> >>>>>>>>>> sys 0m0.228s
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> Here's the code:
> >>>>>>>>>> shelljstest.js
> >>>>>>>>>>
> >>>>>>>>>> var shjs = require('shelljs');
> >>>>>>>>>>> for (var i = 0; ; ++i) {
> >>>>>>>>>>>    shjs.exec('true');
> >>>>>>>>>>>    if ((i / 10 | 0) == i / 10) {
> >>>>>>>>>>>      console.log('went ' + i + ' times');
> >>>>>>>>>>>    }
> >>>>>>>>>>>    if (i == 100) {
> >>>>>>>>>>>      process.exit(0);
> >>>>>>>>>>>    }
> >>>>>>>>>>> }
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> child_processtest.js
> >>>>>>>>>>
> >>>>>>>>>> var child = require('child_process');
> >>>>>>>>>>> var i = 0;
> >>>>>>>>>>> function go() {
> >>>>>>>>>>>  child.exec('true', function() {
> >>>>>>>>>>>    ++i;
> >>>>>>>>>>>    if ((i / 10 | 0) == i / 10) {
> >>>>>>>>>>>      console.log('went ' + i + ' times');
> >>>>>>>>>>>    }
> >>>>>>>>>>>    if (i == 100) {
> >>>>>>>>>>>      process.exit(0);
> >>>>>>>>>>>    }
> >>>>>>>>>>>    go();
> >>>>>>>>>>>  });
> >>>>>>>>>>> }
> >>>>>>>>>>> go();
> >>>>
> >>
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message