I don't believe the Flash Player knows how to cache DataGrid item renderers. I can't think of any API Flex could use to get the player to cache something, but maybe I'm forgetting something.
IMO, the problem is as simple as: Flex will create 80 renderers * number of visible rows. Are all 100 rows visible? Let's say you have 25 visible rows. That is 2000 renderers. If the renderers are not simple DataGridItemRenderers then the total number of display objects is going to be more than 2000. AIUI, the player for each browser has rules about what it means to be a plugin for that browser. So I believe there are different ways to not only allocation memory in the various players, but also, to draw text and graphics, talk to the network, and share the browser process with other plugins. Now it could be that in Chrome the code to display text in 2000 display objects simply can run faster. It may or may not have to do with how much memory is allocated, but we do know there are differences and IE is often the slowest runner. So, fundamentally, the problem to be solved is simply: how to display the text you want to show the user with as few display objects as possible. Are all 80 columns visible? Are all 80 columns of equal importance? One way to cut down on the number of columns is to prioritize what columns are really important, and anything else can be shown some other way, like click on a "Details..." button in the last visible column to popup a dialog box. Another option is to create "views" of sets of columns and swap out sets of columns on-demand instead of having off-screen columns "just-in-case". AFAIK, there is no way to change how a player allocates memory, and also, memory usage as reported by the operating system may represent peak usage and not actual usage as the player allocates "large" blocks of memory and doles it out to itself in smaller chunks. There is some randomness to what small chunks end up in which blocks and you can have lots of sparsely-used blocks in some scenarios, and those don't get returned to the OS. HTH, -Alex On 12/8/17, 12:08 PM, "karis" <karis.ng1...@gmail.com> wrote: >Hi all, > >I'm working on a performance issue with a huge datagrid. ~80 columns, 100 >rows. >It's bearable slow in Chrome, slower in Edge, and slowest in IE 11. Using >Adobe Scout, I noticed Chrome allocates a whole lot more memory for >running >the .swf than Edge and IE 11 (800mb, 190mb, 100mb, respectively). And I >still have ample free CPU and Memory. >This explains the performance issue, if Chrome is caching more renderers >than IE, it would perform better. > >I contacted Microsoft support, who claims the memory allocated through the >flash player activex plugin, and not the browser. Is this true? Does >activex >have its own rules regarding memory allocation? > >I am wondering if there's any way to increase the memory allocation, be it >system parameters, or a code change to the flash application. And how are >the memory allocation logic differ between these 3 browser plugins, so I >may >have a clue on improving performance. > >Thanks! > > > >-- >Sent from: >https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fapache-fle >x-users.2333346.n4.nabble.com%2F&data=02%7C01%7Caharui%40adobe.com%7Ca74e8 >69d3dd14aff7e5908d53e862428%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C6 >36483668210143009&sdata=52Z1y0Ot19OObKgeYLU8Y%2BtgxCdud7b0Mds71opkXRQ%3D&r >eserved=0