On Mon, Nov 07, 2016 at 03:46:02PM +0800, Chen Feng wrote: > > > On 2016/11/7 15:44, Chen Feng wrote: > > On 2016/11/7 15:27, Joonsoo Kim wrote: > >> On Mon, Nov 07, 2016 at 03:08:49PM +0800, Chen Feng wrote: > >>> > >>> > >>> On 2016/11/7 14:15, Joonsoo Kim wrote: > >>>> On Tue, Nov 01, 2016 at 03:58:32PM +0800, Chen Feng wrote: > >>>>> Hello, I hava a question on cma zone. > >>>>> > >>>>> When we have cma zone, cma zone will be the highest zone of system. > >>>>> > >>>>> In android system, the most memory allocator is ION. Media system will > >>>>> alloc unmovable memory from it. > >>>>> > >>>>> On low memory scene, will the CMA zone always do balance? > >>>> > >>>> Allocation request for low zone (normal zone) would not cause CMA zone > >>>> to be balanced since it isn't helpful. > >>>> > >>> Yes. But the cma zone will run out soon. And it always need to do balance. > >>> > >>> How about use migrate cma before movable and let cma type to fallback > >>> movable. > >>> > >>> https://www.mail-archive.com/linux-kernel@vger.kernel.org/msg1263745.html > >> > >> ZONE_CMA approach will act like as your solution. Could you elaborate > >> more on the problem of zone approach? > >> > > > > The ZONE approach is that makes cma pages in a zone. It can cause a higher > > swapin/out > > than use migrate cma first.
Interesting result. I should look at it more deeply. Could you explain me why the ZONE approach causes a higher swapin/out? > > > > The higher swapin/out may have a performance effect to application. The > > application may > > use too much time swapin memory. > > > > You can see my tested result attached for detail. And the baseline is > > result of [1]. > > > > > My test case is run 60 applications and alloc 512MB ION memory. > > Repeat this action 50 times Could you tell me more detail about your test? Kernel version? Total Memory? Total CMA Memory? Android system? What type of memory does ION uses? Other statistics? Etc... If it tested on the Android, I'm not sure that we need to consider it's result. Android has a lowmemory killer which is quitely different with normal reclaim behaviour. Thanks.