All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC PATCH v2 0/10] makedumpfile: cyclic processing to keep memory consumption.
@ 2012-06-29  2:13 Atsushi Kumagai
  2012-06-29  2:16 ` [RFC PATCH v2 1/10] Add flag to enable cyclic processing Atsushi Kumagai
                   ` (11 more replies)
  0 siblings, 12 replies; 34+ messages in thread
From: Atsushi Kumagai @ 2012-06-29  2:13 UTC (permalink / raw)
  To: kexec

Hello,

I improved prototype of cyclic processing as version 2.
If there is no objection to basic idea, I want to consider the things
related to performance as next step. (Concretely, buffer size and the patch set
HATAYAMA-san sent a short time ago.) 


Version 1:
 
  http://lists.infradead.org/pipermail/kexec/2012-May/006363.html

Introduction:

 - The purpose of cyclic processing is to fix memory consumption.
 - cyclic processing doesn't use temporary bitmap file, store partial bitmap data
   in memory only for each cycle instead.
 - The prototype was passed the regression test which is used by every release.

How to use:
  
  Specify '--cyclic' option, then makedumpfile works cyclically.

Example:

    $ makedumpfile --cyclic -cd31 vmcore testdump.cd31
    Copying data                       : [  5 %]
    Excluding free pages               : [100 %]
    ...
    Excluding free pages               : [100 %]
    Copying data                       : [100 %]

    The dumpfile is saved to testdump.cd31.

    makedumpfile Completed.

Changelog:

  v1 =>  v2:

    - Fix the process of increasing target region.
    - Change method for kdump-compressed format.
    - Add support for ELF format.
    - Add support for --split option.
 
Memory consumption:

  I measured the RSS of makedumpfile with ps(1) as memory consumption.

    a. working for 5G memory:
                 |                 RSS [KB]                
                 |  no option  |    -cd31    |    -Ed31
      -----------+-------------+-------------+-------------
        v1.4.4   |     1108    |     1184    |      868
        cyclic   |     2976    |     3252    |     2984

        
    b. working for 8G memory:
                 |                 RSS [KB]                
                 |  no option  |    -cd31    |    -Ed31
      -----------+-------------+-------------+-------------
        v1.4.4   |     1108    |     1180    |      864
        cyclic   |     2972    |     3256    |     2984


  This result seems to say that v1.4.4 is better than cyclic, but the size
  of temporary bitmap file grows based on memory size. The increasing rate 
  can be represented as (memory size / 4K / 8 ) * 2.

     memory size [GB] |  bitmap size [KB]
    ------------------+------------------
            5         |       320
            8         |       512
           ...        |       ...
          1,024       |      65,536

  Even above size will be counted as memory consumption, if the system 
  doesn't mount rootfs. This is the cause of the memory consumption issue
  we discussed.

  On the other hand, cyclic processing doesn't use temporary bitmap files,
  all memory consumption will be appeared in RSS.
  The memory consumption to store bitmap will be kept around 2MB(BUFSIZE_CYCLIC * 2).
  

Thanks
Atsushi Kumagai

_______________________________________________
kexec mailing list
kexec@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kexec

^ permalink raw reply	[flat|nested] 34+ messages in thread

end of thread, other threads:[~2012-08-30  7:37 UTC | newest]

Thread overview: 34+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-06-29  2:13 [RFC PATCH v2 0/10] makedumpfile: cyclic processing to keep memory consumption Atsushi Kumagai
2012-06-29  2:16 ` [RFC PATCH v2 1/10] Add flag to enable cyclic processing Atsushi Kumagai
2012-06-29  2:17 ` [RFC PATCH v2 2/10] Prepare partial bitmap for " Atsushi Kumagai
2012-06-29  2:17 ` [RFC PATCH v2 3/10] Change the function related to excluding unnecessary pages Atsushi Kumagai
2012-06-29  2:18 ` [RFC PATCH v2 4/10] Add function to update target region Atsushi Kumagai
2012-06-29  2:19 ` [RFC PATCH v2 5/10] Add function to get num_dumpable for cyclic processing Atsushi Kumagai
2012-06-29  2:21 ` [RFC PATCH v2 6/10] Implement the main routine of cyclic processing for kdump-compressed format Atsushi Kumagai
2012-06-29  2:22 ` [RFC PATCH v2 7/10] Add function to get number of PT_LOAD for cyclic processing Atsushi Kumagai
2012-06-29  2:23 ` [RFC PATCH v2 8/10] Implement the main routine of cyclic processing for ELF format Atsushi Kumagai
2012-06-29  2:24 ` [RFC PATCH v2 9/10] Enabling --split option with cyclic processing Atsushi Kumagai
2012-06-29  2:25 ` [RFC PATCH v2 10/10] Change num_dumped value to global for debug messages Atsushi Kumagai
2012-07-02 12:39 ` [RFC PATCH v2 0/10] makedumpfile: cyclic processing to keep memory consumption Vivek Goyal
2012-07-04  5:54   ` Atsushi Kumagai
2012-07-04  8:52     ` HATAYAMA Daisuke
2012-07-11  5:23       ` HATAYAMA Daisuke
2012-07-13  0:36         ` Atsushi Kumagai
2012-07-13  5:18           ` HATAYAMA Daisuke
2012-07-13  8:10             ` Atsushi Kumagai
2012-07-18  0:57               ` HATAYAMA Daisuke
2012-08-06 20:47 ` Vivek Goyal
2012-08-07  7:31   ` HATAYAMA Daisuke
2012-08-10  8:39     ` HATAYAMA Daisuke
2012-08-10 14:36       ` Vivek Goyal
2012-08-14 11:55         ` HATAYAMA Daisuke
2012-08-15  6:27           ` Atsushi Kumagai
2012-08-15 13:31             ` Vivek Goyal
2012-08-20  0:12             ` HATAYAMA Daisuke
2012-08-29  2:50             ` HATAYAMA Daisuke
2012-08-29 12:35               ` Vivek Goyal
2012-08-30  0:55                 ` HATAYAMA Daisuke
2012-08-30  6:29                   ` Atsushi Kumagai
2012-08-08  5:14   ` Atsushi Kumagai
2012-08-08 13:25     ` Vivek Goyal
2012-08-09  6:44       ` Atsushi Kumagai

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.