WES7P + FBWF boot time delay

Hello,

I have a WES7P (Windows embedded 7 SP1, x64) image created off MS base build & latest windows updates. Additionally, it has 10 language packs installed (including Chinese, Japanese, Korean, Spanish, French, German, Italian, Enlish UK, English US, Taiwanese). It uses Microsoft file-based write filter (FBWF) to prevent writes to flash.
[MS documentation of FBWF here: https://msdn.microsoft.com/en-us/library/ff794219(v=winembedded.60).aspx]

Observations:
(i) The boot time for this WES7P OS is ~79 seconds. So (MSBase+updates+10language packs) = 79 seconds.
(ii) If only one language pack (English or French or any other) is installed, the boot time comes down to ~55 seconds. (MS-Base+updates+1 language pack =55 seconds)
(iii) Keeping all 10 language-packs, if the %windir%\WinSxS\Manifests folder is added to FBWF exclusion list, the boot time comes down to 44 seconds. (MS-Base+updates+10 language packs + Manifests folder in exclusion list = 44 seconds)

I’m trying to get the boot time down to 50 seconds while keeping the 10 LPs installed & not adding anything to exclusion list.

Hooking filemon /procmon /WinDbg has not yielded anything promising in terms of file open/closes. Having additional language packs does seem to result in files/directories of multiple languages being opened/closed.

I gathered a list of every single file/directory under the \Manifests folder accessed during boot process. Instead of adding the entire \Manifests directory to exclusion, I added this list of files/folders to exclusion list. This did NOT give me any boot time benefit, the boot time remained at 79 seconds.

Any ideas what may be going on? Suggestions / pointers appreciated.
-S.

Who is your embedded OEM distributor?
What hardware is this running on / Why does your best boot scenario suck so bad?

How did you configure your FBWF? Offline or with DISM?
Did you try disabling Last Access Time Stamps or Prefect as per:
https://msdn.microsoft.com/en-us/library/ff795009(v=winembedded.60).aspx

What do your FBWF performance results look like when you do:
fbwfmgr /overlaydetail

Have you configured any exclusions for the FBWF? Registry, Users directory, etc.?

Thanks for the response, Shane. Answers to the questions towards the end of this response.

I understand faster h/w, leaner OS etc. is always an option. For the purpose of this discussion:
(i) I’d like to point out that all of these parameters (h/w, OS, s/w, RAM, entries in exclusion etc.) were exactly the same when I took my readings. The only variables was Language packs & the one addition to exclusion list. So why this difference in boot times?

(ii) I’m hoping to gain some insight on the behavior with FBWF & language packs. What extra processing overhead is added with additional language packs? How is this related to the \WinSxS\Manifests (Windows component store) folder?

OEM Distributor: We’re picking up the base image from MS, and adding necessary software to it.
h/w: 2nd Generation AMD Embedded G-Series SoC, 4gb RAM.
FBWF configured using DISM.
I’ll try disabling the lastAccess time & prefetch, but MSDN seems to suggest it is relevant only for EWF, not FBWF.
I assume you meant /disable, not /overlaydetail. With FBWF disabled, the boot time is ~37 seconds.

-S.

Writing back to confirm that lastAccess time & prefetch was already disabled, so no gain possible there.

I don’t have as much experience with the FBWF. I have more with the EWF.

I asked about /overlaydetail to see if you were doing additional filtering that could help explain a difference.

I asked about your distributor because depending on who it is they be able to offer you some support. It’s my understanding that you have to get licensing for embedded through the embedded channel which requires you go through an embedded distributor. I would recommend contacting them.