I vaguely remember StrikeFonts being considered for removal once(??) but this seems a good reason to not do that, and eliminate the FreeType stuff for server-side deployment.
cheers -ben On Fri, Jul 28, 2017 at 3:14 AM, Stephane Ducasse <stepharo.s...@gmail.com> wrote: > This is really interesting. > I would be interested to see why ClassSessionHandler(FreeTypeSettings) > takes 2/3 of the computation. > Without it we would be 100 ms. > > Stef > > On Thu, Jul 27, 2017 at 2:49 PM, Sven Van Caekenberghe <s...@stfx.eu> > wrote: > > Hi, > > > > I instrumented WorkingSession with a log collection that holds timing > info for each #startUp: executed. In a clean Pharo 6 image, 62 were run. > Most of them resulted in a 0ms execution time (#millisecondsToRun: i.e. > they were faster than 1ms). Here is the list of the non zero ones: > > > > 1ms startup:true a ClassSessionHandler(ProcessorScheduler) > > 1ms startup:true a ClassSessionHandler(OSPlatform) > > 6ms startup:true a ClassSessionHandler(ExternalObject) > > 1ms startup:true a ClassSessionHandler(DiskStore) > > 5ms startup:true a ClassSessionHandler(SmalltalkImage) > > 9ms startup:true a ClassSessionHandler(DisplayScreen) > > 1ms startup:true a ClassSessionHandler(Cursor) > > 41ms startup:true a ClassSessionHandler(FT2Handle) > > 238ms startup:true a ClassSessionHandler(FreeTypeSettings) > > 1ms startup:true a ClassSessionHandler(WorldMorph) > > 14ms startup:true a ClassSessionHandler(OmSessionStore) > > > > For a total of 318ms > > > > I think being able to inspect the WorkingSession and see this list > (ordered, with timing info) would be generally useful (and low cost). Even > headless, we could access the list using eval. > > > > Sven > > > > PS: The code of SessionManager/WorkingSession was very readable, well > done Christophe ! > > > > > > > > > >