Jump to content
You must now use your email address to sign in [click for more info] ×

Need to load fonts in background.


Recommended Posts

I just timed it -- just starting up Affinity Photo -- almost all the time spent in reading fonts took 2minutes and 30 seconds.

 

I don't know how photoshop managed to come up in less than 20 seconds and still have a font list ready to present, but certainly fonts aren't usually the first thing needed in editing photos.  I have a relatively fast machine -- 8 cores (hyperthreading disabled), 96G of 2666Mz memory, all running off a RAID0 of 4 SSD's -- oh, and with a GTX 1080, yet it still took over 2 minutes just to read my fonts (have about 10k font files,   Some are variations in a family some _MAY_ even be duplicates, though Windows weeds those out in presenting the fonts.

Less useful might be only loading the fonts when one goes to access them -- the least disruptive would be them loading in a separate thread in background.

 

When I was drawing, I tended to work in short spurts, but starting/stopping photoshop often because I might want to do some other memory intensive task and it would take (configurable) about 70G with history states and such.  My larger drawings, I worked at around 7000x12000 and wouldshrink them down for sharing , but that allowed me to get finer detail.

 

Anyway, the font stuff prevents me from using affinity much cuz by the time it has loaded the fonts, I'm on to something else.

 

(sigh)....

thanks...

Astara

 

 

Link to comment
Share on other sites

Um...I'm not using a font program for any thing else to function normally and read fonts in <30 seconds.

That's the problem: most programs take less than 15 seconds to read in the font list  and they only do it when I want to change the font -- not at program startup.  Vim takes about 20 seconds, Windows < 10sec on
Win7SP1x64. 

That Affinity Photo takes over 7 times longer than any other program and does it every time at startup, blocks use of the product. 

Anything that blocks using the product is a high severity bug. 

If other programs took that long, I would probably think I had too many font files, but the last time I had programs take that long on my fonts was under Windows XP over 15 years ago. 

Your attitude toward your customers is unfortunate.

 

 

Link to comment
Share on other sites

  • 1 year later...

I noted in reviewing a trace @ startup due to another problem, that in reading in the fonts,

1) many or most were read in more than once, some more than 2 times.  I don't know exactly why this is the case, I thought I knew, and thought man were links to others with one being a short name and another being a long name, but in examining the files more closely, out of 11082 files in  the win font dir, 10353 were unique (729 files were links to another file).  One source of many fonts -- many fonts come in different styles, as well as supporting different locales (most of those from pre unicode days).  Windows will group those together which brings the total down to about 3900.

2) a file-system stat is done when each font is read in -- the fonts are on the same filesystem -- it only needs to be read once and the information could be cached.

3) the delay gets really bad when you start more than one serif/affinity at the same time (like designer and photo).

4) Isn't it possible to cache the font information in a more easily read format and update the cache if there are any new fonts or changes that have a more recent modification time than those in the cache?  If all the font information was in 1 or a few large files, this would allow reading in all font information in very few I/O operations with the limiting factor being the storage device.

5) all fonts are read in sequentially.  Even though reading the fonts is a cpu-bound activity, multiple CPUs idle while the fonts are processed one at a time.  The highest I/O rate was 2MB/s on an SSD easily capable of over 400MB/s.  Since font-processing time is heavily cpu bound, using multiple cores could really help.  Combine parallel processing with doing it in background and the possibility of using a cached copy when fonts are unchanged, the potential for speedup is large.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use | Privacy Policy | Guidelines | We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.