Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 27 Oct 2010 11:46:33 -0400
From:      Mike Tancsa <mike@sentex.net>
To:        Ivan Voras <ivoras@freebsd.org>, freebsd-performance@freebsd.org
Subject:   Re: Possible evidence of performance regression for 8.1-S (vs. 7.1)
Message-ID:  <201010271546.o9RFkRQn046373@lava.sentex.ca>
In-Reply-To: <ia9263$kkd$1@dough.gmane.org>
References:  <20101026121352.GC2262@albert.catwhisker.org> <AANLkTi=Q9EwPJ%2BC4n3UFF9uFtNsukntkmqSjrXsHE3cm@mail.gmail.com> <20101020174854.GZ21226@albert.catwhisker.org> <20101021215330.GA86224@dan.emsphone.com> <20101021224237.GG52404@albert.catwhisker.org> <4CC6C396.1010905@freebsd.org> <20101026174501.GH2262@albert.catwhisker.org> <ia8srt$th0$1@dough.gmane.org> <20101027105506.GD9443@albert.catwhisker.org> <ia9137$gag$1@dough.gmane.org> <20101027111904.GF9443@albert.catwhisker.org> <ia9263$kkd$1@dough.gmane.org>

next in thread | previous in thread | raw e-mail | index | archive | help

I did some very simple numbers to compare RELENG_7 and RELENG_8 
i386.  I netbooted an i5 (650 @ 3.20GHz) box with a single ata disk 
that I newfs'd so the track layout is consistent across boots. I did 
a couple of very simple userland tests to make sure things are sane 
and they appear to be, at least with the apps I used.  The only small 
difference I found was using sysbench on file io with RELENG_7. If 
there are some more synthetic benchmarks you want me to run, let me 
know as its easy to boot back and forth between OSes.  But cpu and 
memory driven tests all seem to be about the same and the disk io 
differences are pretty small.



sysbench --num-threads=16 --test=fileio --file-total-size=3G 
--file-test-mode=rndrw

RELENG_7, RELENG_8 ATA, RELENG_8 AHCI, RELENG_8 AHCI with suggested 
sysctl changes



Test execution summary:
     total time:                          25.9904s,28.3793s,28.3160s,28.5659s
     total number of events:              10000
     total time taken by event execution: 12.7917,14.4525,7.9162,5.2872
     per-request statistics:
          min:                                  0.01ms,0.01ms,0.01ms,0.01ms
          avg:                                  1.28ms,1.45ms,0.79ms,0.53ms
          max:                                 96.97ms,102.47ms,72.74ms,62.44ms
          approx.  95 percentile:               0.78ms,7.52ms,3.06ms,1.42ms

Threads fairness:
     events 
(avg/stddev): 
625.0000/80.21,625.0000/99.54,625.0000/79.20,625.0000/98.04
     execution time 
(avg/stddev):   0.7995/0.10,0.9033/0.11,0.4948/0.10,0.3304/0.11


Operations performed:  6001 Read, 3999 Write, 12672 Other = 22672 Total
Read 93.766Mb  Written 62.484Mb  Total transferred 156.25Mb  (6.0118Mb/sec)
   384.76 Requests/sec executed
Operations performed:  5997 Read, 4003 Write, 12800 Other = 22800 Total
Read 93.703Mb  Written 62.547Mb  Total transferred 156.25Mb  (5.5058Mb/sec)
   352.37 Requests/sec executed
Operations performed:  5998 Read, 4002 Write, 12800 Other = 22800 Total
Read 93.719Mb  Written 62.531Mb  Total transferred 156.25Mb  (5.5181Mb/sec)
   353.16 Requests/sec executed
Operations performed:  5999 Read, 4001 Write, 12672 Other = 22672 Total
Read 93.734Mb  Written 62.516Mb  Total transferred 156.25Mb  (5.4698Mb/sec)
   350.07 Requests/sec executed




sysbench --test=cpu --cpu-max-prime=20000 --num-threads=4 run
sysbench 0.4.12:  multi-threaded system evaluation benchmark

Running the test with following options:
Number of threads: 4

Doing CPU performance benchmark

Threads started!
Done.

Maximum prime number checked in CPU test: 20000


Test execution summary:
     total time:                          12.8866s,13.2981s
     total number of events:              10000
     total time taken by event execution: 51.5295,53.1766
     per-request statistics:
          min:                                  4.89ms,4.25ms
          avg:                                  5.15ms,5.32ms
          max:                                  5.22ms,5.38ms
          approx.  95 percentile:               5.16ms,5.32ms

Threads fairness:
     events (avg/stddev):           2500.0000/1.73,2500.0000/1.73
     execution time (avg/stddev):   12.8824/0.00,13.2942/0.00




sysbench --test=memory --num-threads=8 
--memory-total-size=200000000000 run
sysbench 0.4.12:  multi-threaded system evaluation benchmark

Running the test with following options:
Number of threads: 8

Doing memory operations speed test
Memory block size: 1K

Memory transfer size: 2318M

Memory operations type: write
Memory scope type: global
Threads started!
Done.

Operations performed: 2374516 (574580.71 ops/sec)

2318.86 MB transferred (561.11 MB/sec)


Test execution summary:
     total time:                          4.1326s,4.0980s
     total number of events:              2374516,2374516
     total time taken by event execution: 23.6287,22.3643
     per-request statistics:
          min:                                  0.00ms,0.00ms
          avg:                                  0.01ms,0.01ms
          max:                                210.01ms,180.95ms
          approx.  95 percentile:               0.00ms,0.00ms

Threads fairness:
     events (avg/stddev):           296814.5000/21552.12,296814.5000/19049.55
     execution time (avg/stddev):   2.9536/0.17,2.7955/0.13









achinetboot# uname -a
FreeBSD achinetboot.sentex.ca 7.3-STABLE FreeBSD 7.3-STABLE #0: Wed 
Oct 27 08:53:43 EDT 
2010 
mdtancsa@ich10.sentex.ca:/usr/RELENG7/obj/usr/RELENG7/src/sys/GENERIC  i386
achinetboot#
achinetboot# time cp /FreeBSD-8.1-RELEASE-i386-livefs.iso /mnt/
0.000u 0.663s 0:22.19 2.9%      24+1310k 9+1998io 0pf+0w
achinetboot#

achinetboot# time pbzip2 -v FreeBSD-8.1-RELEASE-i386-livefs.iso
Parallel BZIP2 v1.1.1 - by: Jeff Gilchrist [http://compression.ca]
[Apr. 17, 2010]             (uses libbzip2 by Julian Seward)
Major contributions: Yavor Nikolov <nikolov.javor+pbzip2@gmail.com>

          # CPUs: 4
  BWT Block Size: 900 KB
File Block Size: 900 KB
  Maximum Memory: 100 MB
-------------------------------------------
          File #: 1 of 1
      Input Name: FreeBSD-8.1-RELEASE-i386-livefs.iso
     Output Name: FreeBSD-8.1-RELEASE-i386-livefs.iso.bz2

      Input Size: 261816320 bytes
Compressing data...
     Output Size: 92907893 bytes
-------------------------------------------

      Wall Clock: 18.624642 seconds
70.096u 1.607s 0:18.70 383.3%   74+1076k 2+709io 75pf+0w
achinetboot#
achinetboot# umount /mnt
achinetboot# mount /dev/ad12 /mnt
achinetboot# cd /mnt
achinetboot# ls -l
total 90802
drwxrwxr-x  2 root  operator       512 Oct 27 13:11 .snap
-rw-r--r--  1 root  wheel     92907893 Oct 27 13:27 
FreeBSD-8.1-RELEASE-i386-livefs.iso.bz2
achinetboot# time pbzip2 -d FreeBSD-8.1-RELEASE-i386-livefs.iso.bz2
24.244u 0.985s 0:06.85 368.1%   75+1083k 724+1998io 0pf+0w
achinetboot#


0(achinetboot)# uname -a
FreeBSD achinetboot.sentex.ca 8.1-STABLE FreeBSD 8.1-STABLE #1: Wed 
Oct 13 10:50:14 EDT 
2010     mdtancsa@ich10.sentex.ca:/usr/obj/usr/src/sys/pxe  i386
0(achinetboot)#
0(achinetboot)# mount /dev/ada0 /mnt
0(achinetboot)# time cp /FreeBSD-8.1-RELEASE-i386-livefs.iso /mnt
0.000u 0.365s 0:22.43 1.6%      16+898k 9+1998io 0pf+0w
0(achinetboot)#


0(achinetboot)# time pbzip2 -v FreeBSD-8.1-RELEASE-i386-livefs.iso
Parallel BZIP2 v1.1.1 - by: Jeff Gilchrist [http://compression.ca]
[Apr. 17, 2010]             (uses libbzip2 by Julian Seward)
Major contributions: Yavor Nikolov <nikolov.javor+pbzip2@gmail.com>

          # CPUs: 4
  BWT Block Size: 900 KB
File Block Size: 900 KB
  Maximum Memory: 100 MB
-------------------------------------------
          File #: 1 of 1
      Input Name: FreeBSD-8.1-RELEASE-i386-livefs.iso
     Output Name: FreeBSD-8.1-RELEASE-i386-livefs.iso.bz2

      Input Size: 261816320 bytes
Compressing data...
     Output Size: 92907893 bytes
-------------------------------------------

      Wall Clock: 17.711059 seconds
68.352u 1.442s 0:17.84 391.1%   74+1075k 2+709io 22pf+0w
0(achinetboot)#
0(achinetboot)# umount /mnt
0(achinetboot)# mount /dev/ada0 /mnt
0(achinetboot)# cd /mnt
0(achinetboot)# time pbzip2 -d FreeBSD-8.1-RELEASE-i386-livefs.iso.bz2
23.510u 1.037s 0:06.62 370.6%   74+1075k 724+1998io 0pf+0w
0(achinetboot)#


and RELENG_8 using ata

0(achinetboot)# mount /dev/ad12 /mnt
0(achinetboot)# time cp /FreeBSD-8.1-RELEASE-i386-livefs.iso /mnt/
0.000u 0.356s 0:22.43 1.5%      22+1166k 8+1998io 0pf+0w
0(achinetboot)#
0(achinetboot)# time pbzip2 -v FreeBSD-8.1-RELEASE-i386-livefs.iso
Parallel BZIP2 v1.1.1 - by: Jeff Gilchrist [http://compression.ca]
[Apr. 17, 2010]             (uses libbzip2 by Julian Seward)
Major contributions: Yavor Nikolov <nikolov.javor+pbzip2@gmail.com>

          # CPUs: 4
  BWT Block Size: 900 KB
File Block Size: 900 KB
  Maximum Memory: 100 MB
-------------------------------------------
          File #: 1 of 1
      Input Name: FreeBSD-8.1-RELEASE-i386-livefs.iso
     Output Name: FreeBSD-8.1-RELEASE-i386-livefs.iso.bz2

      Input Size: 261816320 bytes
Compressing data...
     Output Size: 92907893 bytes
-------------------------------------------

      Wall Clock: 17.813195 seconds
68.003u 1.405s 0:17.81 389.6%   74+1074k 0+709io 0pf+0w
0(achinetboot)#




To compile perl 5.10 outside of the ports,

RELENG8       91.94 real        79.85 user         5.75 sys
RELENG7       96.41 real        80.78 user         5.67 sys
#







--------------------------------------------------------------------
Mike Tancsa,                                      tel +1 519 651 3400
Sentex Communications,                            mike@sentex.net
Providing Internet since 1994                    www.sentex.net
Cambridge, Ontario Canada                         www.sentex.net/mike




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201010271546.o9RFkRQn046373>