I did that and it's not a huge amount, maybe 10-20%. We need to profile and see 
what else it's doing. Like I said, low hanging fruit are aplenty. 


> On Feb 1, 2017, at 12:37 AM, pet...@riseup.net wrote:
> 
>> On 2017-02-01 00:19, John Benediktsson wrote:
>> Part of the startup time is calling all of our "startup hooks", of 
>> which I
>> have 35 right now in my Factor instance, in all of these vocabularies:
>> 
>> {
>>    "alien"
>>    "destructors"
>>    "alien.strings"
>>    "io.backend"
>>    "source-files.errors"
>>    "compiler.units"
>>    "vocabs"
>>    "io.files"
>>    "vocabs.loader"
>>    "command-line"
>>    "threads"
>>    "cpu.x86.features"
>>    "io.thread"
>>    "core-foundation.run-loop"
>>    "environment"
>>    "io.backend.unix:signal-pipe-thread"
>>    "io.launcher"
>>    "random.unix"
>>    "bootstrap.random"
>>    "io.sockets:ipv6-supported?"
>>    "openssl"
>>    "tools.crossref"
>>    "cocoa"
>>    "io.files.temp"
>>    "tools.deprecation"
>>    "core-foundation"
>>    "vocabs.cache"
>>    "vocabs.refresh.monitor"
>>    "opengl.gl"
>>    "opengl"
>>    "ui"
>>    "core-text.fonts"
>>    "core-text"
>>    "tools.errors.model"
>>    "ui.tools.error-list"
>> }
>> 
>> I'm sure a lot of that could be delayed in smart ways to make startup 
>> time
>> faster, that's what I meant by low hanging fruit, but also not 
>> something
>> that anyone is working on right now.
>> 
>> Best,
>> John.
>> 
>>> On Mon, Jan 30, 2017 at 12:40 PM, <pet...@riseup.net> wrote:
>>> 
>>>> On 2017-01-30 18:14, Timothy Hobbs wrote:
>>>> If you are on linux, you might try this very new feature:
>>>> https://criu.org/Main_Page
>>>> 
>>>>> On 01/30/2017 17:29, Jim Mack wrote:
>>>>> You could also set up factor as a local web server, and send bash
>>>>> requests to it through a web page, and it would be able to accomplish
>>>>> them locally (or remotely) and report you the results.  It would be a
>>>>> quick round-trip cycle with great feedback and the ability to bookmark
>>>>> commands.
>>>>> 
>>>>> On Sun, Jan 29, 2017 at 1:39 PM, <pet...@riseup.net
>>>>> <mailto:pet...@riseup.net>> wrote:
>>>>> 
>>>>>>    On 2017-01-29 16:20, John Benediktsson wrote:
>>>>>> It would be nice to improve startup time. I imagine some low
>>>>> hanging
>>>>>> fruits if we looked deeply into it. I'll make a note to get that
>>>>>    on my
>>>>>> list, unless someone looks into it sooner.
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>>> On Jan 28, 2017, at 2:25 PM, pet...@riseup.net
>>>>>    <mailto:pet...@riseup.net> wrote:
>>>>>>> 
>>>>>>> I spend a lot of time writing small scripts, often in bash.
>>>>> That is
>>>>>>> becoming a more and more painful task as bash is a nice-enough
>>>>>>> language
>>>>>>> on the first look but in the end it seems to go out of it's way
>>>>> to
>>>>>>> trip
>>>>>>> you up with every character you type. I don't mean to rant, I
>>>>> know
>>>>>>> it's
>>>>>>> an old language that has to keep a lot of backward
>>>>>    compatibility and
>>>>>>> it
>>>>>>> actually still serves very well for what it was designed for,
>>>>>    as long
>>>>>>> as
>>>>>>> your script stays <100 lines. Still, there's a lot to be
>>>>> desired.
>>>>>>> 
>>>>>>> Factor is a cool language, it's very expressive, mature, has a
>>>>>    lot of
>>>>>>> libraries and has all sorts of tricks up its sleaves to bend it
>>>>> to
>>>>>>> your
>>>>>>> will (much like lisp in that regard). It would be a fun
>>>>>    experiment to
>>>>>>> write a library or EDSL (embedded DSL) for bash-like scripting.
>>>>>>> However
>>>>>>> there's a bone to be picked:
>>>>>>> 
>>>>>>> $ time bash -c ''
>>>>>>> bash -c ''  0.00s user 0.00s system 94% cpu 0.004 total
>>>>>>> 
>>>>>>> $ time factor-vm -e=''
>>>>>>> factor-vm -e=''  0.12s user 0.05s system 99% cpu 0.178 total
>>>>>>> 
>>>>>>> I know one can create a custom image and maybe cut down on the
>>>>>    startup
>>>>>>> a
>>>>>>> bit, but my question is - would it be possible to cut it down
>>>>> to
>>>>>>> bash's
>>>>>>> startup time *and* still have all the necessary vocabularies in
>>>>>    it? I
>>>>>>> don't want to know the startup time with a small image that has
>>>>>    like
>>>>>>> nothing in it, I can quickly test that myself. I'd need help to
>>>>>    answer
>>>>>>> -
>>>>>>> if you imagine the use case I'm talking about, include all the
>>>>>    vocabs
>>>>>>> that use case would need and make all other possible
>>>>>    optimizations (if
>>>>>>> there are) without sacrificing too much, can the startup reach
>>>>>    similar
>>>>>>> times?
>>>>>>> 
>>>>>>> --
>>>>>>> ------------
>>>>>>>  Peter Nagy
>>>>>>> ------------
>>>>>>> 
>>>>>>> 
>>>>> 
>>>>> ------------------------------------------------------------
>>> ------------------
>>>>>>> Check out the vibrant tech community on one of the world's most
>>>>>>> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
>>>>>>> _______________________________________________
>>>>>>> Factor-talk mailing list
>>>>>>> Factor-talk@lists.sourceforge.net
>>>>>    <mailto:Factor-talk@lists.sourceforge.net>
>>>>>>> https://lists.sourceforge.net/lists/listinfo/factor-talk
>>>>>    <https://lists.sourceforge.net/lists/listinfo/factor-talk>
>>>>>> 
>>>>>> 
>>>>> 
>>>>> ------------------------------------------------------------
>>> ------------------
>>>>>> Check out the vibrant tech community on one of the world's most
>>>>>> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
>>>>>> _______________________________________________
>>>>>> Factor-talk mailing list
>>>>>> Factor-talk@lists.sourceforge.net
>>>>>    <mailto:Factor-talk@lists.sourceforge.net>
>>>>>> https://lists.sourceforge.net/lists/listinfo/factor-talk
>>>>>    <https://lists.sourceforge.net/lists/listinfo/factor-talk>
>>>>> 
>>>>>    Hi John,
>>>>> 
>>>>>    you think you can reach similar startup times? That would be
>>>>> really
>>>>>    cool. I guess your todo list is rather long though.
>>>>> 
>>>>>    As a side note, are there other concatenative languages you know I
>>>>>    could
>>>>>    look at?
>>>>> 
>>>>>    --
>>>>>    ------------
>>>>>       Peter Nagy
>>>>>    ------------
>>>>> 
>>>>> 
>>>>> ------------------------------------------------------------
>>> ------------------
>>>>>    Check out the vibrant tech community on one of the world's most
>>>>>    engaging tech sites, SlashDot.org! http://sdm.link/slashdot
>>>>>    _______________________________________________
>>>>>    Factor-talk mailing list
>>>>>    Factor-talk@lists.sourceforge.net
>>>>>    <mailto:Factor-talk@lists.sourceforge.net>
>>>>>    https://lists.sourceforge.net/lists/listinfo/factor-talk
>>>>>    <https://lists.sourceforge.net/lists/listinfo/factor-talk>
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> ------------------------------------------------------------
>>> ------------------
>>>>> Check out the vibrant tech community on one of the world's most
>>>>> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
>>>>> 
>>>>> 
>>>>> _______________________________________________
>>>>> Factor-talk mailing list
>>>>> Factor-talk@lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/factor-talk
>>>> 
>>>> 
>>>> ------------------------------------------------------------
>>> ------------------
>>>> Check out the vibrant tech community on one of the world's most
>>>> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
>>>> _______________________________________________
>>>> Factor-talk mailing list
>>>> Factor-talk@lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/factor-talk
>>> 
>>> Thanks for the interesting links/ideas :)
>>> 
>>> --
>>> ------------
>>>   Peter Nagy
>>> ------------
>>> 
>>> ------------------------------------------------------------
>>> ------------------
>>> Check out the vibrant tech community on one of the world's most
>>> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
>>> _______________________________________________
>>> Factor-talk mailing list
>>> Factor-talk@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/factor-talk
>>> 
>> 
>> ------------------------------------------------------------------------------
>> Check out the vibrant tech community on one of the world's most
>> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
>> _______________________________________________
>> Factor-talk mailing list
>> Factor-talk@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/factor-talk
> 
> Is there any dumb way for me to test what would the startup time be have 
> I removed all the hooks? That would show what is the actual overhead all 
> the hooks bring.
> 
> -- 
> ------------
>   Peter Nagy
> ------------
> 
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
> _______________________________________________
> Factor-talk mailing list
> Factor-talk@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/factor-talk

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Factor-talk mailing list
Factor-talk@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/factor-talk

Reply via email to