That is an app that does multi threaded community IO (userspace NFS consumer written in golang). It ought to be capable to do about line fee information switch on a 10Gb NIC. On Centos 7 that is the case 10GiB in 10/11 seconds, nonetheless centos 8, is about 2-3 seconds slower, ~14 seconds persistently.
Similar VM specs operating on the identical bodily host.
Venture: GitHub – sile16/fbcp: FlashBlade Quick File switch device
Command: “
time ./fbcp -threads 16 -sizeMB 8 -profile pp.txt 172.19.0.20:/DEMO-NFS-1/10GRand |cat > /dev/null
golang 19.1
Listed here are the profiles for every.
Centos7
3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
File: fbcp
Kind: cpu
Time: Sep 15, 2022 at 8:51am (CDT)
Period: 11.22s, Whole samples = 31.89s (284.32%)
Getting into interactive mode (kind "assist" for instructions, "o" for choices)
(pprof) top20
Displaying nodes accounting for 28.68s, 89.93% of 31.89s whole
Dropped 241 nodes (■■■ <= 0.16s)
Displaying prime 20 nodes out of 90
flat flat% sum% ■■■ ■■■%
12.28s 38.51% 38.51% 12.28s 38.51% runtime/inner/syscall.Syscall6
5.19s 16.27% 54.78% 5.19s 16.27% runtime.memclrNoHeapPointers
4.66s 14.61% 69.39% 4.66s 14.61% runtime.memmove
2.68s 8.40% 77.80% 2.68s 8.40% runtime.futex
1.02s 3.20% 81.00% 1.02s 3.20% runtime.epollwait
0.64s 2.01% 83.00% 0.64s 2.01% runtime.madvise
0.43s 1.35% 84.35% 1.12s 3.51% runtime.stealWork
0.36s 1.13% 85.48% 0.36s 1.13% runtime.(*randomEnum).subsequent (inline)
0.19s 0.6% 86.08% 0.20s 0.63% runtime.casgstatus
0.18s 0.56% 86.64% 6.14s 19.25% runtime.findRunnable
0.16s 0.5% 87.14% 0.21s 0.66% runtime.lock2
0.12s 0.38% 87.52% 9.39s 29.44% inner/ballot.(*FD).Learn
0.12s 0.38% 87.90% 0.16s 0.5% runtime.checkTimers
0.12s 0.38% 88.27% 12.40s 38.88% syscall.RawSyscall6
0.11s 0.34% 88.62% 1.22s 3.83% runtime.notesleep
0.11s 0.34% 88.96% 0.20s 0.63% runtime.reentersyscall
0.10s 0.31% 89.28% 1.16s 3.64% runtime.netpoll
0.08s 0.25% 89.53% 5.64s 17.69% runtime.mallocgc
0.07s 0.22% 89.75% 9.48s 29.73% web.(*conn).Learn
0.06s 0.19% 89.93% 9.76s 30.61% bufio.(*Reader).Learn
(pprof) stop
Centos8
4.18.0-408.el8.x86_64 #1 SMP Mon Jul 18 17:42:52 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
Kind: cpu
Time: Sep 15, 2022 at 8:51am (CDT)
Period: 14.32s, Whole samples = 27.91s (194.87%)
Getting into interactive mode (kind "assist" for instructions, "o" for choices)
(pprof) top20
Displaying nodes accounting for 25.39s, 90.97% of 27.91s whole
Dropped 213 nodes (■■■ <= 0.14s)
Displaying prime 20 nodes out of 69
flat flat% sum% ■■■ ■■■%
15.77s 56.50% 56.50% 15.77s 56.50% runtime/inner/syscall.Syscall6
3.15s 11.29% 67.79% 3.15s 11.29% runtime.memclrNoHeapPointers
3.14s 11.25% 79.04% 3.14s 11.25% runtime.memmove
1.24s 4.44% 83.48% 1.24s 4.44% runtime.futex
1.01s 3.62% 87.10% 1.01s 3.62% runtime.epollwait
0.19s 0.68% 87.78% 0.45s 1.61% runtime.stealWork
0.11s 0.39% 88.18% 3.43s 12.29% runtime.findRunnable
0.11s 0.39% 88.57% 1.15s 4.12% runtime.netpoll
0.11s 0.39% 88.96% 15.88s 56.90% syscall.RawSyscall6
0.08s 0.29% 89.25% 0.15s 0.54% runtime.exitsyscall
0.08s 0.29% 89.54% 3.41s 12.22% runtime.mallocgc
0.07s 0.25% 89.79% 10.97s 39.30% bufio.(*Reader).Learn
0.06s 0.21% 90.00% 10.59s 37.94% inner/ballot.(*FD).Learn
0.06s 0.21% 90.22% 10.70s 38.34% web.(*conn).Learn
0.05s 0.18% 90.40% 11.03s 39.52% io.ReadAtLeast
0.04s 0.14% 90.54% 10.30s 36.90% syscall.learn
0.03s 0.11% 90.65% 0.16s 0.57% github.com/rasky/go-xdr/xdr2.(*Encoder).encodeStruct
0.03s 0.11% 90.76% 10.64s 38.12% web.(*netFD).Learn
0.03s 0.11% 90.86% 3.61s 12.93% runtime.schedule
0.03s 0.11% 90.97% 0.52s 1.86% runtime.stopm
Hello, @sile16, welcome to the discussion board.
When you might discover a solution right here on the Go Bridge discussion board, I feel that your challenge is technical sufficient that it deserves posting a difficulty within the Go mission challenge tracker on GitHub. Good luck!