From: Aki M Laukkanen <amlaukka@cc.helsinki.fi>
To: linux-mm@kvack.org
Subject: 2.4.0-test7-pre4-vm2 results
Date: Thu, 17 Aug 2000 01:43:26 +0300 (EET DST) [thread overview]
Message-ID: <Pine.OSF.4.20.0008170130550.7212-200000@sirppi.helsinki.fi> (raw)
[-- Attachment #1: Type: TEXT/PLAIN, Size: 1998 bytes --]
Hello,
I tested the patch with two workloads on 2x466 Celeron/128MB. Btw. I couldn't
trigger the SMP race with these tests. What kind of workload is needed?
* make -j30 bzImage
* bonnie++ -s 512
[amlaukka@stellar tmp]$ bon_csv2txt <stellar.pp.htv.fi-2.4.0-test7-pre4-vm
Version 1.00 ------Sequential Output------ --Sequential Input---Random-
-Per Chr- --Block-- -Rewrite- -Per Chr- --Block----Seeks--
Machine MB K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP
Unknown 512 6236 87 11975 18 4242 8 5217 66 9623 10 nan
-2147483648
------Sequential Create------ --------RandomCreate--------
-Create-- --Read--- -Delete-- -Create-- --Read----Delete--
files:max:min /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP
Unknown 30 129 98 +++++ 90 5484 99 130 98 +++++ 97 642 96
For comparison:
[amlaukka@stellar tmp]$ bon_csv2txt <stellar.pp.htv.fi-2.3.99-pre6-3
Version 1.00 ------Sequential Output------ --Sequential Input---Random-
-Per Chr- --Block-- -Rewrite- -Per Chr- --Block----Seeks--
Machine MB K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec%CP
Unknown 256 7484 100 24077 40 7602 15 7005 90 22186 29 nan
-2147483648
------Sequential Create------ --------RandomCreate--------
-Create-- --Read--- -Delete-- -Create-- --Read----Delete--
files:max:min /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec%CP
Unknown 30 125 99 +++++ 96 6043 100 127 99 +++++ 99 602 90
I also logged vmstat, date and cat /proc/zoneinfo every seconds. These logs
are available at
http://www.cs.helsinki.fi/Aki.Laukkanen/log.1.bz2 (make)
http://www.cs.helsinki.fi/Aki.Laukkanen/log.2.bz2 (bonnie++)
/proc/zoneinfo is a silly hack. Hopefully it's somewhat useful. See attached
patch. I haven't done much analyzing on these logs although there seems to
be gaps of several tens of seconds (indicating burstiness).
--
D.
[-- Attachment #2: Type: TEXT/PLAIN, Size: 2730 bytes --]
diff -urN linux-2.4.0-t7-p4-vm.bak/fs/proc/proc_misc.c linux-2.4.0-t7-p4-vm/fs/proc/proc_misc.c
--- linux-2.4.0-t7-p4-vm.bak/fs/proc/proc_misc.c Thu Aug 17 01:29:37 2000
+++ linux-2.4.0-t7-p4-vm/fs/proc/proc_misc.c Wed Aug 16 23:49:30 2000
@@ -63,6 +63,7 @@
extern int get_irq_list(char *);
extern int get_dma_list(char *);
extern int get_locks_status (char *, char **, off_t, int);
+extern int get_zoneinfo (char *, char **, off_t, int);
extern int get_swaparea_info (char *);
#ifdef CONFIG_SGI_DS1286
extern int get_ds1286_status(char *);
@@ -289,6 +290,18 @@
}
#endif
+static int zoneinfo_read_proc(char *page, char **start, off_t off,
+ int count, int *eof, void *data)
+{
+ int len = get_zoneinfo(page, start, off, count);
+ len -= (*start-page);
+ if (len <= count)
+ *eof = 1;
+ if (len > count) len = count;
+ if (len < 0) len = 0;
+ return len;
+}
+
static int kstat_read_proc(char *page, char **start, off_t off,
int count, int *eof, void *data)
{
@@ -639,6 +652,7 @@
{"swaps", swaps_read_proc},
{"iomem", memory_read_proc},
{"execdomains", execdomains_read_proc},
+ {"zoneinfo", zoneinfo_read_proc},
{NULL,NULL}
};
for(p=simple_ones;p->name;p++)
@@ -676,5 +690,5 @@
res->read_proc = slabinfo_read_proc;
res->write_proc = slabinfo_write_proc;
}
- }
+ }
}
diff -urN linux-2.4.0-t7-p4-vm.bak/mm/page_alloc.c linux-2.4.0-t7-p4-vm/mm/page_alloc.c
--- linux-2.4.0-t7-p4-vm.bak/mm/page_alloc.c Thu Aug 17 01:29:37 2000
+++ linux-2.4.0-t7-p4-vm/mm/page_alloc.c Thu Aug 17 00:14:30 2000
@@ -659,6 +659,7 @@
zonelist->zones[j++] = zone;
}
case ZONE_NORMAL:
+
zone = pgdat->node_zones + ZONE_NORMAL;
if (zone->size)
zonelist->zones[j++] = zone;
@@ -828,5 +829,40 @@
printk("\n");
return 1;
}
+
+#ifdef CONFIG_PROC_FS
+int get_zoneinfo (char*page, char**start, off_t off, int count)
+{
+ pg_data_t *pgdat = NODE_DATA(0);
+ int i,j; unsigned long flags;
+ int len = 0;
+
+ for (i = 0; i < MAX_NR_ZONES; i++) {
+ zonelist_t *zonelist;
+ zone_t **zone;
+
+ zonelist = pgdat->node_zonelists + i;
+
+ zone = zonelist->zones;
+ for (j = 0;;j++) {
+ zone_t *z = *(zone++);
+ if (!z)
+ break;
+ if (!z->size)
+ BUG();
+
+ spin_lock_irqsave(&z->lock, flags);
+
+ len += sprintf(page+len, "%4u %4u %6lu %6lu %6lu %6lu %6lu %6lu %6lu\n",
+ i,j,z->offset, z->free_pages, z->inactive_clean_pages,
+ z->inactive_dirty_pages, z->pages_min, z->pages_low, z->pages_high);
+
+ spin_unlock_irqrestore(&z->lock, flags);
+ }
+ }
+ *start = page+off;
+ return len;
+}
+#endif
__setup("memfrac=", setup_mem_frac);
next reply other threads:[~2000-08-16 22:43 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2000-08-16 22:43 Aki M Laukkanen [this message]
2000-08-16 22:57 ` Rik van Riel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Pine.OSF.4.20.0008170130550.7212-200000@sirppi.helsinki.fi \
--to=amlaukka@cc.helsinki.fi \
--cc=linux-mm@kvack.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox