260k is really nice for a small kernel!

On Tue, Aug 1, 2017 at 1:13 PM, Pavel Krivanek <pavel.kriva...@gmail.com> wrote:
>
>
> 2017-08-01 12:57 GMT+02:00 philippe.b...@highoctane.be
> <philippe.b...@gmail.com>:
>>
>> Massive.
>>
>> What is in the super small image?
>
>
> It is not super small. Currently it has about 5.3MB but it can be probably
> less if we will do some cleaning before the image saving. The size was not
> the priority but we are getting there.
> We already have an experimental reduced image with Hermes that is able to be
> bootstrapped under 2 minutes. The minimal system based on the current
> code-base that is able to be bootstrapped has about 260kB.
>
> -- Pavel
>
>
>>
>> Is Hermes going to be a generic binary content loader?
>>
>> Phil
>>
>> On Aug 1, 2017 12:36, "Stephane Ducasse" <stepharo.s...@gmail.com> wrote:
>>>
>>> Hi Pavel
>>>
>>> This is super excellent! IMPRESSIVE. An image without the compiler and
>>> a reloadable compiler.
>>> Super cool.
>>>
>>> Stef
>>>
>>>
>>> On Tue, Aug 1, 2017 at 11:57 AM, Pavel Krivanek
>>> <pavel.kriva...@gmail.com> wrote:
>>> > Hello,
>>> >
>>> > we are checking a huge pull request #177
>>> > (https://github.com/pharo-project/pharo/pull/177) that will change some
>>> > basics of the bootstrap process:
>>> >
>>> > Now we will bootstrap a smaller image that will not include
>>> > compiler/parser.
>>> > Compiler and related packages are exported and loaded using a binary
>>> > exporter named Hermes.
>>> > The compiler is then used to load FileSystem and Monticello. The rest
>>> > of the
>>> > bootstrap process will be the same as before.
>>> > As the result we will have faster bootstrap and better system
>>> > modularization
>>> > and possibilities.
>>> >
>>> > It required some modularization efforts:
>>> >
>>> > - simplified initialization scripts
>>> > - Use Zinc converters and encoders instead of FilePathEncoder and old
>>> > TextConverter
>>> > - Use Stdio instead of FileStream
>>> > - Using File instead of FileSystem
>>> > - Deprecated FileStream & childs (Moved to Deprecated70)
>>> > - Extracted Path classes to their on package: FileSystem-Path
>>> > - Moved OpalEncoders to their own package. They are required by the
>>> > runtime
>>> > (not only for compilation)
>>> > - Introduced AsciiCharset in the kernel to answer to #isLetter
>>> > #isUppercase
>>> > and so on without requiring full Unicode tables from the beginning
>>> > - Cleaning up a bit the full exception logging infrastructure (streams,
>>> > transcript, files, stack printing...)
>>> > - Split Ring methods required for system navigation to the
>>> > Ring-Navigation
>>> > package
>>> > - Remove usages of #translated in the kernel
>>> > - Refactored the bootstrapping classes to remove duplications
>>> > - Cleaning up dependencies in CompiledMethod>>printOn:
>>> > - fix path printing
>>> >
>>> > We need to merge these changes at once and of course it can cause some
>>> > conflicts with the existing pull requests or external code. Anyway, we
>>> > need
>>> > to merge it as soon as possible.
>>> >
>>> > So please, try to look at the PR and test the resultant image [1] to
>>> > avoid
>>> > some major problems.
>>> >
>>> > [1]
>>> >
>>> > https://ci.inria.fr/pharo/view/7.0/job/70-PR-Check-Load/lastSuccessfulBuild/artifact/bootstrap-cache/Pharo7.0-32bit-9c0691d.zip
>>> >
>>> > Cheers,
>>> > -- Pavel
>>> >
>>>
>

Reply via email to