Hi

Disk access performance is about 10 times between bhyve and
qemu:

root@jdtpkxb:~ # diskinfo -vt vtbd0p2
vtbd0p2
        512             # sectorsize
        31138512896     # mediasize in bytes (29G)
        60817408        # mediasize in sectors
        131072          # stripesize
        20480           # stripeoffset
        3785            # Cylinders according to firmware.
        255             # Heads according to firmware.
        63              # Sectors according to firmware.
                        # Disk descr.
        BHYVE-438B-D187-47E7    # Disk ident.
                        # Attachment
        No              # TRIM/UNMAP support
        Unknown         # Rotation rate in RPM

Seek times:
        Full stroke:      250 iter in   0.019028 sec =    0.076 msec
        Half stroke:      250 iter in   0.018842 sec =    0.075 msec
        Quarter stroke:   500 iter in   0.032337 sec =    0.065 msec
        Short forward:    400 iter in   0.027096 sec =    0.068 msec
        Short backward:   400 iter in   0.027531 sec =    0.069 msec
        Seq outer:       2048 iter in   0.106816 sec =    0.052 msec
        Seq inner:       2048 iter in   0.113622 sec =    0.055 msec

Transfer rates:
        outside:       102400 kbytes in   0.080248 sec =  1276044 kbytes/sec
        middle:        102400 kbytes in   0.062225 sec =  1645641 kbytes/sec
        inside:        102400 kbytes in   0.062555 sec =  1636959 kbytes/sec

root@jdtpkxb:~ # gpart show vtbd0
=>      40  67108784  vtbd0  GPT  (32G)
        40      1024      1  freebsd-boot  (512K)
      1064  60817408      2  freebsd-ufs  (29G)
  60818472   6290352      3  freebsd-swap  (3.0G)

root@jdtpkxb:~ # 

root@lpbkpkx:~ # diskinfo -vt vtbd0p2
vtbd0p2
        512             # sectorsize
        31138512896     # mediasize in bytes (29G)
        60817408        # mediasize in sectors
        0               # stripesize
        272650240       # stripeoffset
        60334           # Cylinders according to firmware.
        16              # Heads according to firmware.
        63              # Sectors according to firmware.
                        # Disk descr.
                        # Disk ident.
                        # Attachment
        No              # TRIM/UNMAP support
        Unknown         # Rotation rate in RPM

Seek times:
        Full stroke:      250 iter in   0.127904 sec =    0.512 msec
        Half stroke:      250 iter in   0.126985 sec =    0.508 msec
        Quarter stroke:   500 iter in   0.285858 sec =    0.572 msec
        Short forward:    400 iter in   0.206051 sec =    0.515 msec
        Short backward:   400 iter in   0.201722 sec =    0.504 msec
        Seq outer:       2048 iter in   1.050497 sec =    0.513 msec
        Seq inner:       2048 iter in   1.019406 sec =    0.498 msec

Transfer rates:
        outside:       102400 kbytes in   0.505535 sec =   202558 kbytes/sec
        middle:        102400 kbytes in   0.620144 sec =   165123 kbytes/sec
        inside:        102400 kbytes in   0.615600 sec =   166342 kbytes/sec

root@lpbkpkx:~ # gpart show vtbd0
=>      40  67108784  vtbd0  GPT  (32G)
        40    532480      1  freebsd-boot  (260M)
    532520  60817408      2  freebsd-ufs  (29G)
  61349928   5758896      3  freebsd-swap  (2.7G)

root@lpbkpkx:~ # 

Does it caused by disk cache ?

On Tue, 11 Aug 2020 10:23:12 +0900,
KIRIYAMA Kazuhiko wrote:
> 
> Hi, all
> 
> I'm working on qemu-system-aarch64 and try to build
> packages, but it's too late to compile stuffs. I've compare
> to bhyve package building procedure, then about 70 times
> later than bhyve one. I don't know why so much late on
> qemu-system-aarch64.
> 
> Following results are devel/binutils package building
> process between bhyve and qemu-system-aarch64.
> 
> === devel/binutils package building (bhyve) ===
> 
> VM environments:
> 
> root@vm:~ # cat /vm/jdtpkxb/jdtpkxb.conf
> loader="bhyveload"
> cpu=4
> memory=8GB
> network0_type="virtio-net"
> network0_switch="local"
> disk0_type="virtio-blk"
> disk0_name="disk0.img"
> storage=32G
> memory=8G
> cpu=4
> uuid="200bdead-cd7e-11ea-8cb7-0cc47ab3cfd4"
> network0_mac="58:9c:fc:02:0f:18"
> root@vm:~ # tail -35 /vm/jdtpkxb/vm-bhyve.log
> Jul 27 06:24:14:  [primary disk dev: file]
> Jul 27 06:24:14: initialising network device tap1
> Jul 27 06:24:14: setting mtu of tap1 to 9000
> Jul 27 06:24:14: adding tap1 -> vm-local (local addm)
> Jul 27 06:24:14: bring up tap1 -> vm-local (local addm)
> Jul 27 06:24:14: booting
> Jul 27 06:24:14: bhyveload -c /dev/nmdm-jdtpkxb.1A -m 8GB -e autoboot_delay=3 
> -d /vm/jdtpkxb/disk0.img jdtpkxb
> Jul 27 06:24:18:  [bhyve options: -c 4 -m 8GB -AHP -U 
> 200bdead-cd7e-11ea-8cb7-0cc47ab3cfd4 -u]
> Jul 27 06:24:18:  [bhyve devices: -s 0,hostbridge -s 31,lpc -s 
> 4:0,virtio-blk,/vm/jdtpkxb/disk0.img -s 
> 5:0,virtio-net,tap1,mac=58:9c:fc:02:0f:18]
> Jul 27 06:24:18:  [bhyve console: -l com1,/dev/nmdm-jdtpkxb.1A]
> Jul 27 06:24:18: starting bhyve (run 1)
> Jul 28 21:44:41: bhyve exited with status 1
> Jul 28 21:44:41: destroying network device tap1
> Jul 28 21:44:42: stopped
> Aug 10 09:58:51: initialising
> Aug 10 09:58:51:  [loader: bhyveload]
> Aug 10 09:58:51:  [cpu: 4]
> Aug 10 09:58:51:  [memory: 8GB]
> Aug 10 09:58:51:  [hostbridge: standard]
> Aug 10 09:58:51:  [com ports: com1]
> Aug 10 09:58:51:  [uuid: 200bdead-cd7e-11ea-8cb7-0cc47ab3cfd4]
> Aug 10 09:58:51:  [utctime: yes]
> Aug 10 09:58:51:  [debug mode: no]
> Aug 10 09:58:51:  [primary disk: disk0.img]
> Aug 10 09:58:51:  [primary disk dev: file]
> Aug 10 09:58:51: initialising network device tap2
> Aug 10 09:58:51: setting mtu of tap2 to 9000
> Aug 10 09:58:51: adding tap2 -> vm-local (local addm)
> Aug 10 09:58:51: bring up tap2 -> vm-local (local addm)
> Aug 10 09:58:51: booting
> Aug 10 09:58:51: bhyveload -c /dev/nmdm-jdtpkxb.1A -m 8GB -e autoboot_delay=3 
> -d /vm/jdtpkxb/disk0.img jdtpkxb
> Aug 10 09:58:54:  [bhyve options: -c 4 -m 8GB -AHP -U 
> 200bdead-cd7e-11ea-8cb7-0cc47ab3cfd4 -u]
> Aug 10 09:58:54:  [bhyve devices: -s 0,hostbridge -s 31,lpc -s 
> 4:0,virtio-blk,/vm/jdtpkxb/disk0.img -s 
> 5:0,virtio-net,tap2,mac=58:9c:fc:02:0f:18]
> Aug 10 09:58:54:  [bhyve console: -l com1,/dev/nmdm-jdtpkxb.1A]
> Aug 10 09:58:54: starting bhyve (run 1)
> root@vm:~ # 
> 
> Package building process in VM:
> 
> root@jdtpkxb:~ # top -bd1
> last pid: 54340;  load averages:  2.91,  1.23,  0.61  up 0+05:28:59    
> 15:27:58
> 37 processes:  5 running, 32 sleeping
> CPU:  0.3% user,  0.0% nice,  0.2% system,  0.1% interrupt, 99.4% idle
> Mem: 208M Active, 125M Inact, 838M Wired, 692M Buf, 6749M Free
> Swap: 3071M Total, 3071M Free
> 
>   PID USERNAME    THR PRI NICE   SIZE    RES STATE    C   TIME    WCPU COMMAND
> 54299 root          1  75    0   154M   108M RUN      0   0:01  10.99% cc
> 54315 root          1  74    0   124M    84M CPU3     3   0:01   8.98% cc
> 54323 root          1  74    0   157M   113M CPU2     2   0:01   0.00% cc
> 16066 root          1  20    0    21M  9828K select   0   0:01   0.00% sshd
>   624 ntpd          1  20    0    21M  6420K select   2   0:01   0.00% ntpd
> 54339 root          1  73    0   132M    87M CPU1     1   0:01   0.00% cc
> 17898 root          1  52    0    19M  7540K wait     2   0:00   0.00% sh
> 16070 root          1  52    0    19M  7372K wait     1   0:00   0.00% sh
>   665 root          1  20    0    18M  7036K select   0   0:00   0.00% 
> sendmail
> 52975 root          1  52    0    13M  3596K select   0   0:00   0.00% gmake
>   672 root          1  20    0    13M  2832K nanslp   0   0:00   0.00% cron
>   495 root          1  20    0    13M  2836K select   1   0:00   0.00% syslogd
> 25104 root          1  52    0    15M  4592K wait     3   0:00   0.00% gmake
> 25091 root          1  52    0    15M  4332K wait     3   0:00   0.00% gmake
> 23169 root          1  52    0    13M  3200K wait     2   0:00   0.00% make
>   761 root          1  20    0    14M  4448K pause    3   0:00   0.00% tcsh
> 52886 root          1  52    0    13M  3492K wait     0   0:00   0.00% gmake
>   728 root          1  39    0    21M  9440K select   3   0:00   0.00% sshd
> 
> root@jdtpkxb:~ # uname -a
> FreeBSD jdtpkxb 13.0-CURRENT FreeBSD 13.0-CURRENT #0 r363381M: Thu Jul 23 
> 22:48:19 JST 2020     root@msrvkxb:/usr/obj/usr/src/amd64.amd64/sys/XIJ  amd64
> root@jdtpkxb:~ # svnlite info /usr/ports
> Path: /usr/ports
> Working Copy Root Path: /usr/ports
> URL: http://svn.freebsd.org/ports/head
> Relative URL: ^/head
> Repository Root: http://svn.freebsd.org/ports
> Repository UUID: 35697150-7ecd-e111-bb59-0022644237b5
> Revision: 542063
> Node Kind: directory
> Schedule: normal
> Last Changed Author: glewis
> Last Changed Rev: 542063
> Last Changed Date: 2020-07-12 11:13:27 +0900 (Sun, 12 Jul 2020)
> 
> root@jdtpkxb:~ # 
> 
> Package building result:
> 
> :===> Building binutils-2.33.1_2,1 start  2020.08.10 15:25:33           
> Updating database digests format: .......... done
> Checking integrity... done (0 conflicting)
> Deinstallation has been requested for the following 233 packages (of 0 
> packages in the universe):
>   :
> (snip)
>   :
> install  -m 0644 
> /var/ports/work/var/ports/jdtpkxb/devel/binutils/work-native/binutils-2.33.1/includ
> e/plugin-api.h 
> /var/ports/work/var/ports/jdtpkxb/devel/binutils/work-native/stage/usr/local/include/
> /bin/rm -f 
> /var/ports/work/var/ports/jdtpkxb/devel/binutils/work-native/stage/usr/local/include/ansi
> decl.h
> /usr/bin/sed -i.bak '/#include "ansidecl.h"/d' 
> /var/ports/work/var/ports/jdtpkxb/devel/binutils/work
> -native/stage/usr/local/include/bfd.h
> ====> Compressing man pages (compress-man)
> ===>  Building package for binutils-2.33.1_2,1
> :<=== Building binutils-2.33.1_2,1 end    2020.08.10 15:32:44 (00:07:11)
> 
> 
> === devel/binutils package building (qemu-system-aarch64) ===
> 
> VM environments:
> 
> root@vm:~ # cat /vm/lpbkpkx/lpbkpkx.conf
> loader="qemu-system-aarch64"
> machine=arm64
> machine_arc=aarch64
> cpu=4
> memory=8GB
> network0_type="virtio-net-device"
> network0_switch="local"
> disk0_type="virtio-blk-device"
> disk0_name="disk0.img"
> storage=32G
> qemu_telnet_port="5044"
> qemu_monitor_port="5045"
> ssh_host="192.168.1.233"
> ssh_port="22"
> network0_mac="58:9c:fc:0b:1d:a6"
> uuid="7f22b8ab-c0bd-11ea-a00d-0cc47ab3cfd4"
> root@vm:~ # tail -35 /vm/lpbkpkx/vm-bhyve.log 
> Aug 10 09:58:38: setting mtu of tap1 to 9000
> Aug 10 09:58:38: adding tap1 -> vm-local (local addm)
> Aug 10 09:58:38: bring up tap1 -> vm-local (local addm)
> Aug 10 09:58:38: booting
> Aug 10 09:58:38:  [qemu standard options: -machine virt -cpu cortex-a57 -smp 
> 4 -m 8G -name lpbkpkx -uuid 7f22b8ab-c0bd-11ea-a00d-0cc47ab3cfd4]
> Aug 10 09:58:38:  [qemu block device options: -device 
> virtio-blk-device,drive=hd0 -drive 
> if=none,format=raw,file=/vm/lpbkpkx/disk0.img,id=hd0]
> Aug 10 09:58:38:  [qemu display options: -nographic]
> Aug 10 09:58:38:  [qemu network options: -netdev tap,id=net0,ifname=tap1 
> -device virtio-net-device,netdev=net0,mac=58:9c:fc:0b:1d:a6]
> Aug 10 09:58:38:  [qemu debug/expert options: -monitor 
> telnet::5045,server,nowait,nodelay -serial telnet::5044,server,nowait,nodelay 
> -bios /vm/.config/QEMU_EFI.fd]
> Aug 10 09:58:38: starting qemu (run 1)
> Aug 10 10:04:16: qemu exited with status 0
> Aug 10 10:04:16: destroying network device tap1
> Aug 10 10:04:16: stopped
> Aug 10 10:04:29: initialising
> Aug 10 10:04:29:  [uefi: QEMU_EFI.fd]
> Aug 10 10:04:29:  [cpu: cortex-a57]
> Aug 10 10:04:29:  [smp: 4]
> Aug 10 10:04:29:  [memory: 8GB]
> Aug 10 10:04:29:  [hostbridge: standard]
> Aug 10 10:04:29:  [uuid: 7f22b8ab-c0bd-11ea-a00d-0cc47ab3cfd4]
> Aug 10 10:04:29:  [utctime: yes]
> Aug 10 10:04:29:  [debug mode: no]
> Aug 10 10:04:29:  [primary disk: disk0.img]
> Aug 10 10:04:29:  [primary disk dev: file]
> Aug 10 10:04:29: initialising network device tap1
> Aug 10 10:04:29: setting mtu of tap1 to 9000
> Aug 10 10:04:29: adding tap1 -> vm-local (local addm)
> Aug 10 10:04:29: bring up tap1 -> vm-local (local addm)
> Aug 10 10:04:29: booting
> Aug 10 10:04:29:  [qemu standard options: -machine virt -cpu cortex-a57 -smp 
> 4 -m 8G -name lpbkpkx -uuid 7f22b8ab-c0bd-11ea-a00d-0cc47ab3cfd4]
> Aug 10 10:04:29:  [qemu block device options: -device 
> virtio-blk-device,drive=hd0 -drive 
> if=none,format=raw,file=/vm/lpbkpkx/disk0.img,id=hd0]
> Aug 10 10:04:29:  [qemu display options: -nographic]
> Aug 10 10:04:29:  [qemu network options: -netdev tap,id=net0,ifname=tap1 
> -device virtio-net-device,netdev=net0,mac=58:9c:fc:0b:1d:a6]
> Aug 10 10:04:29:  [qemu debug/expert options: -monitor 
> telnet::5045,server,nowait,nodelay -serial telnet::5044,server,nowait,nodelay 
> -bios /vm/.config/QEMU_EFI.fd]
> Aug 10 10:04:29: starting qemu (run 1)
> root@vm:~ # 
> 
> Package building process in VM:
> 
> root@lpbkpkx:~ # top -bd1
> last pid: 31159;  load averages:  4.48,  4.58,  4.37  up 0+06:07:42    
> 16:12:45
> 36 processes:  5 running, 31 sleeping
> CPU:  4.3% user,  0.0% nice,  7.4% system,  0.9% interrupt, 87.5% idle
> Mem: 33M Active, 329M Inact, 406M Wired, 302M Buf, 7203M Free
> Swap: 2812M Total, 2812M Free
> 
>   PID USERNAME    THR PRI NICE   SIZE    RES STATE    C   TIME    WCPU COMMAND
> 31123 root          1  85    0     0B    16K CPU1     1   0:04  43.46% cc
> 30320 root          1  80    0    13M  3180K RUN      2   0:17  30.18% sh
> 31137 root          1  81    0    87M    51M CPU0     0   0:03  29.49% cc
> 31109 root          1  52    0    85M    49M wait     3   0:02   8.79% cc
> 25892 root          1  52    0    13M  3760K wait     2   0:39   3.66% sh
>   873 admin         1  21    0    20M  9224K select   2   0:01   1.76% sshd
> 26808 root          1  52    0    13M  3640K wait     2   0:36   1.37% sh
>   878 root          1  21    0    14M  4376K pause    0   0:02   1.07% tcsh
>  8761 root          1  20    0    20M  9652K select   0   0:22   0.88% sshd
> 28889 root          1  52    0    13M  3100K select   0   0:05   0.88% gmake
>   769 ntpd          1  20    0    21M  5896K select   3   0:34   0.10% ntpd
> 18670 root          1  52    0    13M  3408K wait     1   0:51   0.00% sh
> 10643 root          1  52    0    16M  7076K wait     0   0:16   0.00% sh
>  8765 root          1  52    0    16M  6928K wait     3   0:11   0.00% sh
>   810 root          1  20    0    17M  6440K select   3   0:09   0.00% 
> sendmail
>   817 root          1  20    0    13M  2712K nanslp   0   0:03   0.00% cron
>   575 root          1  20    0    13M  2712K select   1   0:02   0.00% syslogd
> 15754 root          1  35    0    15M  4456K select   2   0:02   0.00% gmake
> 
> root@lpbkpkx:~ # uname -a
> FreeBSD lpbkpkx 13.0-CURRENT FreeBSD 13.0-CURRENT #0 r362853: Thu Jul  2 
> 04:21:45 UTC 2020     
> r...@releng1.nyi.freebsd.org:/usr/obj/usr/src/arm64.aarch64/sys/GENERIC  arm64
> root@lpbkpkx:~ # 
> 
> Package building result:
> 
> :===> Building binutils-2.33.1_2,1 start  2020.08.10 15:25:20           
> Updating database digests format: .......... done
> Checking integrity... done (0 conflicting)
> Deinstallation has been requested for the following 16 packages (of 0 
> packages in the universe):
>   :
> (snip)
>   :
> install  -m 0644 
> /var/ports/work/var/ports/lpbkpkx/devel/binutils/work-native/binutils-2.33.1/include/plugin-api.h
>  
> /var/ports/work/var/ports/lpbkpkx/devel/binutils/work-native/stage/usr/local/include/
> /bin/rm -f 
> /var/ports/work/var/ports/lpbkpkx/devel/binutils/work-native/stage/usr/local/include/ansidecl.h
> /usr/bin/sed -i.bak '/#include "ansidecl.h"/d' 
> /var/ports/work/var/ports/lpbkpkx/devel/binutils/work-native/stage/usr/local/include/bfd.h
> ====> Compressing man pages (compress-man)
> ===>  Building package for binutils-2.33.1_2,1
> :<=== Building binutils-2.33.1_2,1 end    2020.08.10 23:26:11 (08:00:51)
> 
> 
> Best Regards
> 
> ---
> Kazuhiko Kiriyama <k...@truefc.org>
> _______________________________________________
> freebsd-virtualization@freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-virtualization
> To unsubscribe, send any mail to 
> "freebsd-virtualization-unsubscr...@freebsd.org"
> 
_______________________________________________
freebsd-virtualization@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-virtualization
To unsubscribe, send any mail to 
"freebsd-virtualization-unsubscr...@freebsd.org"

Reply via email to