Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1179129 > unrolled thread
| Started by | Andrew Morton <akpm@linux-foundation.org> |
|---|---|
| First post | 2015-07-08 00:40 +0200 |
| Last post | 2015-07-08 02:10 +0200 |
| Articles | 3 — 2 participants |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
Re: [RFCv3 0/5] enable migration of driver pages Andrew Morton <akpm@linux-foundation.org> - 2015-07-08 00:40 +0200
Re: [RFCv3 0/5] enable migration of driver pages Andrew Morton <akpm@linux-foundation.org> - 2015-07-08 02:10 +0200
Re: [RFCv3 0/5] enable migration of driver pages Gioh Kim <gioh.kim@lge.com> - 2015-07-08 02:10 +0200
| From | Andrew Morton <akpm@linux-foundation.org> |
|---|---|
| Date | 2015-07-08 00:40 +0200 |
| Subject | Re: [RFCv3 0/5] enable migration of driver pages |
| Message-ID | <pJJGW-32H-29@gated-at.bofh.it> |
On Tue, 7 Jul 2015 13:36:20 +0900 Gioh Kim <gioh.kim@lge.com> wrote: > From: Gioh Kim <gurugio@hanmail.net> > > Hello, > > This series try to enable migration of non-LRU pages, such as driver's page. > > My ARM-based platform occured severe fragmentation problem after long-term > (several days) test. Sometimes even order-3 page allocation failed. It has > memory size 512MB ~ 1024MB. 30% ~ 40% memory is consumed for graphic processing > and 20~30 memory is reserved for zram. > > I found that many pages of GPU driver and zram are non-movable pages. So I > reported Minchan Kim, the maintainer of zram, and he made the internal > compaction logic of zram. And I made the internal compaction of GPU driver. > > They reduced some fragmentation but they are not enough effective. > They are activated by its own interface, /sys, so they are not cooperative > with kernel compaction. If there is too much fragmentation and kernel starts > to compaction, zram and GPU driver cannot work with the kernel compaction. > > ... > > This patch set is tested: > - turn on Ubuntu 14.04 with 1G memory on qemu. > - do kernel building > - after several seconds check more than 512MB is used with free command > - command "balloon 512" in qemu monitor > - check hundreds MB of pages are migrated OK, but what happens if the balloon driver is not used to force compaction? Does your test machine successfully compact pages on demand, so those order-3 allocations now succeed? Why are your changes to the GPU driver not included in this patch series? -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [next] | [standalone]
| From | Andrew Morton <akpm@linux-foundation.org> |
|---|---|
| Date | 2015-07-08 02:10 +0200 |
| Message-ID | <pJL61-42D-3@gated-at.bofh.it> |
| In reply to | #1179129 |
On Wed, 08 Jul 2015 09:02:59 +0900 Gioh Kim <gioh.kim@lge.com> wrote: > > > 2015-07-08 ______ 7:37___ Andrew Morton ___(___) ___ ___: > > On Tue, 7 Jul 2015 13:36:20 +0900 Gioh Kim <gioh.kim@lge.com> wrote: > > > >> From: Gioh Kim <gurugio@hanmail.net> > >> > >> Hello, > >> > >> This series try to enable migration of non-LRU pages, such as driver's page. > >> > >> My ARM-based platform occured severe fragmentation problem after long-term > >> (several days) test. Sometimes even order-3 page allocation failed. It has > >> memory size 512MB ~ 1024MB. 30% ~ 40% memory is consumed for graphic processing > >> and 20~30 memory is reserved for zram. > >> > >> I found that many pages of GPU driver and zram are non-movable pages. So I > >> reported Minchan Kim, the maintainer of zram, and he made the internal > >> compaction logic of zram. And I made the internal compaction of GPU driver. > >> > >> They reduced some fragmentation but they are not enough effective. > >> They are activated by its own interface, /sys, so they are not cooperative > >> with kernel compaction. If there is too much fragmentation and kernel starts > >> to compaction, zram and GPU driver cannot work with the kernel compaction. > >> > >> ... > >> > >> This patch set is tested: > >> - turn on Ubuntu 14.04 with 1G memory on qemu. > >> - do kernel building > >> - after several seconds check more than 512MB is used with free command > >> - command "balloon 512" in qemu monitor > >> - check hundreds MB of pages are migrated > > > > OK, but what happens if the balloon driver is not used to force > > compaction? Does your test machine successfully compact pages on > > demand, so those order-3 allocations now succeed? > > If any driver that has many pages like the balloon driver is forced to compact, > the system can get free high-order pages. > > I have to show how this patch work with a driver existing in the kernel source, > for kernel developers' undestanding. So I selected the balloon driver > because it has already compaction and working with kernel compaction. > I can show how driver pages is compacted with lru-pages together. > > Actually balloon driver is not best example to show how this patch compacts pages. > The balloon driver compaction is decreasing page consumtion, for instance 1024MB -> 512MB. > I think it is not compaction precisely. It frees pages. > Of course there will be many high-order pages after 512MB is freed. Can the various in-kernel GPU drivers benefit from this? If so, wiring up one or more of those would be helpful? -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Gioh Kim <gioh.kim@lge.com> |
|---|---|
| Date | 2015-07-08 02:10 +0200 |
| Message-ID | <pJL61-42D-5@gated-at.bofh.it> |
| In reply to | #1179129 |
2015-07-08 오전 7:37에 Andrew Morton 이(가) 쓴 글: > On Tue, 7 Jul 2015 13:36:20 +0900 Gioh Kim <gioh.kim@lge.com> wrote: > >> From: Gioh Kim <gurugio@hanmail.net> >> >> Hello, >> >> This series try to enable migration of non-LRU pages, such as driver's page. >> >> My ARM-based platform occured severe fragmentation problem after long-term >> (several days) test. Sometimes even order-3 page allocation failed. It has >> memory size 512MB ~ 1024MB. 30% ~ 40% memory is consumed for graphic processing >> and 20~30 memory is reserved for zram. >> >> I found that many pages of GPU driver and zram are non-movable pages. So I >> reported Minchan Kim, the maintainer of zram, and he made the internal >> compaction logic of zram. And I made the internal compaction of GPU driver. >> >> They reduced some fragmentation but they are not enough effective. >> They are activated by its own interface, /sys, so they are not cooperative >> with kernel compaction. If there is too much fragmentation and kernel starts >> to compaction, zram and GPU driver cannot work with the kernel compaction. >> >> ... >> >> This patch set is tested: >> - turn on Ubuntu 14.04 with 1G memory on qemu. >> - do kernel building >> - after several seconds check more than 512MB is used with free command >> - command "balloon 512" in qemu monitor >> - check hundreds MB of pages are migrated > > OK, but what happens if the balloon driver is not used to force > compaction? Does your test machine successfully compact pages on > demand, so those order-3 allocations now succeed? If any driver that has many pages like the balloon driver is forced to compact, the system can get free high-order pages. I have to show how this patch work with a driver existing in the kernel source, for kernel developers' undestanding. So I selected the balloon driver because it has already compaction and working with kernel compaction. I can show how driver pages is compacted with lru-pages together. Actually balloon driver is not best example to show how this patch compacts pages. The balloon driver compaction is decreasing page consumtion, for instance 1024MB -> 512MB. I think it is not compaction precisely. It frees pages. Of course there will be many high-order pages after 512MB is freed. > > Why are your changes to the GPU driver not included in this patch series? My platform is ARM-based and GPU is ARM-Mali. The driver is not open source. It's too bad that I cannot show effect of this patch with the GPU driver. > > > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web