2008/5/15  <[EMAIL PROTECTED]>:
> Hey Dude,
> Thanks for doing this work.  I commented on your notes first, and the

Thank you for reviewing this!

>> * I have not yet done extensive performance testing, nor have I
>> checked for the threading issues that we previously had.
>
> Will you do both before you putback?  An extensive test may be above and
> beyond the call of duty; however, some amount of performance and
> threading testing would sure be nice.

You'll find my results very interesting.

Notably, I am happy to report that the threading issues are definitely gone.

As for repository import, well, Danek noted that it was about 20%
faster for his particular case.

See attached for further details.

-- 
Shawn Walker

"To err is human -- and to blame it on a computer is even more so." -
Robert Orben
Please note that these tests were all run from a single SATA Seagate 250gb hard 
drive so my system had the unpleasant job of both serving the files from the 
depot and installing them.

The test repository I used was a copy of the 2008.05 repository.

old depot code
==============
make test:
as user: (104s, 100s, 103s)
as pfexec: (111s, 111s, 117s)

image-create (3rd run):
-----------------------
rm -rf $PKG_IMAGE/* && time pkg image-create -F -a 
authname=http://localhost:10000 $PKG_IMAGE

real    0m0.294s
user    0m0.223s
sys     0m0.067s

install SUNWfirefox (3rd run):
------------------------------
rm -rf $PKG_IMAGE/*
pkg image-create -F -a authname=http://localhost:10000 $PKG_IMAGE && time pkg 
-R $PKG_IMAGE install SUNWfirefox

DOWNLOAD                                    PKGS       FILES     XFER (MB)
Completed                                  51/51   8956/8956 477.44/477.44 

PHASE                                        ACTIONS
Install Phase                            13547/13547 

real    1m59.884s
user    0m17.175s
sys     0m7.820s

pkg list -sa (3rd run):
-----------------------
time pkg -R $PKG_IMAGE list -sa > /dev/null

real    0m10.912s
user    0m9.729s
sys     0m0.331s

pkg search -s (3rd run):
------------------------
time pkg -R $PKG_IMAGE search -r -s $PKG_REPO /usr/bin/firefox

INDEX      ACTION    VALUE                     PACKAGE
path       link      usr/bin/firefox           pkg:/[EMAIL PROTECTED]

real    0m0.172s
user    0m0.103s
sys     0m0.065s

pkg info -r (3rd run):
----------------------
time pkg -R $PKG_IMAGE info -r SUNWfirefox

          Name: SUNWfirefox
       Summary: Mozilla Firefox Web browser
         State: Not installed
     Authority: authname (preferred)
       Version: 0.5.11
 Build Release: 5.11
        Branch: 0.86
Packaging Date: Sat May  3 21:56:14 2008
          Size: 65.8 MB
          FMRI: pkg:/[EMAIL PROTECTED],5.11-0.86:20080503T215614Z

real    0m0.408s
user    0m0.275s
sys     0m0.129s

new depot code
==============
make test:
as user: (114s, 119s, 117s)
as root: (130s, 130s, 135s)

image-create (3rd run):
-----------------------
rm -rf $PKG_IMAGE/*
time pkg image-create -F -a authname=http://localhost:10000 $PKG_IMAGE

real    0m0.354s
user    0m0.256s
sys     0m0.093s

install SUNWfirefox (3rd run):
------------------------------
rm -rf $PKG_IMAGE/*
pkg image-create -F -a authname=http://localhost:10000 $PKG_IMAGE && time pkg 
-R $PKG_IMAGE install SUNWfirefox

DOWNLOAD                                    PKGS       FILES     XFER (MB)
Completed                                  51/51   8956/8956 477.44/477.44 

PHASE                                        ACTIONS
Install Phase                            13547/13547 

real    1m46.627s
user    0m32.920s
sys     0m14.071s

pkg list -sa (3rd run):
-----------------------
time pkg -R $PKG_IMAGE list -sa > /dev/null

real    0m10.083s
user    0m9.751s
sys     0m0.299s

pkg search -s (3rd run):
------------------------
time pkg -R $PKG_IMAGE search -r -s $PKG_REPO /usr/bin/firefox

INDEX      ACTION    VALUE                     PACKAGE
path       link      usr/bin/firefox           pkg:/[EMAIL PROTECTED]

real    0m0.173s
user    0m0.103s
sys     0m0.065s

pkg info -r (3rd run):
----------------------
time pkg -R $PKG_IMAGE info -r SUNWfirefox

          Name: SUNWfirefox
       Summary: Mozilla Firefox Web browser
         State: Not installed
     Authority: authname (preferred)
       Version: 0.5.11
 Build Release: 5.11
        Branch: 0.86
Packaging Date: Sat May  3 21:56:14 2008
          Size: 65.8 MB
          FMRI: pkg:/[EMAIL PROTECTED],5.11-0.86:20080503T215614Z

real    0m0.408s
user    0m0.275s
sys     0m0.128s


old depot threading
===================
time pkg -R $PKG_IMAGE search -r -s $PKG_REPO /usr/bin/firefox
--------------------------------------------------------------
dtrace -n 'syscall:::entry /execname == "depot.py"/{ @num[probefunc] = count(); 
}'
dtrace: description 'syscall:::entry ' matched 235 probes
^C

  accept                                                            1
  close                                                             1
  lwp_continue                                                      1
  lwp_create                                                        1
  lwp_detach                                                        1
  lwp_exit                                                          1
  lwp_kill                                                          1
  lwp_sigmask                                                       1
  pollsys                                                           1
  recv                                                              1
  schedctl                                                          1
  setcontext                                                        1
  write                                                             1
  send                                                              6
  llseek                                                            9
  read                                                              9


time pkg -R $PKG_IMAGE list -sa > /dev/null
-------------------------------------------
dtrace -n 'syscall:::entry /execname == "depot.py"/{ @num[probefunc] = count(); 
}'
dtrace: description 'syscall:::entry ' matched 235 probes
^C

  yield                                                             1
  brk                                                               6
  lwp_park                                                         48
  accept                                                         1073
  ioctl                                                          1073
  lwp_continue                                                   1073
  lwp_create                                                     1073
  lwp_detach                                                     1073
  lwp_exit                                                       1073
  lwp_kill                                                       1073
  lwp_sigmask                                                    1073
  open64                                                         1073
  pollsys                                                        1073
  recv                                                           1073
  schedctl                                                       1073
  setcontext                                                     1073
  write                                                          1073
  close                                                          2146
  read                                                           2278
  llseek                                                         3219
  fstat64                                                        4292
  send                                                           6438


rm -rf $PKG_IMAGE/* && pkg image-create -F -a authname=http://localhost:10000 
$PKG_IMAGE && time pkg -R $PKG_IMAGE install SUNWfirefox
--------------------------------------------------------------------------------------------------------------------------------------
dtrace -n 'syscall:::entry /execname == "depot.py"/{ @num[probefunc] = count(); 
}'
dtrace: description 'syscall:::entry ' matched 235 probes
^C

  yield                                                             7
  brk                                                              10
  accept                                                          304
  lwp_continue                                                    304
  lwp_create                                                      304
  lwp_detach                                                      304
  lwp_exit                                                        304
  lwp_kill                                                        304
  lwp_sigmask                                                     304
  pollsys                                                         304
  schedctl                                                        304
  setcontext                                                      304
  write                                                           304
  recv                                                            321
  lwp_park                                                        378
  getcwd                                                         8780
  lstat64                                                        8780
  ioctl                                                          8832
  open64                                                         8832
  llseek                                                         8934
  close                                                          9136
  read                                                           9592
  send                                                          17731
  fstat64                                                       26547
  doorfs                                                        35120
  getuid                                                        35120

new depot threading
===================
time pkg -R $PKG_IMAGE search -r -s $PKG_REPO /usr/bin/firefox
--------------------------------------------------------------
dtrace -n 'syscall:::entry /execname == "depot.py"/{ @num[probefunc] = count(); 
}'
dtrace: description 'syscall:::entry ' matched 235 probes
^C
  accept                                                            1
  close                                                             1
  getpid                                                            1
  recv                                                              1
  write                                                             1
  fcntl                                                             2
  send                                                              2
  lwp_park                                                          4
  llseek                                                            9
  read                                                              9
  pollsys                                                          59

time pkg -R $PKG_IMAGE list -sa > /dev/null
-------------------------------------------
 dtrace -n 'syscall:::entry /execname == "depot.py"/{ @num[probefunc] = 
count(); }'
dtrace: description 'syscall:::entry ' matched 235 probes
^C

  yield                                                             1
  brk                                                               4
  accept                                                         1124
  getpid                                                         1124
  ioctl                                                          1124
  llseek                                                         1124
  open64                                                         1124
  recv                                                           1124
  stat64                                                         1124
  write                                                          1124
  close                                                          2248
  fcntl                                                          2248
  send                                                           2592
  fstat64                                                        3372
  read                                                           3510
  pollsys                                                        5302
  lwp_park                                                       5658

rm -rf $PKG_IMAGE/* && pkg image-create -F -a authname=http://localhost:10000 
$PKG_IMAGE && time pkg -R $PKG_IMAGE install SUNWfirefox
--------------------------------------------------------------------------------------------------------------------------------------
dtrace -n 'syscall:::entry /execname == "depot.py"/{ @num[probefunc] = count(); 
}'
dtrace: description 'syscall:::entry ' matched 235 probes
^C

  gtime                                                             2
  mmap                                                              3
  brk                                                              34
  stat64                                                           51
  yield                                                            62
  unlink                                                          251
  accept                                                          302
  getpid                                                          302
  recv                                                            504
  fcntl                                                          1355
  lstat64                                                        8776
  getcwd                                                         8777
  ioctl                                                          9079
  open64                                                         9081
  llseek                                                         9328
  close                                                          9383
  lwp_park                                                      10298
  fstat64                                                       27237
  doorfs                                                        35104
  getuid                                                        35104
  write                                                         37962
  read                                                          47550
  send                                                         517107
  pollsys                                                      522614

_______________________________________________
pkg-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/pkg-discuss

Reply via email to