Is there any way to speed up the initial caching of forms on first load per session?

I’d imagine this has come up before. In our DT environment,initial form load is obnoxiously slow - 20 to 30 seconds per screen for the first time, per user session.

Is there any way I can configure any of the following to speed this up:

  • Local form cache with a check for a new form version before re-loading
  • On-prem hosted form cache that receives push updates from Epicor
  • Background form caching per session on opening the client for most frequently used forms so they all cache at once?
  • other?

This is the users biggest complaint about the DT setup. 90% of “Epicor is slow” relate to this load, which for most users is under 5 forms per day but that 2-3 minutes of load time is brutal.

What do you mean by “DT environment” ?

Edit:

Every form’s options includes a Memory Cache option

image

Since I enter developer mode often (which cannot be done on cached forms), I have this cleared. Not sure if there is a way to enabale that globally for all forms. Or if that would even matter.

It won’t be “faster”, but if you go to Tools > Options on the form, you can check Memory Cache. This will pre-load the form when the user first logs in.
Be aware that:

  1. This should only be done in Production where the customization doesn’t change often
  2. The more forms you cache, the more memory Epicor will take
  3. It may be your personalization that is trying to be cached. If you don’t need it, delete it.
  4. Windows has a memory limit per application and you could run out of memory without even opening a screen if you have too many forms opened and/or cached
1 Like

DT = Dedicated tenancy. I’m not sure if it makes a difference or not for the initial load speeds. We have great connectivity to the internet but it seems to drag on that first access per user.

The forms are very fast after initial load, they pop right back up. They take 20-30 seconds to load the first time.

Does every memory cached form get loaded once when the user first logs in? This could be a solution that would help if so – I would just have to tell people to open Epicor then go get coffee, etc.

//edit: I think they’ve changed the name since we signed on. This may be part of the Epicor Public Cloud now?

Memory Cache will not help the First Time per session load time and if you are okay with the performance after the first time, don’t use the Memory Caching.

There are two settings that can help and they are in the Client Sysconfig file. They are:

<MaxBOMRU value="100" />
<MaxClssAttrMRU value="20" />

I suggest that you set the first in the 80 to 100 range and the second around 50 (20 is probably too low for most users).

The Client uses those settings to “tune itself” so that BO Security settings and Dataset Extended Property settings are loaded in one call while the Menu loads. Using the settings above, one call would be made to get BO Security for 100 BOs and one call would be made to get the Extended Props for 20 datasets. That data is then loaded into the Client Memory so that it does not have to fetched from the Server again. If that data is not already in memory, it is loaded one by one during the first load of a form. If a form References 10 Business Objects (not that unusual) ten separate requests for the Security information for each BO would be made while the form loads and the same is true for the different Datasets referenced on the UI.

The list of which BOs and which Datasets are commonly referenced by a user is maintained in the Client Disk Cache and it is written out as the Client process terminates so upping the numbers will not have an immediate effect. The user needs to run for awhile, logout, and then on the next login - assuming no one cleared the cache - Menu load should be slower but first time form load should be faster for the commonly used forms.

In playing with this I see that we are not properly utilizing the Client Cache for the Customization and Personalization layering so I will have that reviewed but in the meantime, try upping the numbers on the settings above.

BTW - those settings (and many others) are discussed at Insights in the “Client Internals” sessions. I believe “early bird” pricing is still available…

7 Likes